HackBBS Reloaded Symfony
HackBBS reloaded
Equipe
- Korigan : CDP, dev
- TorTukiTu : Architecte, dev
- Lancien : dev
- heaven : GDP (Gestionnaire de projet), dev
- fredo2009 : dev
- Vous ?
Technologies
- PHP5
- Symfony2
- Doctrine2
- PostGreSql
- jQuery
- HTML5
- CSS3
Architecture
Mise en place d'une application symfony avec différent bundle afin de gérer chaque fonctionalité du site.
CoreBundle
Gestion des fonctions de base, et de la layout du site. Dans ce bundle seront ajoutés tous les assets (css, js, images)
TerminalBundle
Gestion de l'interface avec le jquery terminal mis en place par Tortukitu.
Code yuml de gestion des commandes du terminal :
[Controller||+commandAction()]-.-getService-.->[CommandFactory||+createCommand(command)] [CommandFactory]--[<<ICommand>>;Command] [<<ICommand>>;Command]<--[HelpCommand|+execute()] [<<ICommand>>;Command]<--[WhoamiCommand|+execute()] [<<ICommand>>;Command]<--[ExampleCommand|+execute();+getOptions();+getOperands()]
Les commandes du terminal sont configurer dans un fichier yaml du bundle TerminalBundle. Voici un exemple de command :
commands: example: name: example brief: commande example class: HackBBS\TerminalBundle\Models\ExampleCommand options: - ["r", "required", 1] - ["o", "optional", 2] - ["p", "option", 0]
les paramètre sont :
- name : le nom de la commande
- brief : la description de la commande
- class : la classe de commande auquel la commande est liée côté serveur
- options :les options de la commande sous forme de tableau
- option court : <command> -r
- option longue : <command> --required
- type d'option :
- 0 : pas d'argument
- 1 : argument obligatoire
- 2 : argument optionnel
AdminBundle
Gestion du back office du site.