Subversion Repositories eFlore/Applications.del

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
1499 3841 d 3 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 3841 d 4 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 3846 d 2 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 3847 d 6 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 3847 d 7 h raphael /trunk/services/modules/0.1/observations/ identiplante: suppression d'une limite stupide sur le masque.nn  
1488 3847 d 7 h raphael /trunk/services/modules/0.1/observations/ identiplante: support des tags combinés par opérateur logique (ET/AND, OU/OR)  
1487 3847 d 8 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 3851 d 7 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 3851 d 7 h mathias /trunk/services/ Correction bug des href.suivant / precedent mal formés, dans le service Observations - à tester  
1452 3876 d 9 h raphael /trunk/services/ identiplante: config cleanup  
1451 3876 d 9 h raphael /trunk/services/modules/0.1/ identiplante: substitution de l'ancien backend par le backend réécrit  
1444 3881 d 6 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 3882 d 5 h raphael /trunk/services/modules/0.1/observations/ observations: recherche insensible à la casse pour les noms/prénoms et pour les tags  
1435 3883 d 7 h aurelien /trunk/services/modules/0.1/observations/ Ajout du référentiel des propositions dans ce qui est renvoyé par le service observation  
1429 3886 d 6 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 3887 d 1 h raphael /trunk/services/modules/0.1/observations/ observations2: gestion des paramètres par défaut  
1417 3888 d 1 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 3888 d 2 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).
 
1413 3888 d 7 h aurelien /trunk/services/ Ajout de variable de configurations pour prise en compte des mots clés des protocoles et du référentiel pour les images  
1398 3890 d 2 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 3890 d 4 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 3890 d 4 h raphael /trunk/services/modules/0.1/observations/ observations: ajout d'une fonction de reformatage utilisée (bientôt) par ListeImages.php  
1395 3890 d 6 h aurelien /trunk/services/modules/0.1/observations/ bugfix: prise en compte plus large du référentiel plutot qu'une égalité stricte  
1394 3890 d 6 h aurelien /trunk/services/modules/0.1/observations/ Correction de la gestion du paramètre référentiel  
1391 3890 d 12 h raphael /trunk/services/modules/0.1/observations/ observations: bugfix sur masque.referentiel  
1389 3893 d 1 h raphael /trunk/services/modules/0.1/observations/ observation: quelques factorisations et modifications (passages des paramètres) afin de faciliter la réutilisation  
1388 3893 d 3 h raphael /trunk/services/modules/0.1/observations/ observations2: bugfix lors de l'utilisation du type "adeterminer"  
1386 3893 d 3 h raphael /trunk/services/modules/0.1/observations/ observations2: correction de l'affichage des commentaires et de leur nombre
pour la recherche.
 
1385 3893 d 4 h raphael /trunk/services/modules/0.1/observations/ observation: réécriture du webservice: clarification du code et performances.  
1384 3893 d 5 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 3894 d 1 h raphael /trunk/services/modules/0.1/observations/ observations2: changement des paramètres pour le reformatage d'après url_images  
1381 3894 d 3 h raphael /trunk/services/ config: pattern de location d'image clairement configurable, plutôt qu'à moitié + simplification  
1380 3894 d 4 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 3894 d 4 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 3895 d 1 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
 
1373 3895 d 3 h raphael /trunk/services/modules/0.1/observations/ observations: Corrections corrigeant des requêtes SQL erronées dans certains cas,
Exemple: del/services/0.1/observations?navigation.depart=0&navigation.limite=12&masque=G&masque.type=endiscussion

!! Nécessite le passage de nom_referentiel dans les vues del_observation et del_image !!
 
1369 3895 d 5 h aurelien /trunk/services/modules/0.1/observations/ bug: Correction d'une variable statique mal appelée  
1364 3896 d 7 h aurelien /trunk/services/ Ajout de la prise en compte du référentiel dans le masque et les paramètres renvoyés  
1363 3901 d 11 h raphael /trunk/services/modules/0.1/observations/ revert r1355: chargerClauseWhere() ne nous permets pas d'effectuer réellement une optimisation de cette manière  
1361 3903 d 1 h raphael /trunk/services/ bugfix [test]: le retour JSON pour une observation non-existante est:
1) mal-formatté (retour d'une observation dont les valeurs sont NULL plutôt que NULL tout court)
2) provoque des notices en tentant de chercher des méta-données additionnelles sans vérifier
l'existence de l'observation en premier lieu.