Subversion Repositories eFlore/Applications.cel

Rev

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

Filtering Options

Rev Age Author Path Log message Diff Changes
1651 4015 d 17 h raphael /trunk/jrest/services/ import/bugfix: n'écrase plus le nom d'espèce saisi (nom_sel)  
/trunk/jrest/services/ImportXLS.php
1650 4015 d 17 h raphael /trunk/jrest/services/ import: correction/finalisation de l'association des images mentionnées dans le fichier importé  
/trunk/jrest/services/ImportXLS.php
1649 4015 d 19 h raphael /trunk/jrest/services/ import: changements mineurs au niveau de l'échappement et de l'initialisation des PDO::Statements  
/trunk/jrest/services/ImportXLS.php
1648 4018 d 13 h raphael /trunk/jrest/services/ import: implémentation des insertions sous forme de PDOStatement multiples.
Reste le problème du typage des données (bool, float) qui n'est pas
encore résolu (nécessiterait des named-placeholders + PDO::bindParam())
 
/trunk/jrest/services/ImportXLS.php
1647 4019 d 12 h aurelien /trunk/jrest/services/ AJout d'une fonction permettant d'obtenir l'identité de l'utilisateur connecté  
/trunk/jrest/services/User.php
1646 4019 d 13 h raphael /trunk/jrest/services/ import: changement nom_d_ensemble_vers_liste_de_colonnes() => nomEnsembleVersListeColonnes() suite à r1644  
/trunk/jrest/services/ImportXLS.php
1645 4020 d 12 h aurelien /trunk/jrest/services/ Ajout des paramètres précédemment supportés par le service celWidgetExport  
/trunk/jrest/services/ExportXLS.php
1644 4020 d 12 h aurelien /trunk/jrest/ Refactorisation de la classe d'export + harmonisation linguistique  
/trunk/jrest/lib/RechercheObservation.php
/trunk/jrest/services/ExportXLS.php
1643 4020 d 14 h raphael /trunk/jrest/ config: ajout du paramètre "url_service_nom_attribution" dans la configuration par défaut  
/trunk/jrest/jrest.ini.php.defaut
1642 4020 d 17 h raphael /trunk/jrest/services/ import/export:
Import:
* gestion des images
* détection de la localisation, repris et amélioré depuis InventoryImportExcel.php
* gestion des valeurs NULL inserées en BDD
* gestion des retours d'erreurs/avertissements

Export:
* correction du status "importable" et "extra" des champs + coloration des entêtes
* support du paramètre "format" (xls, xlsx, csv)

L'import/export commence à être fonctionnel, exemple:
$ POST http://cel/jrest/ExportXLS/22506<<<"format=csv&range=342212"; | \
curl -F "upload=@-" -F utilisateur=22506 "http://cel/jrest/ImportXLS";
# 1 observation importée
 
/trunk/jrest/services/ExportXLS.php
/trunk/jrest/services/ImportXLS.php
1641 4021 d 14 h aurelien /trunk/src/org/tela_botanica/client/ Suppression de la liste déroulate des modes modification et creation pour la remplacer par 4 boutons (valider, modifier, supprimer et réinitialiser)  
/trunk/src/org/tela_botanica/client/observation/ObservationMediateur.java
/trunk/src/org/tela_botanica/client/vues/observation/FormulaireSaisieObservationVue.java
/trunk/src/org/tela_botanica/client/vues/observation/ListeObservationVue.java
1640 4022 d 11 h raphael /trunk/jrest/services/ import/xls: diverses améliorations significatives
* lecture de fichier XLS par chunks (par 30 lignes pour l'instant)
* introduction et réutilisation du code d'Aurélien de détection de l'espèce saisie
* meilleur traitement des dates
* support préliminaire de l'association aux images importées, tout en conservant
la possibilité d'INSERT multiples
* quelques fonctions, inutil(isé?)es relatives aux lon/lat et BBox de référentiels
 
/trunk/jrest/services/ImportXLS.php
1639 4022 d 11 h raphael /trunk/jrest/services/ export/xls: support préliminaire de l'export des nom de fichiers des images,
documentation du code existant et améliorations marginales
 
/trunk/jrest/services/ExportXLS.php
1638 4022 d 19 h raphael /trunk/jrest/services/ import/export xls: francisation du code (sorry)  
/trunk/jrest/services/ExportXLS.php
/trunk/jrest/services/ImportXLS.php
1637 4022 d 20 h raphael /trunk/jrest/lib/ svn/cel: ajout d'une propriété svn:externals dans lib/ pour PHPExcel (github svn wrapper)  
/trunk/jrest/lib
1636 4025 d 11 h raphael /trunk/jrest/services/ import/xls: Réécriture d'une version [initiale] d'un web-service d'import
de fichier XLS.
* basé sur PHPExcel
* mutualise les informations de colonnes (à partir de ExportXLS)

Ce afin d'assurer pérennité, consistance (et autant que possible flexibilité)
au système d'import/export XLS.
Les champs importés/exportés et leurs usages pouvant être amenés à évoluer,
l'infrastructure tente d'éviter tout risque d'incohérence dans le reconnaissance des
champs tout en permettant des traitements particuliers.
 
/trunk/jrest/services/ImportXLS.php
1635 4025 d 11 h raphael /trunk/jrest/services/ export/xls: ajout du paramètre de colonne "importable", définissant si une la valeur de
cette colonne sera intéressante lors de l'import ou si, a contrario, cette valeur
est générée automatiquement et peut être ignorée à l'import.
 
/trunk/jrest/services/ExportXLS.php
1634 4025 d 14 h raphael /trunk/jrest/ export/xls: observation, ajoute la possibilité d'effectuer des requêtes arbitraires
à travers le constructeur de requêtes SQL sans nuire pour autant à la sécurité générale
de l'application.

+ oublie d'un require(PHPExcel)
+ ajout de debug temporaire
+ sécurisation du calcul du range() pour éviter des débordements via des valeurs nuisibles
 
/trunk/jrest/lib/RechercheObservation.php
/trunk/jrest/services/ExportXLS.php
1633 4025 d 14 h raphael /trunk/jrest/services/ export/xls: Ajout de 3 approches de la récupération du nom commun.
* getNomCommun() fait appel au web-service dédié, ce qui est élégant mais
tout bonnement impraticable de part la latence induite.
* getNomCommun_v2() et getNomCommun_v3() sont deux tentatives de bootstrapper
le framework et d'utiliser les web-service sout la forme d'appels de fonction.
Seule getNomCommun_v3() est véritablement fonctionnelle, mais dépend d'adaptations
ailleurs, dont la première faire dépendre l'ensemble de PHP 5.3

1) patch pour Bdd.php:
ajout d'un `namespace JRest;`

2) patch pour services/modules/0.1/Projets.php
passage de private à public pour:
- initialiserRessourcesEtParametres()
- traiterRessources()
Afin de permettre les appels directs.

Ce code à néanmoins une valeur éducative certaine.

Approches alternatives/complémentaires possibles (liste non-exhaustive):
* proxy-cache sur les web-service
* cache fichier + rewriteRules sur les ressources de certaines URL de certains web-service
* ajout des colonnes dans obs_cel (! redondance de données)
= ajout du nom commun au moment de l'insertion.
 
/trunk/jrest/services/ExportXLS.php
1632 4025 d 14 h raphael /trunk/jrest/services/ export/xls: diverses améliorations, notamment la définition des colonnes  
/trunk/jrest/services/ExportXLS.php
1631 4027 d 18 h raphael /trunk/jrest/ Cel/API: RechercheObservation->rechercherObservations() ne n'exécute plus d'emblée
la requête générée et par conséquent ne retourne pas ses résultats,
à l'exception de l'objet ($this) dont l'attribut public $requete_selection_observations
est initialisé.

La méthode get(), elle, exécute la requête et retourne les données résultantes.
Et puisque rechercherObservations() retourne l'objet, il est donc possible d'enchaîner les deux
appels en utilisant désormais la syntaxe RechercheObservation->rechercherObservations()->get().

Cela permet de découpler la génération de la requête de son exécution et donc possiblement
de manipuler la requête en plusieurs temps.
Cela pourrait s'avérer utile dans les cas où le script traitant les données souhaiterait s'architecturer
sous la forme d'un flux au fil de la récupération des enregistrements en BDD plutôt que de
compter sur l'exécution intégrale de la requête et d'attendre le retour exhaustif des données.
 
/trunk/jrest/lib/RechercheObservation.php
/trunk/jrest/services/CelObs.php
/trunk/jrest/services/CelWidgetExport.php
/trunk/jrest/services/Inventory.php
/trunk/jrest/services/InventoryExport.php
/trunk/jrest/services/InventoryObservationList.php
1630 4028 d 11 h raphael /trunk/jrest/services/ cel/export XLS: Écriture d'une version initiale d'un webservice d'export au format XLS
utilisant la librairie PHPExcel pour la génération
et se voulant claire et aisément extensible.
 
/trunk/jrest/services/ExportXLS.php
1629 4028 d 12 h jpm /trunk/widget/modules/saisie/ Correction ds bugs sur la liste de noms latins qui est mal ordonnée pour Sauvages et contient des doublons pour Florilèges.  
/trunk/widget/modules/saisie/Saisie.php
1628 4028 d 18 h raphael /trunk/ cel/saisie: Refus de la saisie lors de l'ajout ou de la modification d'une entrée
comportant une date "invalide", c'est à dire postérieur à now().
* côté client, le DateField GWT se voit donc appliqué une contrainte de date maximum (setMaxValue())
* côté backend, une 400 (Bad Request) est renvoyée
 
/trunk/jrest/JRest.php
/trunk/jrest/services/Inventory.php
/trunk/src/org/tela_botanica/client/modeles/dao/ObservationAsynchroneDAO.java
/trunk/src/org/tela_botanica/client/vues/observation/FormulaireSaisieObservationVue.java
1627 4029 d 12 h aurelien /trunk/src/org/tela_botanica/client/vues/ Correction de la liste autcompletion + remise à zéro du taxon lors d'un changement de référentiel  
/trunk/src/org/tela_botanica/client/vues/ListeUtilisateurAdminVue.java
/trunk/src/org/tela_botanica/client/vues/observation/FormulaireSaisieObservationVue.java
1626 4032 d 14 h aurelien /trunk/widget/modules/export/squelettes/ Modification du widget pour que celui ci calcule d'abord le nombre de fichier à télécharger et les propose un par un plutot qu'un gros fichier qui plante  
/trunk/widget/modules/export/squelettes/css/export.css
/trunk/widget/modules/export/squelettes/export.tpl.html
/trunk/widget/modules/export/squelettes/js/export.js
1625 4032 d 14 h aurelien /trunk/jrest/services/ Ajout d'un mode renvoyant une liste de fichiers à télécharger  
/trunk/jrest/services/CelWidgetExport.php
1624 4032 d 14 h aurelien /trunk/jrest/lib/OLE/PPS/ Ajout d'un @ pour empecher l'export excel de planter à cause d'une erreur PEAR (voir bug http://pear.php.net/bugs/bug.php?id=14391&edit=3)  
/trunk/jrest/lib/OLE/PPS/File.php
/trunk/jrest/lib/OLE/PPS/Root.php
1623 4032 d 18 h aurelien /trunk/widget/modules/export/ Suppression de paramètres de config inutiles + ajout d'information dans le template + correction d'un bug sur l'autocompletion  
/trunk/widget/modules/export/config.defaut.ini
/trunk/widget/modules/export/config.ini
/trunk/widget/modules/export/squelettes/export.tpl.html
/trunk/widget/modules/export/squelettes/js/export.js
1622 4033 d 12 h aurelien /trunk/jrest/services/ AJout du référentiel dans les données renvoyées par les widgets  
/trunk/jrest/services/CelSyndicationImage.php
/trunk/jrest/services/CelSyndicationObservation.php
/trunk/jrest/services/CelWidgetMap.php
/trunk/jrest/services/CelWidgetMapPoint.php
1621 4033 d 12 h raphael /trunk/jrest/lib/ExcelReader/ cel/import: fix d'un bug de la librairie Excel_reader qui hardcode un encoding erroné.
(Les tableurs enregistrés par LibreOffice comportent des caractères en latin9)
 
/trunk/jrest/lib/ExcelReader/excel_reader2.php
1620 4033 d 15 h aurelien /trunk/widget/modules/saisie/squelettes/defaut/js/ Ajout d'un zoom sur l'afrique du nord si sélection du référentiel isfan  
/trunk/widget/modules/saisie/squelettes/defaut/js/defaut.js
1619 4033 d 15 h aurelien /trunk/jrest/ Suppression d'un nom de référentiel en dur pour le remplacer par un %s remplacé par sprintf  
/trunk/jrest/jrest.ini.php.defaut
1618 4033 d 15 h aurelien /trunk/jrest/lib/ Ajout d'une fonction permettant de supprimer le numéro de version d'un référentiel pour n'avoir que son code  
/trunk/jrest/lib/Cel.php
1617 4033 d 15 h aurelien /trunk/jrest/services/ Ajout de noms de colonnes manquantes qui décalaient les valeurs de l'export  
/trunk/jrest/services/CelWidgetExport.php
1616 4033 d 16 h raphael /trunk/jrest/services/ export xls: utilisation de iconv() pour la translitération des caractères accentués.  
/trunk/jrest/services/InventoryImportExcel.php
1615 4035 d 15 h raphael /trunk/jrest/ import: encodage utf-8 désormais postulé pour les fichiers Excel
en entrée utilisés pour l'import.
 
/trunk/jrest/lib/ExcelReader.php
/trunk/jrest/services/InventoryImportExcel.php
1614 4035 d 19 h jpm /trunk/widget/modules/saisie/squelettes/florileges/ Amélioration de la gestion des noms spéciaux.  
/trunk/widget/modules/saisie/squelettes/florileges/florileges.tpl.html
/trunk/widget/modules/saisie/squelettes/florileges/js/florileges.js
1613 4036 d 11 h jpm /trunk/widget/modules/saisie/ Amélioration de la gestion des noms à afficher pour Florilèges.  
/trunk/widget/modules/saisie/Saisie.php
/trunk/widget/modules/saisie/configurations/florileges_taxons.tsv
/trunk/widget/modules/saisie/squelettes/florileges/css/florileges.css
/trunk/widget/modules/saisie/squelettes/florileges/florileges.tpl.html
/trunk/widget/modules/saisie/squelettes/florileges/js/florileges.js
1612 4036 d 13 h raphael /trunk/jrest/services/ export: encodage utf-8 pour le widget aussi (cf r1609)  
/trunk/jrest/services/CelWidgetExport.php