Menu

Développeurs

Michal Iglewski Valérie Levasseur Alexandre Valérie Levasseur Ibrahima GUEYE Lappa Dzoti Claude

Documentation pour les développeurs

Aperçu de l'application

L'application est codée en PHP, Javascript et Ajax. Les données sont stockées sous la forme de fichiers XML et sont traitées par les transformations XSLT. Il est à noter que certaines fonctionnalités nécessitent une version de PHP de 5.4.0 (ou plus récente.)

Pour plus de détails, veuillez consulter:

Environnement de travail et installation de l'application

Cette section documente les étapes généralement nécessaires avant la collaboration à l'application. C'est qu'afin de collaborer à cette application, vous devrez au moins installer Git et PHP.

Développement du système

Utilisation de Git lors du développement du système

Il est à noter que cette section suppose que vous travaillez sur un fork de ebmpicoebmpico est le repo principal

Définition des termes Git utilisés dans cette section :

  • upstream : représente la connection distante avec le repository principal (ebmpico)
  • origin : représente la connection distante avec le repository fork
  • upstream <branch> : représente une branche du repository principal
  • origin <branch> : représente une branche du repository fork

Quelques commandes Git

Mettre à jour origin master

Pour pouvoir mettre à jour origin master, upstream doit être défini. Pour définir upstream, vous pouvez exécuter l'instruction suivante:

 git remote add upstream git://git.code.sf.net/p/ebmpico/git

Pour mettre à jour origin master, depuis upstream master aussi bien le local que le distant, voici les lignes à exécuter (les faire en ordre):

1. On met HEAD sur origin master:

 git checkout master

2. On recupère le contenu de upstream, donc du repo principal, en local:

 git fetch upstream

3. On rebase origin master contre upstream master, notre local origin master aura les dernières modifications du repo principal:

 git rebase upstream/master 

4. On met à jour origin master distant (cette commande est optionnelle, mais il est toujours bon d'avoir notre fork à jour):

 git push origin master 

Pousser son travail

Pour pousser son travail, le processus est simple, on pousse son travail sur origin (le fork), jamais sur upstream. Puis on fait une pull request depuis origin:

<branche_de_travail> vers upstream master

Pour mettre à jour sa branche avant de pousser son travail avec les dernières modifications de upstream, il suffit de reproduire les 4 lignes de codes précédentes et faire les trois prochaines:

1. On positionne HEAD sur la branche de travail locale

 git checkout <branche_de_travail>

2. On met à jour la branche de travail actuelle depuis master

 git rebase master

3. On pousse sa branche de travail, qui a les dernières modifications de master (upstream et origin!), puis on demande un pull request depuis le GUI de SourceForge:

 git push origin  <branche_de_travail>

Accès au prototype et aux démos

Exemples des services

a) services des menus avec des résultats différents :

http://larip.uqo.ca/pico/src/services/menus/menu_getElements.php
http://larip.uqo.ca/pico/src/services/menus/menu_getElements.php?menuId=main
http://larip.uqo.ca/pico/src/services/menus/menu_getElements.php?menuId=test
http://larip.uqo.ca/pico/src/services/menus/menu_getElements.php?menuId=main&l=fr
http://larip.uqo.ca/pico/src/services/menus/menu_getElements.php?menuId=main&l=en

b) d'autres exemples :

http://larip.uqo.ca/pico/src/services/securite/user_chkAccessRights.php
http://larip.uqo.ca/pico/src/services/securite/user_getFirstLastName.php
http://larip.uqo.ca/pico/src/services/securite/user_login.php / exige les POST avec un nom et un mot de passe /
http://larip.uqo.ca/pico/src/services/securite/user_logout.php
http://larip.uqo.ca/pico/src/services/pico/pico_get.php / exige un POST avec ID de pico /
http://larip.uqo.ca/pico/src/services/pico/pico_get.php?lang=en / exige un POST avec ID de pico /
http://larip.uqo.ca/pico/src/services/pico/pico_getMessages.php / exige un POST avec ID de pico /
http://larip.uqo.ca/pico/src/services/search.php?strP=cancer&strI=&strC=&strO=&strSourceName=PubMed&nbArt=3&questionType=unspecified&raw=&min_year=&max_year=

Le paramètre GET pour la langue "l=fr" ou "l=en" peut être utilisé pour tous les services. Sinon, l'application se souvient de la langue utilisée en dernier.


Related

Wiki: Architecture EBMPICO
Wiki: Cahier des charges
Wiki: Documentation de PHPUnit
Wiki: Environnement de travail - installation
Wiki: Gestion des droits d'accès dans EBMPICO
Wiki: Home
Wiki: Installation
Wiki: Règles de codage en PHP