|
Prérequis :
|
|
| Application | ListesApp (app/listesApp.js) |
|---|---|
| Contrôleur | ListesController (app/listesController.js) |
| dispoItems Tableau des produits disponibles défini en JSON (utiliser le service $http) |
|
| includedItems Tableau des produits à inclure |
|
| selectedDispoItems Tableau des éléments sélectionnés dans la liste des produits disponibles |
|
| selectedIncludedItems Tableau des éléments sélectionnés dans la liste des produits à inclure |
|
| step Variable d'état agissant sur les vues et prenant les valeurs 1 : choix des produits ou 2 : visualisation du choix |
|
| addToIncluded() Ajoute les produits disponibles en surbrillance (selectedDispoItems) à la liste des produits à inclure (includedItems) |
|
| addAllToIncluded() Ajoute tous les produits disponibles (dispoItems) à la liste des produits à inclure (includedItems) |
|
| removeFromIncluded() Retire les produits sélectionnés en surbrillance (selectedIncludedItems) pour les remettre dans la liste des produits disponibles (items) |
|
| RemoveAllFromIncluded() Retire tous les produits à inclure (includedItems) pour les remettre dans la liste des produits disponibles (items) |
dispoItems : à intégrer dans le contrôleur
[
{
"url": "http://tutorialzine.com/2013/07/50-must-have-plugins-for-extending-twitter-bootstrap/",
"title": "50 Must-have plugins for extending Twitter Bootstrap",
"image": "http://cdn.tutorialzine.com/wp-content/uploads/2013/07/featured_4-100x100.jpg"
},
{
"url": "http://tutorialzine.com/2013/08/simple-registration-system-php-mysql/",
"title": "Making a Super Simple Registration System With PHP and MySQL",
"image": "http://cdn.tutorialzine.com/wp-content/uploads/2013/08/simple_registration_system-100x100.jpg"
},
{
"url": "http://tutorialzine.com/2013/08/slideout-footer-css/",
"title": "Create a slide-out footer with this neat z-index trick",
"image": "http://cdn.tutorialzine.com/wp-content/uploads/2013/08/slide-out-footer-100x100.jpg"
},
{
"url": "http://tutorialzine.com/2013/06/digital-clock/",
"title": "How to Make a Digital Clock with jQuery and CSS3",
"image": "http://cdn.tutorialzine.com/wp-content/uploads/2013/06/digital_clock-100x100.jpg"
},
{
"url": "http://tutorialzine.com/2013/05/diagonal-fade-gallery/",
"title": "Smooth Diagonal Fade Gallery with CSS3 Transitions",
"image": "http://cdn.tutorialzine.com/wp-content/uploads/2013/05/featured-100x100.jpg"
},
{
"url": "http://tutorialzine.com/2013/05/mini-ajax-file-upload-form/",
"title": "Mini AJAX File Upload Form",
"image": "http://cdn.tutorialzine.com/wp-content/uploads/2013/05/ajax-file-upload-form-100x100.jpg"
},
{
"url": "http://tutorialzine.com/2013/04/services-chooser-backbone-js/",
"title": "Your First Backbone.js App – Service Chooser",
"image": "http://cdn.tutorialzine.com/wp-content/uploads/2013/04/service_chooser_form-100x100.jpg"
}
]
step==1 :
step==2 :
| Application | ContactApp (app/ContactApp.js) |
|---|---|
| Contrôleur | ContactController (app/contactController.js) |
| contacts Tableau des contacts existants |
|
| contact Variable contenant le contact à modifier |
|
| tmpContact Variable contenant le contact modifié par le formulaire |
|
| operation Chaîne indiquant la modification ou l'ajout d'un contact |
|
| edit Contrôle l'affichage du formulaire d'ajout/modification |
|
| toUpdate(contact) Affiche le formulaire de modification du contact |
|
| toAdd() Affiche le formulaire d'ajout d'un contact |
|
| add() Ajoute le contact |
|
| update() Met à jour la liste des contacts après validation du formulaire (ajout ou modif) |
|
| delete(contact) Supprime de la liste le contact |
A placer dans app/directives.js
| Nom | Description |
|---|---|
| contactElem | Permet d'afficher un contact sur une ligne de tableau |
| frmContact | Affiche un formulaire de contact |
Variante sur la suppression permettant l'annulation d'opérations :