Skip to content
Extraits de code Groupes Projets
Valider 5a54b0b4 rédigé par DavePk04's avatar DavePk04
Parcourir les fichiers

fix: resolve code style issues for linting

parent 70eee4f0
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -15,37 +15,39 @@ export async function getUserAPI(fetch: fetchType, user_id: number): Promise<any ...@@ -15,37 +15,39 @@ export async function getUserAPI(fetch: fetchType, user_id: number): Promise<any
} }
export async function loginAPI( export async function loginAPI(
fetch: fetchType, fetch: fetchType,
email: string, email: string,
password: string password: string
): Promise<{ accessToken: string | null; refreshToken: string | null }> { ): Promise<{ accessToken: string | null; refreshToken: string | null }> {
const response = await fetch(`/tmp-api/v1/auth/login`, { const response = await fetch(`/tmp-api/v1/auth/login`, {
method: 'POST', method: 'POST',
headers: { headers: {
'Content-Type': 'application/json', 'Content-Type': 'application/json',
Accept: 'application/json', Accept: 'application/json'
}, },
credentials: 'include', credentials: 'include',
body: JSON.stringify({ email, password }), body: JSON.stringify({ email, password })
}); });
if (!response.ok) {
console.error(`Login failed:`, await response.json());
return { accessToken: null, refreshToken: null };
}
const cookies = document.cookie.split('; ').reduce((acc, cookie) => {
const [key, value] = cookie.split('=');
acc[key] = decodeURIComponent(value);
return acc;
}, {} as Record<string, string>);
return {
accessToken: cookies['access_token'] || null,
refreshToken: cookies['refresh_token'] || null,
};
}
if (!response.ok) {
console.error(`Login failed:`, await response.json());
return { accessToken: null, refreshToken: null };
}
const cookies = document.cookie.split('; ').reduce(
(acc, cookie) => {
const [key, value] = cookie.split('=');
acc[key] = decodeURIComponent(value);
return acc;
},
{} as Record<string, string>
);
return {
accessToken: cookies['access_token'] || null,
refreshToken: cookies['refresh_token'] || null
};
}
export async function createUserContactAPI( export async function createUserContactAPI(
fetch: fetchType, fetch: fetchType,
......
...@@ -5,7 +5,13 @@ ...@@ -5,7 +5,13 @@
import { onMount } from 'svelte'; import { onMount } from 'svelte';
import Timeslots from '$lib/components/users/timeslots.svelte'; import Timeslots from '$lib/components/users/timeslots.svelte';
import User from '$lib/types/user'; import User from '$lib/types/user';
import { getUsersAPI, patchUserAPI, getUserContactsAPI, getUserAPI, loginAPI } from '$lib/api/users'; import {
getUsersAPI,
patchUserAPI,
getUserContactsAPI,
getUserAPI,
loginAPI
} from '$lib/api/users';
import { Icon, Envelope, Key, UserCircle, Calendar, QuestionMarkCircle } from 'svelte-hero-icons'; import { Icon, Envelope, Key, UserCircle, Calendar, QuestionMarkCircle } from 'svelte-hero-icons';
import Typingtest from '$lib/components/tests/typingtest.svelte'; import Typingtest from '$lib/components/tests/typingtest.svelte';
import { formatToUTCDate } from '$lib/utils/date'; import { formatToUTCDate } from '$lib/utils/date';
...@@ -56,69 +62,66 @@ ...@@ -56,69 +62,66 @@
let timeslots = 0n; let timeslots = 0n;
async function onRegister() { async function onRegister() {
if (nickname === '' || email === '' || password === '' || confirmPassword === '') { if (nickname === '' || email === '' || password === '' || confirmPassword === '') {
message = $t('register.error.emptyFields'); message = $t('register.error.emptyFields');
return; return;
} }
if (password.length < 8) { if (password.length < 8) {
message = $t('register.error.passwordRules'); message = $t('register.error.passwordRules');
return; return;
} }
if (password !== confirmPassword) { if (password !== confirmPassword) {
message = $t('register.error.differentPasswords'); message = $t('register.error.differentPasswords');
return; return;
} }
const emailRegex = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/; const emailRegex = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/;
if (!emailRegex.test(email)) { if (!emailRegex.test(email)) {
message = $t('register.error.emailRules'); message = $t('register.error.emailRules');
return; return;
} }
message = ''; message = '';
try { try {
const response = await fetch('http://127.0.0.1:8000/tmp-api/v1/auth/register', { const response = await fetch('http://127.0.0.1:8000/tmp-api/v1/auth/register', {
method: 'POST', method: 'POST',
headers: { headers: {
'Content-Type': 'application/json', 'Content-Type': 'application/json',
Accept: 'application/json' Accept: 'application/json'
}, },
body: JSON.stringify({ body: JSON.stringify({
email, email,
password, password,
nickname, nickname,
is_tutor: true is_tutor: true
}) })
}); });
if (response.status === 201) { if (response.status === 201) {
const userId = await response.text(); const userId = await response.text();
console.log('User created successfully with ID:', userId); console.log('User created successfully with ID:', userId);
console.log('response:', response); console.log('response:', response);
const result = await loginAPI(fetch, email, password); const result = await loginAPI(fetch, email, password);
console.log('result:', result); console.log('result:', result);
user = await getUserAPI(fetch, parseInt(userId));
user = await getUserAPI(fetch, parseInt(userId)); if (user) {
if (user) { console.log('User details fetched successfully:', user);
console.log('User details fetched successfully:', user); message = $t('register.success');
message = $t('register.success'); current_step++; // Move to the next step
current_step++; // Move to the next step } else {
} else { console.error('Failed to fetch user details');
console.error('Failed to fetch user details'); toastAlert('Failed to fetch user details. Please try again.');
toastAlert('Failed to fetch user details. Please try again.'); }
} } else {
} else { const errorData = await response.json();
const errorData = await response.json(); console.error('Registration failed:', errorData);
console.error('Registration failed:', errorData); message = errorData.detail || $t('register.error.generic');
message = errorData.detail || $t('register.error.generic'); }
} } catch (error) {
} catch (error) { console.error('Error during registration:', error);
console.error('Error during registration:', error); message = $t('register.error.generic');
message = $t('register.error.generic'); }
} }
}
async function onData() { async function onData() {
console.log('onData: ', user); console.log('onData: ', user);
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter