txs:contrib:framadate_p18:tips

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
txs:framadate-p18:tips [2018/06/08 23:49] – [Tips] lacourantxs:contrib:framadate_p18:tips [2020/09/16 11:24] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
 +==== Tips ====
 +===débug===
 +  * le débuggeur du navigateur (raccourci F12) permet une exécution pas à pas du javascript : pour cela mettez des points d'arrêt, une fois le code arrêté le pas à pas se fait avec F10 (F8 pour sauter au prochain point d'arrêt)
 +  * utiliser l'inspecteur d'éléments du navigateur pour identifier la balise correspondant à un élément
 +  * consulter les logs de votre conteneur docker (celle de la base de donnée par exemple) avec <code>docker logs <nom du conteneur></code>
 +  *  faire des <code>var_dump(*$nom de la variable*)</code> pour mieux analyser où se situe les problèmes .
 +===Base de donnée ===
 +Il peut être intéressant de voir la structure de la base donnée de framadate 
 +
 +<code>~$ docker exec -it framadate-db bash</code>
 +
 +Se connecter à la base de données avec les identifiants définis dans le docker-compose.yml
 +
 +<code>mysql -u framadate framadate -p </code>
 +
 + Vous êtes maintenant dans un shell  à l'intérieur de votre base de donnée, vous pouvez donc librement lancer des commandes SQL 
 +
 +<code> show tables</code>
 +<code>describe *nom de la tables*</code>
 +
 +
 +=== Gérer les traductions  ===
 +Gérer les traductions sur framadate et très simple, les développeurs  ne s'occupent que de la version anglaise .
 +Pour gérer les  traductions, il faut  faire deux choses :\\
 +**Modifier le en.json**\\
 + rajouter dans le dossier /locale/en.json selon ce format ( ici avec edit name )'' "Edit the name": "Edit name"'', si la page n'existe pas il faut rajouter le nom de la page avec ''"nomdelapage {"edit the name" : "edit name"}''\\
 +
 +Il faut insérer les variables dans l'ordre alphabétique.
 +
 +**Modifier l'HTML** :\\
 +Chaque contenu apparaissant à l'écran doit avoir ce format'' {__('nomdelapage', 'motvisible')}''
 +
 +=== linux : commandes utiles ===
 +  * **Commande : cd**
 +<code>cd <chemin dossier></code> 
 +déplace le dossier courant vers la destination 
 +  * **Commande : ls**
 +<code>ls [-al]</code> 
 +affiche le contenu du dossier courant (avec les droits d'accès avec les option -al)
 +  * **Commande : chmod**
 +<code>chmod <code pour droit d'acces> <nom du fichier/dossier></code> 
 +change les droits d'accès d'un fichier/dossier
 +  * **Commande : chown**
 +<code>chown <user>:<groupe> -R <nom du fichier/dossier></code> 
 +change le propriétaire d'un fichier/dossier (* => tous)
 +  * **Commande : cat et nano**
 +<code>cat / nano <nom du fichier></code>
 +affiche le contenu d'un fichier/permet de le modifier 
 +  * **Commande : locate et find**
 +<code>locate <nom du fichier> / find -name <nom du fichier></code> 
 +trouve un fichier sur la machine (locate se base sur l'index : si vous cherchez un fichier récent, il n'est peut-être pas indexé et il faut le chercher avec la commande find, qui est plus longue)
 +
 +=== Docker : commande utile  ===
 +  * **Commande : docker ps**
 +<code>docker ps</code> 
 +liste les containers dockers
 +  * **Commande : docker supprime les images**
 +<code>rmi $(docker images -q) </code>
 +Supprime toute les images de tout les containers , ce qui peut être utile puisque les images consomment beaucoup de place. 
 +==== Bonne pratique ====
 +===  code en général : ===
 +  * respecter les indentations
 +  * respecter les choix de nommage : snakecase ou camelcase (pas les deux)
 +===  éditeur de texte : ===
 +Utiliser un éditeur de texte comme [[https://atom.io|atom]], qui permet de faire des recherches globales sur tout le projet et ainsi trouver tout les liens entre les différentes pages.
 +
 +=== Conseil d'utilisation de git : ===
 +  * forker le projet
 +  * faire une branche à partir de la branche master pour chaque issue (git checkout)
 +  * faire plusieurs commit : 1 par changement fonctionnel ou technique (ajout d'un bouton + fonction associée, etc...)
 +  * faire les mises à jour de Framadate sur la branche master.
 +  * gitignore des fichiers qui ne doivent pas être publics (éviter les push force)
 +  * Utiliser [[https://github.com/FriendsOfPHP/PHP-CS-Fixer#installation|Php fixer]] pour respecter les normes d'indentation.
  
  • txs/contrib/framadate_p18/tips.txt
  • de 127.0.0.1