Subversion Repositories eFlore/Applications.del

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
1666 3765 d 13 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 3782 d 15 h mathias /trunk/services/modules/0.1/observations/ Nettoyage indentation  
1528 3841 d 17 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 3866 d 15 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 3866 d 16 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 3871 d 13 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 3872 d 18 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 3872 d 19 h raphael /trunk/services/modules/0.1/observations/ identiplante: suppression d'une limite stupide sur le masque.nn  
1488 3872 d 19 h raphael /trunk/services/modules/0.1/observations/ identiplante: support des tags combinés par opérateur logique (ET/AND, OU/OR)  
1487 3872 d 20 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 3876 d 19 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 3876 d 19 h mathias /trunk/services/ Correction bug des href.suivant / precedent mal formés, dans le service Observations - à tester  
1452 3901 d 20 h raphael /trunk/services/ identiplante: config cleanup  
1451 3901 d 20 h raphael /trunk/services/modules/0.1/ identiplante: substitution de l'ancien backend par le backend réécrit  
1444 3906 d 17 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 3907 d 16 h raphael /trunk/services/modules/0.1/observations/ observations: recherche insensible à la casse pour les noms/prénoms et pour les tags  
1429 3911 d 17 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 3912 d 13 h raphael /trunk/services/modules/0.1/observations/ observations2: gestion des paramètres par défaut  
1417 3913 d 13 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 3913 d 13 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 3915 d 13 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 3915 d 16 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 3915 d 16 h raphael /trunk/services/modules/0.1/observations/ observations: ajout d'une fonction de reformatage utilisée (bientôt) par ListeImages.php  
1395 3915 d 18 h aurelien /trunk/services/modules/0.1/observations/ bugfix: prise en compte plus large du référentiel plutot qu'une égalité stricte  
1394 3915 d 18 h aurelien /trunk/services/modules/0.1/observations/ Correction de la gestion du paramètre référentiel  
1391 3916 d 0 h raphael /trunk/services/modules/0.1/observations/ observations: bugfix sur masque.referentiel  
1389 3918 d 13 h raphael /trunk/services/modules/0.1/observations/ observation: quelques factorisations et modifications (passages des paramètres) afin de faciliter la réutilisation  
1388 3918 d 14 h raphael /trunk/services/modules/0.1/observations/ observations2: bugfix lors de l'utilisation du type "adeterminer"  
1386 3918 d 14 h raphael /trunk/services/modules/0.1/observations/ observations2: correction de l'affichage des commentaires et de leur nombre
pour la recherche.
 
1384 3918 d 16 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 3919 d 13 h raphael /trunk/services/modules/0.1/observations/ observations2: changement des paramètres pour le reformatage d'après url_images  
1380 3919 d 15 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 3919 d 16 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 3920 d 12 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