Subversion Repositories eFlore/Applications.del

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
1753 3721 d 2 h mathias /branches/v1.3-beryllium/services/modules/0.1/observations/ Service observations : une obs est considérée comme à déterminer si son nom_sel_nn est NULL ou vaut zéro  
1739 3727 d 2 h mathias /branches/v1.3-beryllium/ Création branche version 1.3-beryllium.  
1666 3746 d 18 h jpm /trunk/services/ Gestion du statut "administrateur" pour les utilisateurs connectés dans le web service utilisateur
Uniformisation des web services qui renvoient l'email de l'observateur dans "auteur.courriel".
 
1618 3763 d 20 h mathias /trunk/services/modules/0.1/observations/ Nettoyage indentation  
1528 3822 d 22 h mathias /trunk/services/modules/0.1/observations/ Le masque "adeterminer" considère aussi les observations dont la "certitude" est "douteux"
Le masque "aconfirmer" n'est plus géré (obsolète)
 
1499 3847 d 20 h aurelien /trunk/services/modules/0.1/observations/ Correction d'une vérification de variable qui n'était pas tout le temps présente dans un tableau  
1498 3847 d 21 h raphael /trunk/services/modules/0.1/ pictoflora/identiplante: priorité données aux champs spécifique sur le champ de masque général  
1494 3852 d 18 h raphael /trunk/services/modules/0.1/ identiplante: la gestion de masque.tag est spécifique et n'a rien à faire dans le Del Toolkit (+ indentation)  
1490 3853 d 23 h raphael /trunk/services/modules/0.1/ pictoflora/identiplante: réorganisation logique des fonctions.
Avec un peu plus de recul, on peut désormais identifier plus clairement les fonctions
communes et leurs domaines.

Fonctions de filtrage d'input:
buildTagsAST // parse les ET/OU utilisés pour les tags
array_flatten // helper
unsetIfInvalid // helper
requestFilterParams // filtre les paramètres communs courants

Fonctions SQL:
sqlAddIfNullPourConcat // helper (pour rappel CONCAT("a", NULL) = NULL
sqlFieldsToAlias // d'un format de tableau à SELECT de champs aliasés SQL
addAuteursConstraint // requête sur auteur d'obs/image
sqlAddConstraint // les clauses WHERE communes pour les paramètres les plus courants
makeJSONHeader // JSON output simplifiée par rapport aux classes de bibliotheque/
 
1489 3854 d 0 h raphael /trunk/services/modules/0.1/observations/ identiplante: suppression d'une limite stupide sur le masque.nn  
1488 3854 d 0 h raphael /trunk/services/modules/0.1/observations/ identiplante: support des tags combinés par opérateur logique (ET/AND, OU/OR)  
1487 3854 d 1 h raphael /trunk/services/modules/0.1/observations/ identiplante: fixe la recherche sous la forme "nom prénom" dans le masque général (oubli de parenthèses)  
1481 3858 d 0 h mathias /trunk/services/modules/0.1/observations/ Correction bug des href.suivant / precedent mal formés, dans le service Observations - à tester (2) (un test était foireux)  
1480 3858 d 0 h mathias /trunk/services/ Correction bug des href.suivant / precedent mal formés, dans le service Observations - à tester  
1452 3883 d 1 h raphael /trunk/services/ identiplante: config cleanup  
1451 3883 d 1 h raphael /trunk/services/modules/0.1/ identiplante: substitution de l'ancien backend par le backend réécrit  
1444 3887 d 22 h raphael /trunk/ identiplante: ajout d'un onglet présentant les "observations validées par le processus collaboratif".
- Un champ proposition_retenue, au rôle éponyme, est (enfin) créé.
- Un script de migration tente vaille que vaille de déterminer à postériori
les propositions retenues.
$ make o_maj2 celdb=tb_cel_test deldb=tb_del_test
$ mysql < maj2.comp.sql
- un onglet correspondant et créé dans l'UI d'IP et le support du backend implémenté
- enfin, lorsqu'une proposition est "retenue" par l'auteur, le champ
proposition_retenue est mis à jour comme il se doit en cas de succès de
la requête de mise à jour de l'observation dans CEL (via service:cel:CelValidationObservation).
 
1442 3888 d 21 h raphael /trunk/services/modules/0.1/observations/ observations: recherche insensible à la casse pour les noms/prénoms et pour les tags  
1429 3892 d 22 h raphael /trunk/services/modules/0.1/observations/ misc: commentaire de clarification de la fonction de traitement des paramètres basée dans IdentiPlantes/ListeObservations2  
1421 3893 d 18 h raphael /trunk/services/modules/0.1/observations/ observations2: gestion des paramètres par défaut  
1417 3894 d 18 h raphael /trunk/services/modules/0.1/observations/ observations2: "tri" et "ordre" doivent faire partie du masque généré par l'en-tête JSON  
1416 3894 d 18 h raphael /trunk/services/modules/0.1/observations/ observations2: quelques changements mineurs:
- renommage du préfixe pour la vue. En effet "dob" était l'ancien
préfix pour del_observation (vue désormais inutilisée), d'autre part
le pattern "*dob*" match "idobs" ce qui n'est pas pratique. D'autre part
"di" porte à confusion avec l'actuelle vue `del_image`.
Le nom actuel étant v_del_image, et tout en sachant que ce nom ne sera,
probablement pas élu, nous choisissons `vdi`.

- sqlAddMasqueConstraint() est désormais dissociée de sqlAddConstraint()
afin de pouvoir réutiliser cette dernière tout en modifiant le comportement
de sqlAddMasqueConstraint() (cf PictoFlora).
 
1398 3896 d 18 h raphael /trunk/services/modules/0.1/observations/ images: amélioration de la futur fonction de reformatage.
Nous utilisons une référence partagée entre deux tableaux dont l'un est
le futur JSON indexé par couple (idobs,idimage) et le second seulement par
id_image ce qui permet, dans la suite du traitement, d'associer aisément les
votes à ce dernier en ne se basant que sur id_image tout en mettant à jour le
premier simultanément.
 
1397 3896 d 21 h raphael /trunk/services/modules/0.1/observations/ observations: revert r1384
Le CAST(CHAR) implique `Using join buffer (flat, BNL join)`
Cela tue MySQL.
 
1396 3896 d 21 h raphael /trunk/services/modules/0.1/observations/ observations: ajout d'une fonction de reformatage utilisée (bientôt) par ListeImages.php  
1395 3896 d 23 h aurelien /trunk/services/modules/0.1/observations/ bugfix: prise en compte plus large du référentiel plutot qu'une égalité stricte  
1394 3896 d 23 h aurelien /trunk/services/modules/0.1/observations/ Correction de la gestion du paramètre référentiel  
1391 3897 d 5 h raphael /trunk/services/modules/0.1/observations/ observations: bugfix sur masque.referentiel  
1389 3899 d 18 h raphael /trunk/services/modules/0.1/observations/ observation: quelques factorisations et modifications (passages des paramètres) afin de faciliter la réutilisation  
1388 3899 d 19 h raphael /trunk/services/modules/0.1/observations/ observations2: bugfix lors de l'utilisation du type "adeterminer"  
1386 3899 d 19 h raphael /trunk/services/modules/0.1/observations/ observations2: correction de l'affichage des commentaires et de leur nombre
pour la recherche.
 
1384 3899 d 21 h raphael /trunk/services/modules/0.1/observations/ observations2: tentative de fixer le bug de la jointure cel_obs/annuaire.
cel_obs.ce_utilisateur étant jusqu'ici automatiquement CASTé en INT,
INT(51af359) == 51 dans l'annuaire ce qui entraînait de mauvais retours pour
les valeurs des utilisateurs. En faisant le choix inverse de CASTer les U_ID de
l'annuaire (del_utilisateur) en CHAR, nous gagnons en fiabilité, mais perdons
significativement en performance.
 
1383 3900 d 18 h raphael /trunk/services/modules/0.1/observations/ observations2: changement des paramètres pour le reformatage d'après url_images  
1380 3900 d 20 h raphael /trunk/ observations: utilisation de v_del_image pour la nouvelle version du WS
+ correction du script d'upgrade en MySQL < 5.5 + commentaire sur chargerLiaisons()
 
1379 3900 d 21 h raphael /trunk/ observations: quelques corrections sur les dates pour la version améliorée du WS
et sur les code et données renvoyées en cas de problème sur la/les observation(s) demandées.
 
1375 3901 d 18 h raphael /trunk/ observations: réécriture d'une version alternative du webservice "observations".

Se veut:
* plus performante (optimisation de la récupération de données (images,
nombre de commentaires, ...)
* plus extensible et réutilisable (paramètres et fonctions, exemple
de la génération du SQL ...)
* moins complexe (limitation de la configuration au strict minimum,
peu de fonctions à usage unique)
* plus sûre (gestion des paramètres, sanitization)

Réutilisation du code de ListeObservations pour l'obtention des
votes et commentaires.

Les deux tests principaux sont OK (petite exception liée à de la configuration
sur [images][binaire.href])

Testable moyennant $this->serviceNom = 'liste-observations2';
ligne 156 de services/modules/0.1/Observations.php