Clement 8a94d4358e
Some checks failed
Build Docker Image Front / run (pull_request) Failing after 36s
Build Docker Image Back / run (pull_request) Successful in 23s
JsDocs / coverage (pull_request) Successful in 24s
Test and coverage / coverage (pull_request) Successful in 1m27s
make user use template
2024-05-20 18:09:13 +02:00

67 lines
1.6 KiB
Plaintext

---
import Layout from 'layouts/PageLayout.astro';
//import Layout from 'layouts/Layout.astro';
import AstroUtils from "libs/AstroUtils";
import PocketBase from 'pocketbase'
import ContactUs from 'components/widgets/Contact.astro';
import FormContainer from 'components/ui/Form.astro';
const pb = Astro.locals.pb
if(pb.authStore.isValid){
return Astro.redirect("/account")
}
console.log(Astro.request.method);
await AstroUtils.wrap(async () => {
if (Astro.request.method !== 'POST') {
return
}
const form = await Astro.request.formData();
const request = {
user: form.get("username") as string,
password: form.get("password") as string
}
try {
await pb.collection('users').authWithPassword(request.user,request.password);
return Astro.redirect("/account")
} catch (error) {
console.log(error)
console.warn('user password is incorrect')
return Astro.redirect("/account/login");// route('/account/login', {message: 'Compte invalide, valider les identifiants'})) //XXX: comprendre comment le system de route fonctionne
}
})
const metadata = {
title: 'Login',
ignoreTitleTemplate: true,
};
---
<Layout metadata={metadata}>
<ContactUs
formid="account-creation"
title="Inscription"
subtitle="Incrivez-vous pour sauvegardez vos recherche"
button='Connexion'
method='post'
enctype="multipart/form-data"
inputs={[
{
type: 'text',
name: 'username',
label: 'Nom d\'utilisateur ou e-mail',
placeholder: "michel@example.com"
},
{
type: "password",
name: "password"
}
]}
/>
</Layout>