View Code? Open in Web Editor
NEW
SnowTricks : project 6 "Développeur d'application web PHP/Symfony"
PHP 78.47%
Gherkin 4.21%
JavaScript 3.04%
Dockerfile 0.17%
SCSS 6.52%
Twig 7.59%
p6bis's People
Contributors
Watchers
p6bis's Issues
Pagination for :
tricks on the home page
comments on the trick show page
Goal
This functionality enables the creation of a new comment in the database.
Starts
User submits the comment form in the show trick page.
Technical contraints
Form :
"Commentaire" : not null, alphabetic characters, minimum 5 characters
Automatic support in case of submission errors. Errors to be displayed above the fields.
The user must be connected, if not, the form isn't displayed.
Scenarios
User is connected and the submission is a success : the new comment is registered in the database and the user is redirected to the current page.
Diagrams
For sequence diagram & class diagram to look Show trick
Physical model of data
To do
The code of the action is too complicated. He manages two uses cases.
Code split in two actions :
if the user need to enter her username
it the user need to enter her new password
Two actions for the password recovery
All security actions check if the user is connected.
To avoid a repetition of the code, creating an authorization listener.
Goal
This functionality enables the authentification of registred user with his username and his password.
Starts
User requests the connection page
User is redirected to the connection page :
after registration
after recovering his password
if it isn't authenticated for the pages :
trick_add
trick_modify
trick_delete
Technical contraints
If the user is already connected, he's redirected to the home page.
Form :
"Nom d'utilisateur" : not null, alphabetic characters, minimum 3 characters
"Mot de passe" : not null, minimum 8 characters
Automatic support in case of submission errors. Errors to be displayed above the fields.
If the authentification is a success the user is redirected to the home page.
Scenarios
User isn't connected and authentification is a success : authentification and redirection to the home page.
User is new : he goes to the registry page.
User has forgotten is password : he goes to the recovery page.
User is already connected : redirection to the home page.
Diagrams
Sequence diagram
Physical model of data
Class diagram
To do
Creation of the tests "end to end" with Behat.
Goal
This functionality enables the creation of a new trick in the database.
Starts
User requests the page of trick creation.
Technical contraints
Form :
"Nom de la figure" : not null, alphabetic characters, minimum 3 characters
"Catégorie de la figure" : not null, relation "many to one" with category entity
"Description de la figure" : not null, alphabetic characters, minimum 15 characters
"Publié" : checkbox
"Image à la une" : relation "many to one" with picture entity
"Images" : relation "many to one" with picture entity
"Vidéos" : relation "many to one" with video entity
Automatic support in case of submission errors. Errors to be displayed above the fields.
The user must be connected, if not, he's redirected to the connection page.
Scenarios
User is connected and the creation is a success : the new trick is registered in the database and the user is redirected to the show page.
User isn't connected : redirection to the connection page.
Diagrams
Sequence diagram
Physical model of data
Class diagram
To do
Goal
This functionality shows the details of a trick.
Starts
User requests the show page
User is redirected to the show page after he creates or he modifies a trick.
Technical contraints
Comments are paginated 10 per 10
If user is connected : form for comments.
Scenarios
Display of the show page with Trick informations and with a part with comments in bottom.
If the ID isn't correct : the user is redirected to the home page.
Diagrams
Sequence diagram
Physical model of data
Class diagram
To do
Goal
This functionality enables the creation of a new trick in the database.
Starts
User requests the page of trick creation.
Technical contraints
Form :
"Nom de la figure" : not null, alphabetic characters, minimum 3 characters
"Catégorie de la figure" : not null, relation "many to one" with category entity
"Description de la figure" : not null, alphabetic characters, minimum 15 characters
"Publié" : checkbox
"Image à la une" : relation "many to one" with picture entity
"Images" : relation "many to one" with picture entity
"Vidéos" : relation "many to one" with video entity
Automatic support in case of submission errors. Errors to be displayed above the fields.
The user must be connected, if not, he's redirected to the connection page.
Scenarios
User is connected and the creation is a success : the new trick is registered in the database and the user is redirected to the show page.
User isn't connected : redirection to the connection page.
Diagrams
Sequence diagram
Physical model of data
Class diagram
To do
In constructor, change the call to the entity manager for repository.
Goal
This functionality is the home page. On this page :
header with a big picture and the title
body with all thumbnails of the tricks
a button for pagination and AJAX method call
Starts
User requests the home page
User is redirected to the home page :
if the user is already connected for the pages :
Connection
Registration
Password recovery
if ID isn't true for the pages :
trick_show
trick_modify
trick_delete
if the user hasn't the rights to :
Trick modification
Trick deletion
after the trick deletion
Technical contraints
If user is connected and he's simple user : on the tricks thumbnails of which he is the author, there is a pencil for trick modification and a trash for the trick deletion
If user is connected and he's administrator : the pencil and the trash are on all the thumbnails.
In corner bottom right, an image for to go to the up of thumbnails.
If the user clicks on the trash button, a popup window requests if the user is sure to want to delete the trick.
Scenarios
Page display :
user isn't connected : simple thumbnails
user is connected and he's simple user : pencil and trash on his tricks thumbnails
user is connected and he's administrator : pencil and trash on all thembnails
Diagrams
Physical model of data
Simple Home Page
Sequence diagram
Class diagram
AJAX Method for pagination
Sequence diagram
Class diagram
To do
Goal
This functionality enables the modification of a trick in the database.
Starts
User requests the page of trick modification.
Technical contraints
Form :
"Nom de la figure" : not null, alphabetic characters, minimum 3 characters
"Catégorie de la figure" : not null, relation "many to one" with category entity
"Description de la figure" : not null, alphabetic characters, minimum 15 characters
"Publié" : checkbox
"Image à la une" : relation "many to one" with picture entity
"Images" : relation "many to one" with picture entity
"Vidéos" : relation "many to one" with video entity
The form is automatically completed with the values recovered in the database.
The application checks if the user has the rights of modification this trick.
Automatic support in case of submission errors. Errors to be displayed above the fields.
The user must be connected, if not, he's redirected to the connection page.
Scenarios
User is connected and the modification is a success : the trick modificated is registered in the database and the user is redirected to the show page.
The ID isn't correct : the user is redirected to the home page.
User isn't connected : redirection to the connection page.
User hasn't the rights : redirection to the home page.
Diagrams
Sequence diagram
Physical model of data
Class diagram
To do
Check the tests to remove the call at the Kernel when if it isn't necessary.
Goal
This functionality enables the deletion of a trick in the database.
Starts
User requests the page of trick deletion.
Technical contraints
This functionnality hasn't view, a popup window requests if the user is sure to delete this trick.
The user must be connected, if not, he's redirected to the connection page.
The application checks if the user has the rights of deletion this trick.
Scenarios
User is connected and the deletion is a success : the trick is deleted in the database and the user is redirected to the home page.
The ID isn't correct : the user is redirected to the home page.
User isn't connected : redirection to the connection page.
User hasn't the rights : redirection to the home page.
Diagrams
Sequence diagram
Physical model of data
Class diagram
To do
Goal
This functionality enables the modification of a comment in the database.
Starts
User clicks on the modification button in the comment card.
Technical contraints
Form :
"Commentaire" : not null, alphabetic characters, minimum 5 characters
Automatic support in case of submission errors. Errors to be displayed above the fields.
The user must be connected, if not, he's redirected to the current page without comment information.
Scenarios
User is connected and the creation is a success : the comment is modified in the database and the user is redirected to the current page.
Diagrams
For sequence diagram & class diagram to look Show trick
Physical model of data
To do
Goal
This functionality enables the registration of new user in database.
Starts
User requests the registration page
Technical contraints
If the user is already connected, he's redirected to the home page.
Form :
"Nom d'utilisateur" : not null, alphabetic characters, minimum 3 characters
"Nom" : not null, alphabetic characters + "-" + space, minimum 2 characters
"Prénom" : not null, alphabetic characters + "-" + space, minimum 2 characters
"Adresse mail" : not null, email format
"Mot de passe" : not null, minimum 8 characters
Automatic support in case of submission errors. Errors to be displayed above the fields.
If the registration is a success the user is redirected to the connection page.
Scenarios
User isn't connected and registration is a success : registration of the user in database, sends an email and redirection to the connection page
User is already connected : redirection to the home page
Diagrams
Sequence diagram
Physical model of data
Class diagram
To do
Creating a custom constraint for DTO. He checks if the data on the field don't exist in the database.
Goal
This functionality enables the password recovery. The functionality sends an email to the user for the recovery. The user clicks on the link and defines a new password.
Starts
User requests the password recovery page
Technical contraints
If the user is already connected, he's redirected to the home page.
Form :
"Mot de passe" : not null, minimum 8 characters
Automatic support in case of submission errors. Errors to be displayed above the fields.
If the password recovery is a success the user is redirected to the connection page.
Scenarios
User isn't connected and the password recovery is a success : the password is modificated and the user is redirected to the home page.
User doesn't click on the link in the email : the password recovery is aborted.
User is already connected : redirection to the home page.
Diagrams
Physical model of data
For Username
Sequence diagram
Class diagram
For Password
Sequence diagram
Class diagram
To do