import React, { useState } from 'react'; import { Accounts } from 'meteor/accounts-base'; import { useNavigate } from 'react-router-dom'; import { Meteor } from 'meteor/meteor'; import { Roles } from 'meteor/roles'; import { ROLS_GLOBALS } from '../roles'; export const Login = () => { const [isLogin, setIsLogin] = useState( { initialState: true } ); const navigate = useNavigate(); const handleLogin = (e) => { e.preventDefault(); // console.dir(e); // console.dir(e.target.elements.email.value); // console.dir(e.target.elements.password.value); const email = e.target.elements.email.value; const password = e.target.elements.password.value; Meteor.loginWithPassword(email, password, (err) => { if (err) { console.error(err); } else { navigate('/'); } }); }; const handleRegistration = async (e) => { e.preventDefault(); // console.dir(e); const username = e.target.elements.username.value; const email = e.target.elements.email.value; const password = e.target.elements.password.value; const password2 = e.target.elements.password2.value; if (password !== password2) { console.error("Passwords do not match!"); return null; } const userId = await Accounts.createUserAsync({ username, email, password }); console.log("userId deL NOU USUARI: ", userId); userId && await Roles.addUsersToRolesAsync(userId, [ROLS_GLOBALS.USUARI]); navigate('/'); return userId; }; if (isLogin) { return


} return (
{ // let userId, codi; try { const username = d.get('username'); const email = d.get('email'); const tel = d.get('tel'); const password = d.get('password'); const password2 = d.get('password2'); const codi = d.get('codi'); if (password !== password2) { console.error("Passwords do not match!"); return null; } console.log("username: ", username); console.log("email: ", email); console.log("tel: ", tel); console.log("password: ", password); console.log("password2: ", password2); console.log("codi: ", codi); const uObj = { username, email, tel, password, password2 }; Meteor.callAsync('creaUsuariAmbCodi', uObj, codi); // userId = await Accounts.createUser({ // username, // email, // password // }); // userId && await Roles.addUsersToRolesAsync(userId, [ROLS_GLOBALS.USUARI]); // console.log("userId deL NOU USUARI: ", userId); } catch (err) { alert(err); console.error(err); } // try { // userId && await Meteor.callAsync('usaCodiAmbUsuari', userId, codi); // navigate('/'); // } catch (err2) { // alert(err2); // console.error(err2); // } // Meteor.callAsync('editaOAfigCodi', { // ...codiGenerat || [], // codi: codiGenerat, // ambit: d.get('selAmbit') || "", // rol: d.get('selRol'), // act_abs: d.get('activ_abs'), // act_cond: d.get('activ_cond'), // periode_validesa_ini: d.get('periode_validesa_ini'), // periode_validesa_fi: d.get('periode_validesa_fi') // }) // .then(() => setAmbitSeleccionat(null)) // .catch(err => console.error(err)) // ; }} >




ev.target.value = (ev.currentTarget.value.length <= 5 && ev.currentTarget.value.toUpperCase()) || ev.currentTarget.value.slice(0, 5) } />
); };