diff --git a/README.md b/README.md index 75c347a..aa81d37 100644 --- a/README.md +++ b/README.md @@ -1,61 +1,23 @@

Laravel Logo

-

-Build Status -Total Downloads -Latest Stable Version -License -

+[Frontend repository](https://iutbg-gitlab.iutbourg.univ-lyon1.fr/sae-but2/2025-26/gestion-benevoles-association/Frontend) -## About Laravel +# Gestion des bénévoles d'une association -Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experience to be truly fulfilling. Laravel takes the pain out of development by easing common tasks used in many web projects, such as: +## Installation -- [Simple, fast routing engine](https://laravel.com/docs/routing). -- [Powerful dependency injection container](https://laravel.com/docs/container). -- Multiple back-ends for [session](https://laravel.com/docs/session) and [cache](https://laravel.com/docs/cache) storage. -- Expressive, intuitive [database ORM](https://laravel.com/docs/eloquent). -- Database agnostic [schema migrations](https://laravel.com/docs/migrations). -- [Robust background job processing](https://laravel.com/docs/queues). -- [Real-time event broadcasting](https://laravel.com/docs/broadcasting). +- [Installer Laravel](https://laravel.com/docs/12.x#installing-php) +- Configurer le projet + - Renommer le fichier `.env.example` en `.env` + - Remplir le `APP_KEY` dans `.env` + - Remplir les paramètres de connexion à la base de données + +Exemple configuration base de donnée (.env) -Laravel is accessible, powerful, and provides tools required for large, robust applications. + DB_CONNECTION=mariadb + DB_HOST=127.0.0.1 + DB_PORT=3306 + DB_DATABASE=sae + DB_USERNAME=root + DB_PASSWORD=root -## Learning Laravel - -Laravel has the most extensive and thorough [documentation](https://laravel.com/docs) and video tutorial library of all modern web application frameworks, making it a breeze to get started with the framework. - -You may also try the [Laravel Bootcamp](https://bootcamp.laravel.com), where you will be guided through building a modern Laravel application from scratch. - -If you don't feel like reading, [Laracasts](https://laracasts.com) can help. Laracasts contains thousands of video tutorials on a range of topics including Laravel, modern PHP, unit testing, and JavaScript. Boost your skills by digging into our comprehensive video library. - -## Laravel Sponsors - -We would like to extend our thanks to the following sponsors for funding Laravel development. If you are interested in becoming a sponsor, please visit the [Laravel Partners program](https://partners.laravel.com). - -### Premium Partners - -- **[Vehikl](https://vehikl.com)** -- **[Tighten Co.](https://tighten.co)** -- **[Kirschbaum Development Group](https://kirschbaumdevelopment.com)** -- **[64 Robots](https://64robots.com)** -- **[Curotec](https://www.curotec.com/services/technologies/laravel)** -- **[DevSquad](https://devsquad.com/hire-laravel-developers)** -- **[Redberry](https://redberry.international/laravel-development)** -- **[Active Logic](https://activelogic.com)** - -## Contributing - -Thank you for considering contributing to the Laravel framework! The contribution guide can be found in the [Laravel documentation](https://laravel.com/docs/contributions). - -## Code of Conduct - -In order to ensure that the Laravel community is welcoming to all, please review and abide by the [Code of Conduct](https://laravel.com/docs/contributions#code-of-conduct). - -## Security Vulnerabilities - -If you discover a security vulnerability within Laravel, please send an e-mail to Taylor Otwell via [taylor@laravel.com](mailto:taylor@laravel.com). All security vulnerabilities will be promptly addressed. - -## License - -The Laravel framework is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT). diff --git a/tests/Events/Create event.bru b/tests/Events/Create event.bru index 0aef09b..ef54568 100644 --- a/tests/Events/Create event.bru +++ b/tests/Events/Create event.bru @@ -10,10 +10,6 @@ post { auth: inherit } -headers { - X-XSRF-TOKEN: -} - body:json { { "name": "{{name}}", @@ -22,8 +18,8 @@ body:json { } vars:pre-request { - name: Mon super event - description: Ma super description + name: + description: } assert { @@ -34,3 +30,16 @@ settings { encodeUrl: true timeout: 0 } + +docs { + # /events/create -- POST + + Permet de créer un événement. + + La connexion est obligatoire, les cookies de connexions/XSRF doivent être présents. + + L'utilisateur doit être admin pour créer un événement + + Entrée: nom, description + +} diff --git a/tests/Login.bru b/tests/Login.bru index 009e155..163ee26 100644 --- a/tests/Login.bru +++ b/tests/Login.bru @@ -10,11 +10,6 @@ post { auth: none } -headers { - X-XSRF-TOKEN: - Accept: application/json -} - body:json { { "email": "{{email}}", @@ -38,8 +33,9 @@ settings { } docs { - Permet de se connecter + # /users/login -- POST + Permet de se connecter Le header X-XSRF-TOKEN est obligatoire. Pour le récupérer: diff --git a/tests/Logout.bru b/tests/Logout.bru index a1842f3..82691a8 100644 --- a/tests/Logout.bru +++ b/tests/Logout.bru @@ -10,11 +10,6 @@ post { auth: inherit } -headers { - X-XSRF-TOKEN: - Accept: application/json -} - assert { res.status: eq 200 } @@ -23,3 +18,10 @@ settings { encodeUrl: true timeout: 0 } + +docs { + # /users/logout -- POST + + Permet de se déconnecter. + Supprime le remember_token et cookies de connexions. +} diff --git a/tests/Users/Create user.bru b/tests/Users/Create user.bru index 0fedbfc..bea56af 100644 --- a/tests/Users/Create user.bru +++ b/tests/Users/Create user.bru @@ -10,10 +10,6 @@ post { auth: inherit } -headers { - Accept: application/json -} - body:json { { "name": "{{name}}", @@ -24,10 +20,10 @@ body:json { } vars:pre-request { - name: test - email: test@test.com - password: test - lastname: NAME + name: + email: + password: + lastname: } assert { @@ -40,5 +36,9 @@ settings { } docs { - Créer un utilisateur test + # /users/register -- POST + + Permet de créer un compte utilisateur. + + Entrées: name, lastname, email, password } diff --git a/tests/Users/Delete user by id.bru b/tests/Users/Delete user by id.bru index 633709f..f35ca22 100644 --- a/tests/Users/Delete user by id.bru +++ b/tests/Users/Delete user by id.bru @@ -5,16 +5,29 @@ meta { } delete { - url: {{url}}/api/users/7 + url: {{url}}/api/users/{{id}} body: none auth: inherit } -headers { - X-XSRF-TOKEN: +vars:pre-request { + id: } settings { encodeUrl: true timeout: 0 } + +docs { + # /users/id -- DELETE + + + Permet de supprimer un compte utilisateur + + La connexion est obligatoire, les cookies de connexions/XSRF doivent être présents. + + L'utilisateur doit être admin poir supprimer un autre compte utilisateur. + + Entrée: id +} diff --git a/tests/Users/Delete user.bru b/tests/Users/Delete user.bru index 95fee60..2479dd4 100644 --- a/tests/Users/Delete user.bru +++ b/tests/Users/Delete user.bru @@ -10,12 +10,15 @@ delete { auth: inherit } -headers { - Accept: application/json - X-XSRF-TOKEN: -} - settings { encodeUrl: true timeout: 0 } + +docs { + # /users -- DELETE + + Permet de supprimer le compte de l'utilisateur actuellement connecté. + + La connexion est obligatoire, les cookies de connexions/XSRF doivent être présents. +} diff --git a/tests/Users/Get User.bru b/tests/Users/Get User.bru index d0f618e..300d56d 100644 --- a/tests/Users/Get User.bru +++ b/tests/Users/Get User.bru @@ -5,19 +5,26 @@ meta { } get { - url: {{url}}/api/users/5 + url: {{url}}/api/users/{{id}} body: none auth: inherit } +vars:pre-request { + id: +} + settings { encodeUrl: true timeout: 0 } docs { + # /users/id -- GET + Permet de récupérer les informations d'un utilisateur. Authetification demandée + Cookies de connexion/XSRF requis. /api/users/{ID} diff --git a/tests/Users/Modify user role.bru b/tests/Users/Modify user role.bru index 8d95cef..da9aed1 100644 --- a/tests/Users/Modify user role.bru +++ b/tests/Users/Modify user role.bru @@ -5,16 +5,11 @@ meta { } post { - url: {{url}}/api/users/5/role + url: {{url}}/api/users/{{id}}/role body: json auth: inherit } -headers { - Accept: application/json - X-XSRF-TOKEN: -} - body:json { { "role": {{role}} @@ -22,7 +17,8 @@ body:json { } vars:pre-request { - role: 2 + role: + id: } assert { @@ -33,3 +29,15 @@ settings { encodeUrl: true timeout: 0 } + +docs { + # /users/id/role -- POST + + Permet de modifier le rôle d'un utilisateur. + + La connexion est obligatoire, les cookies de connexions/XSRF doivent être présents. + + L'utilisateur doit être admin pour modifier le rôle d'un utilisateur. + + Entrées: id, role +} diff --git a/tests/Users/Update User.bru b/tests/Users/Update User.bru index 0c10882..ef236e9 100644 --- a/tests/Users/Update User.bru +++ b/tests/Users/Update User.bru @@ -10,11 +10,6 @@ post { auth: inherit } -headers { - Accept: application/json - X-XSRF-TOKEN: -} - body:json { { "name": "{{name}}", @@ -24,9 +19,9 @@ body:json { } vars:pre-request { - name: testUpdated - lastname: testUpdated - phone: 0607080910 + name: + lastname: + phone: } assert { @@ -39,7 +34,13 @@ settings { } docs { - Permet de modifier le nom, le prenom et le numéro de téléphone de l'utilisateur + # /users/update -- POST - le nom, le prenom et le numéro sont requis en entrée (même si pas modifié) + Permet de modifier les données de l'utilisateur actuellement connecté. + + La connexion est obligatoire, les cookies de connexions/XSRF doivent être présents. + + Entrées: name, lastname, phone + + Toutes les données d'entrées sont requises, même celles non modifiées. } diff --git a/tests/Users/Validate User.bru b/tests/Users/Validate User.bru index dfe4089..689621b 100644 --- a/tests/Users/Validate User.bru +++ b/tests/Users/Validate User.bru @@ -5,17 +5,28 @@ meta { } post { - url: {{url}}/api/users/5/validate + url: {{url}}/api/users/{{id}}/validate body: none auth: inherit } -headers { - Accept: application/json - X-XSRF-TOKEN: +vars:pre-request { + id: } settings { encodeUrl: true timeout: 0 } + +docs { + # /users/id/validate -- POST + + Permet de valider l'inscription d'un nouvel utilisateur. + + La connexion est obligatoire, les cookies de connexions/XSRF doivent être présents. + + L'utilisateur doit être admin pour valider un autre utilisateur + + Entrée: id: identifiant de l'utilisateur qui va être validé. +} diff --git a/tests/Users/get all users.bru b/tests/Users/get all users.bru index d2227be..359aff1 100644 --- a/tests/Users/get all users.bru +++ b/tests/Users/get all users.bru @@ -14,3 +14,9 @@ settings { encodeUrl: true timeout: 0 } + +docs { + # /users -- GET + + Permet de récupérer tous les IDs des utilisateurs. +} diff --git a/tests/collection.bru b/tests/collection.bru index 9220456..8e9945d 100644 --- a/tests/collection.bru +++ b/tests/collection.bru @@ -1,3 +1,4 @@ headers { Accept: application/json + X-XSRF-TOKEN: } diff --git a/tests/get CSRF.bru b/tests/get CSRF.bru index cc6845b..2b4b6bd 100644 --- a/tests/get CSRF.bru +++ b/tests/get CSRF.bru @@ -18,3 +18,9 @@ settings { encodeUrl: true timeout: 0 } + +docs { + # /csrf-cookie -- GET + + Renvoi le cookie XSRF permettant de se connecter et de faire des requêtes afin d'éviter les failles CSRF. +} diff --git a/tests/me.bru b/tests/me.bru index c75a494..3fc87b7 100644 --- a/tests/me.bru +++ b/tests/me.bru @@ -5,15 +5,11 @@ meta { } get { - url: {{url}}/api/me + url: {{url}}/api/users/me body: none auth: inherit } -headers { - Accept: application/json -} - assert { res.status: eq 200 } @@ -22,3 +18,13 @@ settings { encodeUrl: true timeout: 0 } + +docs { + # /me -- GET + + Renvoi l'utilisateur acutllement connecté. + + La connexion est obligatoire, les cookies de connexions/XSRF doivent être présents. + + Renvoi un objet avec les informations de l'utilisateur +}