Pour ouvrir le site dans un navigateur : $ open -a 'Google Chrome' index.html
Intégration avec Bulma
- Fonction de gestion des écouteurs pour afficher/cacher les modals :
addListenerToActions
. - Création d'un template dans le HTML avec un id spécifique (list-id), puis d'une méthode
makeListInDOM
qui récupère le template et l'envoie danshandleAddListForm
, appelée lors de la soumission du formulaire de création de liste. - Création d'une modal pour ajouter une carte avec id (list_id) dans le form et input hidden.
- Création d'un template dans le HTML mais pour les cartes cette fois.
- Pour afficher la modal card -> ajout dans le HTML de
.add-card-button
au niveau du +, et appelshowAddCardModal
dansaddListenerToActions
, comme pour liste mais avec l'argumentevent
qui contient l'objet cliqué. - Pour lier la carte à la bonne liste -> ciblage de
.panel
(la liste) le plus proche avec "event.target.closest", récupération de l'id de la liste à envoyer dans le champ id de card. - Désormais, la modal d'ajout de carte s'affiche, donc écouteur sur "submit" qui lance
handleAddCardForm
. handleAddCardForm
envoie àmakeCardInDOM
deux paramètres : name="content" (de la modal card) et list_id qui a été remplacée par l'id de la liste dansshowAddCardModal
.- Même logique pour
makeCardInDOM
qu'avecmakeListInDOM
-> récupération du template, titre générique remplacé par celui entré dans le form et ajout de la carte dans la bonne liste.
- Ajout d'une propriété
base_url
qui contient l'url de l'API (son point d'entrée de base). - Puis appel AJAX sur cette url avec fetch et await la réponse en format JSON pour récupérer les données sous forme de tableau.
- Boucle sur tableau pour appeler
makeListInDOM
et créer chacune des listes. - Boucle card dans boucle liste pour ajouter les cartes.
- Sélection '.box' du template card pour modifier background et lui attribuer card.color définie dans bdd (si modification de couleur ou position dans bdd, ne pas oublier de relancer avec
psql -U astrid -d trello -f ./data/create_db.sql
). - Appel API dans
handleAddListForm
pour envoyer les listes créées dans le form à la bdd - Ajout du middleware multer en back pour gérer le format de formData
- Modification du titre via form hidden, écouteur pour déclencher
showFormToEditTitle
dansmakeListInDOM
- Listener sur submit lance
handleEditListForm
qui envoie les données dans la bdd avec fetch patch - Ajout d'un formulaire d'édition dans le HTML de card template
- Création de
handleCardContentEdit
pour faire apparaitre le form d'édition de carte - Création de
handleEditCardForm
pour modifier une carte et sauvegarder - Création de
handleCardDelete
pour supprimer une carte et sauvegarder