Code Monkey home page Code Monkey logo

isogeo-2-office's Introduction

isogeo-2-office's People

Contributors

guts avatar simonsampere avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

isogeo-2-office's Issues

Refonte interface graphique en Qt

Objectif

Utiliser la même bibliothèque graphique que celle de QGIS : Qt.

Avantages

  • mutualisation partielle du travail d’interface graphique
  • le packaging actuel (pyinstaller) fonctionne aussi
  • bcp d’exemples disponibles en ligne
  • cohérence entre produits (plugin Isogeo pour QGIS)
  • logiciel graphique pour création de l’interface graphique (Qt Designer)

Inconvénients

  • repartir 'from scratch'
  • packaging en exécutable à vérifier

Étapes

  • concevoir la structure de l'interface via Qt Designer (fichiers *.ui) @vblanlot
  • finaliser l'interface via Qt Designer et directement via PyQt5 @Guts
  • générer l'interface en Python
  • "brancher" les éléments d'interface aux fonctions Python

Définir le texte pour les utilisateurs ne disposant pas de clés d'authentification

cf #32 (comment)

Texte actuel

en anglais

  • Completely free to access generic Open Data
  • Completely free to work with 20 of your geographic data and services (Isogeo account required)
  • Ask for our annual plans to work with your whole geographic data and services !

en français

  • Gratuit pour accéder à un ensemble générique de données ouvertes
  • Gratuit pour accéder jusqu'à 20 données et services géographiques à documenter soi-même sur Isogeo
  • Des abonnements pour accéder à l'ensemble des données et services de son organisme... et d'autres aussi !

Question

Ce texte ne semble pas/plus très adapté, non ?

Utiliser la version 3.2+ du SDK Python

Le SDK Python a été refondu (refactored), il s'agit d'utiliser la dernière version dans Isogeo to Office pour profiter des dernières nouveautés.

La fenêtre windows de sélection du client secret persiste - version 2.0.0-beta2 Windows-10-10.0.17134-SP0

Pour reproduire :

  1. Ouvrir l'application
  2. Aller dans le menu "Paramétres"
  3. Changer les paramètres d'authentification
  4. Importer le fichier client_secret.json
  5. L'explorateur Windows s'ouvre sur votre dossier "Téléchargement" mais aucun fichier ne s'affiche
  6. Dans la liste des formats de fichiers recherchés sélectionner "JSON Files" au lieu de "Standard Credentials Files"
  7. Le fichier s'affiche
  8. Selectionner le fichier
  9. Valider
  10. La fenêtre Windows se ferme puis se ré-ouvre
  11. Refermer la fenêtre, enfin vous pouvez sauvegarder vos nouveaux paramètres d'authentification

Ajouter des filtres pré-export

Description fonctionnelle

Au lancement de l’application, une liste déroulante est chargée pour permettre à l’utilisateur de choisir une valeur de filtre (par exemple un mot-clé).

Limitation : contrairement aux possibilités du moteur de recherche de l’API Isogeo, il ne serait pas possible de choisir plusieurs valeurs pour le même type de filtre.

Résultat attendu

(non contractuel)

image

Modularize threads

Threads are stored in an unique file and it's hard to maintain. Let's split different threads in separated files and make threads a module.

La réinitialisation des paramètres ne fonctionne pas

Pour reproduire :

  1. Ouvrir l'application
  2. Aller dans le menu "Paramètres"
  3. Modifier vos préférences (dossier de destination, préfixe, etc.)
  4. Réinitialiser les paramètres
  5. Une fenêtre s'ouvre, cliquer sur OK
  6. L'application se ferme
  7. Ouvrir l'application
  8. Vos préférences ne sont pas réinitialisées

L'application se ferme si un partage n'a pas OpenCatalog également activé

Reproduire

  1. Créer une nouvelle application Isogeo2office dans Manage
  2. Associer l'appli à un GT
  3. Exporter le ficher json de connexion
  4. Ajouter un partage depuis le GT vers l'appli créée en 1. sans ajouter OpenCatalog
  5. Lancer l'application isogeo2office.exe
  6. Changer les paramètres de connexion à partir du json créé en 3.
  7. Le fichier Json est bien chargé mais lorsqu'on clique sur Enregistrer, Isogeo2Office se ferme sans rien dire.

Si on ajoute OpenCatalog au partage, en 4. alors tout se passe bien.

Proposition

Il serait donc interessant qu'un message s'affiche à l'étape 7. prévenant qu'il faut ajouter OpenCatalog au partage pour qu'isogeo2office fonctionne correctement (même si c'est écrit dans l'aide en ligne).

Dans le fichier Excel exporté les hyperliens "Editer" et "Consulter" ne fonctionnent pas - version 2.0.0-beta2 Windows-10-10.0.17134-SP0

Pour reproduire

Test réalisé avec l'application isogeo2office - démonstration
Fichier exporté ici :
isogeo2office_.xlsx

  1. Ouvrir l'application
  2. Exporter vos fiches de métadonnées au format Excel
  3. Ouvrir le fichier Excel
  4. Aller dans l'onglet "Vecteur" "Raster" "Services" ou "Ressources"
  5. Aller dans la colonne "Editer"
  6. Cliquer sur le lien "Editer" APP s'ouvre sur le tableau de bord et non sur la fiche editable
  7. Aller dans la colonne "Consulter"
  8. Cliquer sur le lien "Version en ligne"
  9. Excel indique que l'url demandée n'existe pas (404)

Nettoyer les anciens fichiers d'authentification

Constat

Actuellement, les anciens paramètres d'authentification sont conservés, surtout à des fins de test et développement.

Solution

Supprimer régulièrement les fichiers dont la date de dernière modification est antérieure à un mois.

Export Excel - Corriger la hauteur des lignes

Reproduire

  1. Lancer l'application isogeo2office.exe
  2. Exporter une liste de métadonnées en Excel
  3. Ouvrir le fichier Excel exporté

La taille des cellules frise le ridicule. Pour la rime !

Permettre d'exporter les fichiers téléversés sur Isogeo

Description du besoin

Certains utilisateurs souhaitent utiliser Isogeo to Office pour sauvegarder les métadonnées mais aussi les fichiers téléversés sur Isogeo (cf. doc fonctionnelle).

Comportement attendu

Une nouvelle option d'export apparaît dans l'interface. Si elle est sélectionnée, les ressources téléversées sont téléchargées et stockées dans le dossier de sortie.

Intégrer une vignette par métadonnée dans les exports Word

Description fonctionnelle

Dans le modèle d’export, une nouvelle variable fait son apparition : varThumbnail. Elle est configurable comme toute autre variable sauf évidemment tout ce qui concerne la mise en forme texte (gras, italique…) dans le dossier input du dossier d’installation, une matrice de correspondance au format Excel thumbnails.xlsx a 2 colonnes :

  • isogeo_id : identifiant unique de la métadonnée Isogeo
  • img_abs_path : chemin absolu vers l’image à insérer

Lors du traitement, l’application obtient la correspondance et insère l’image en lieu et place de la variable dédiée. Si aucune image ne correspond ou n’est accessible mais que la variable est présente dans le modèle, le logo Isogeo est ajouté.

Le dimensionnement de l’image n’est pas automatique. Charge à l’utilisateur d’adapter l’image ou le cadre dans le modèle.

Résultat
(non contractuel)

image


Réalisation

  • mettre à jour le modèle d'export en Word pour ajouter la balise de vignette
  • créer un modèle de tableau de correspondance et l'inclure dans le packaging
  • ajouter une option permettant de générer le tableau à partir des métadonnées partagées à l'application
  • ajouter une fonction d'import du tableur qui vérifie la structure et le contenu (identifiants, chemins accessibles...)
  • lire le fichier, établir la correspondance avec chaque métadonnée et ajouter un attribut thumbnail_local à la structure du json de la métadonnée
  • dans le module d'export en Word, si cet attribut existe alors on ajoute l'image liée

Remarques :

  • Si aucune image n'est affectée à la métadonnée, le logo Isogeo est appliqué.
  • Pour ne pas inclure d'image dans l'export, modifier le modèle.

Générer un fichier XML ré-importable dans Isogeo

A partir d'un fichier Excel dont la structure est définie, générer un fichier XML ISO19139 pour importer facilement le travail de catalogage.

Fonctionnement simple :

  1. Dans IsogeoToOffice : exporter en tableau Excel (fonctionnalité existante)
  2. Dans Excel : manipuler le tableur et remplir les champs manquants
  3. Dans IsogeoToOffice : charger le fichier Excel rempli et générer les fichiers XML à partir de ce qui est indiqué dans le fichier Excel chargé
  4. Importer les fichiers XML dans Isogeo (cf. import par lot)

Ajouter des tests unitaires

Sur les modules d'export principalement :

  • Word
  • Excel
  • XML

Les utilitaires liés :

  • formatage des objets
  • nettoyage des balises
  • contrôleurs des champs de saisie

Déporter les traitements dans des processus séparés

Dans le cadre de la refonte en Qt (cf. #19 et #20), utiliser les QThreads. Gains attendus :

  • éviter que l'interface ne soit figée durant les traitements,
  • permettre de gérer la barre de progression et la barre de statut sans bloquer le traitement en cours,
  • stabiliser l'application (un plantage d'un traitement n'impacte pas l'application),
  • performances (parallélisation)

Tâches concernées :

  • mise à jour des paramètres de l'application (dans l'onglet des préférences)
  • export en Excel
  • export en Word
  • export en XML

Ressources :

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.