fix login form
This commit is contained in:
1 parent
f726c960cd
commit
e185d04039
4 files changed
+24
-19
No files matched your search
@@ -1,5 +1,7 @@
|
||||
# TODO
|
||||
|
||||
contact options on landing page
|
||||
|
||||
listing ids overflowing
|
||||
|
||||
skip unofficial release
|
||||
|
||||
@@ -113,6 +113,10 @@ export default function createRpc(log: Log, pg: Pg, user: User, ws, discogs, off
|
||||
const userMsg: UserMessage = [RpcMessageType.User, user];
|
||||
send(userMsg);
|
||||
|
||||
const userOffers = await offers.userOffers(user);
|
||||
const offersMsg: OffersMessage = [RpcMessageType.Offers, userOffers];
|
||||
send(offersMsg);
|
||||
|
||||
const wants = await pg.userWants(user);
|
||||
const wantsMsg: WantsMessage = [RpcMessageType.Wants, wants];
|
||||
send(wantsMsg);
|
||||
|
||||
+18
-17
@@ -12,12 +12,9 @@ const Login = ({ mode }) => {
|
||||
const user = useSelector((state: State) => state.user);
|
||||
const ws = useSelector((state: State) => state.ws);
|
||||
|
||||
const [email, setEmail] = useState('')
|
||||
const [password, setPassword] = useState('');
|
||||
const [confirmPassword, setConfirmPassword] = useState('');
|
||||
const [error, setError] = useState('');
|
||||
|
||||
async function postLogin() {
|
||||
async function postLogin(email, password) {
|
||||
const [error, user] = await http.postLogin(email, password);
|
||||
if (error) return setError(error);
|
||||
route('/');
|
||||
@@ -26,7 +23,9 @@ const Login = ({ mode }) => {
|
||||
ws.connect();
|
||||
}
|
||||
|
||||
async function postRegister() {
|
||||
async function postRegister(email, password, confirm) {
|
||||
if (password !== confirm) return setError('passwords do not match');
|
||||
|
||||
const [error, user] = await http.postRegister(email, password);
|
||||
if (error) return setError(error);
|
||||
route('/search');
|
||||
@@ -35,8 +34,10 @@ const Login = ({ mode }) => {
|
||||
|
||||
function handleSubmit(e) {
|
||||
e.preventDefault();
|
||||
if (mode === 'login') return postLogin()
|
||||
if (mode === 'register') return postRegister();
|
||||
|
||||
console.log(e.target.email, e.target.password, e.target.confirm);
|
||||
if (mode === 'login') return postLogin(e.target.email.value, e.target.password.value);
|
||||
if (mode === 'register') return postRegister(e.target.email.value, e.target.password.value, e.target.confirm.value);
|
||||
}
|
||||
|
||||
const emailRef = useRef<HTMLInputElement>()
|
||||
@@ -52,21 +53,21 @@ const Login = ({ mode }) => {
|
||||
if (mode === 'register') return (
|
||||
<div class="login">
|
||||
{errorEl}
|
||||
<form action="">
|
||||
<form action="" onSubmit={handleSubmit}>
|
||||
<div class="item">
|
||||
<label for="email">email</label>
|
||||
<input type="email" name="email" id="email" ref={emailRef} value={email} required onInput={(e) => setEmail((e.target as HTMLInputElement).value)} />
|
||||
<input type="email" name="email" id="email" ref={emailRef} required />
|
||||
</div>
|
||||
<div class="item">
|
||||
<label for="password">password</label>
|
||||
<input type="password" name="password" id="password" value={password} required onInput={(e) => setPassword((e.target as HTMLInputElement).value)} />
|
||||
<input type="password" name="password" id="password" required />
|
||||
</div>
|
||||
<div class="item">
|
||||
<label for="password">confirm password</label>
|
||||
<input type="password" name="password" id="password" value={confirmPassword} required onInput={(e) => setConfirmPassword((e.target as HTMLInputElement).value)} />
|
||||
<input type="password" name="confirm" id="confirm" required />
|
||||
</div>
|
||||
<div class="item">
|
||||
<input type="submit" value="register" onClick={handleSubmit} />
|
||||
<input type="submit" value="register" />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@@ -76,17 +77,17 @@ const Login = ({ mode }) => {
|
||||
return (
|
||||
<div class="login">
|
||||
{errorEl}
|
||||
<form action="">
|
||||
<form action="" onSubmit={handleSubmit}>
|
||||
<div class="item">
|
||||
<label for="email">email</label>
|
||||
<input type="email" name="email" id="email" ref={emailRef} value={email} required onInput={(e) => setEmail((e.target as HTMLInputElement).value)} />
|
||||
<input type="email" name="email" id="email" ref={emailRef} />
|
||||
</div>
|
||||
<div class="item">
|
||||
<label for="password">password</label>
|
||||
<input type="password" name="password" id="password" value={password} required onInput={(e) => setPassword((e.target as HTMLInputElement).value)} />
|
||||
<input type="password" name="password" id="password" />
|
||||
</div>
|
||||
<div class="item">
|
||||
<input type="submit" value="login" onClick={handleSubmit} />
|
||||
<input type="submit" value="login"/>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
@@ -101,7 +102,7 @@ function LoginPage({ mode }) {
|
||||
<div class='words'>
|
||||
<p>Mates Crates is a record importing service.</p>
|
||||
<p>We bundle orders together from thousands of online stores to reduce the cost of shipping vinyl.</p>
|
||||
<p>Based in Preston.</p>
|
||||
<p>Records can then be picked up from Preston.</p>
|
||||
</div>
|
||||
</div>
|
||||
)
|
||||
|
||||
@@ -112,8 +112,6 @@ export default function createSocket(dispatch) {
|
||||
console.log('websocket connected', SOCKET_URL)
|
||||
sendPing();
|
||||
sendAcpOffers();
|
||||
sendOffers();
|
||||
sendWants();
|
||||
}
|
||||
|
||||
function onError(event) {
|
||||
|
||||
Reference in new issue
Block a user