Code Monkey home page Code Monkey logo

p6bis's People

Contributors

giildo avatar

Watchers

 avatar

p6bis's Issues

[Comment] Add comment

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

dpd - comment

To do

  • Use case
  • Domain Model Diagram
  • Class Diagram
  • Tests
  • Feature

[Authentication] - Password recovery refactoring

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

[Authentication] User authentication

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

sequence diagram - authentication - user authentication

Physical model of data

dpd - authentication

Class diagram

class diagram - authentication - user authentication

To do

  • Use case
  • Domain Model Diagram
  • Class Diagram
  • Tests
  • Feature

[Trick] New Trick

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

sequence diagram - trick - new trick

Physical model of data

dpd - trick

Class diagram

class diagram - trick - new trick

To do

  • Use case
  • Domain Model Diagram
  • Class Diagram
  • Tests
  • Feature

[Project] Initialize project

  • Initialize Symfony4 project
  • Add the dependances :
    • Doctrine
    • ramsey/uuid-doctrine
    • PHPUnit
    • Behat
    • Security
    • Form
    • Validator
    • Twig
    • CodeSniffer
    • Server
    • Webpack-encore
  • Create the folders with the ADR architecture

[Trick] Show a trick

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

sequence diagram - trick - show trick

Physical model of data

dpd - trick comment - show trick

Class diagram

class diagram - trick - show trick

To do

  • Use case
  • Domain Model Diagram
  • Class Diagram
  • Tests
  • Feature

[Comment] Comment deletion

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

sequence diagram - trick - comment deletion

Physical model of data

dpd - comment

Class diagram

class diagram - trick - comment deletion

To do

  • Use case
  • Domain Model Diagram
  • Class Diagram
  • Tests
  • Feature

[Project] Base template

  • Bootstrap
  • Navigation bar with :
    • Connection button when the user isn't connected
    • Disconnection button when the user is connected
    • Home page button

[Trick] Home page & list of the tricks

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

dpd - trick

Simple Home Page

Sequence diagram

sequence diagram - trick - home page - list of the tricks

Class diagram

class diagram - trick - home page - list of the tricks

AJAX Method for pagination

Sequence diagram

sequence diagram - trick - home page - ajax method

Class diagram

class diagram - trick - home page - ajax method

To do

  • Use case
  • Domain Model Diagram
  • Class Diagram
  • Tests
  • Feature

[Trick] Tricks modification

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

sequence diagram - trick - trick modification

Physical model of data

dpd - trick

Class diagram

class diagram - trick - trick modification

To do

  • Use case
  • Domain Model Diagram
  • Class Diagram
  • Tests
  • Feature

[Trick] Trick deletion

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

sequence diagram - trick - trick deletion

Physical model of data

dpd - trick

Class diagram

class diagram - trick - trick deletion

To do

  • Use case
  • Domain Model Diagram
  • Class Diagram
  • Tests
  • Feature

[Comment] Comment modification

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

dpd - comment

To do

  • Use case
  • Domain Model Diagram
  • Class Diagram
  • Tests
  • Feature

[Authentication] User registry

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

sequence diagram - authentication - user registration

Physical model of data

dpd - authentication

Class diagram

class diagram - authentication user registration

To do

  • Use case
  • Domain Model Diagram
  • Class Diagram
  • Tests
  • Feature

[Authentication] User password recovery

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

mpd - authentication - user password recovery

For Username

Sequence diagram

sequence diagram - authentication - user password recovery for username

Class diagram

class diagram - authentication - user password recovery for username

For Password

Sequence diagram

sequence diagram - authentication - user password recovery for password

Class diagram

class diagram - authentication - user password recovery for password

To do

  • Use case
  • Domain Model Diagram
  • Class Diagram
  • Tests
  • Feature

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.