URL: https://linuxfr.org/users/epeios/journaux/epeios-organizer-l-interface-web Title: 'Epeios organizer' : l'interface Web Authors: Claude SIMON Date: 2016年07月24日T16:25:36+02:00 License: CC By-SA Tags: html5, epeios, orgnzq, c++, xsl et xml Score: 5 # Introduction Ce journal fait suite à [celui-ci](/users/epeios/journaux/epeios-organizer-le-commencement). Conformément à ce qui y était annoncé, l'application en elle-même n'a pas évolué ; elle est toujours aussi rudimentaire (à l'image de ce journal). Seule l'interface *Web* a été développée, en s'appuyant sur ce qui a été développé pour la version native. # Liens L'ensemble des sources du logiciel (compilables sous *GNU/Linux*), et les binaires correspondants pour *Windows* (*XP SP3* et supérieurs), peuvent être téléchargés à l'adresse [http://q37.info/download/computing/apps/orgnzq/](http://q37.info/download/computing/apps/orgnzq/). Les sources peuvent aussi être consultés directement à l'adresse : - [http://hg.savannah.gnu.org/hgweb/epeios/file/tip/apps/orgnzq](http://hg.savannah.gnu.org/hgweb/epeios/file/tip/apps/orgnzq) pour l'application proprement dite, - [http://hg.savannah.gnu.org/hgweb/epeios/file/tip/tools/xdhcefq](http://hg.savannah.gnu.org/hgweb/epeios/file/tip/tools/xdhcefq) pour l’utilitaire prenant en charge la technologie *XDHTML* en tant qu'application native, - [http://hg.savannah.gnu.org/hgweb/epeios/file/tip/tools/xdhbrwq](http://hg.savannah.gnu.org/hgweb/epeios/file/tip/tools/xdhbrwq) pour l’utilitaire prenant en charge la technologie *XDHTML* en tant qu'application *Web*, - [http://hg.savannah.gnu.org/hgweb/epeios/file/tip/stable](http://hg.savannah.gnu.org/hgweb/epeios/file/tip/stable) pour le *framework*. # Interface *Web* et native Comme annoncé, c'est un seul et même code, *C++* qui plus est, qui est utilisé, et pour l'interface native, et pour l'interface *Web*. Le cœur de l'application est constitué d'une bibliothèque dynamique qui est prise en charge par l'utilitaire *xdhcefq* pour l'interface native, et l'utilitaire *xdhbrwq* pour l'interface *Web* (ce dernier étant, de ce fait, une sorte de *CGI*). Ces deux utilitaires ne sont pas propres à cette application, mais sont communs à toute application basée sur la technologie *XDHTML*. L'interface *WEB* devrait fonctionner avec la plupart des navigateurs *Web* graphique modernes, à la notable exception de *Microsoft* *Edge* ; peut-être un bug de ce dernier, mais je n'ai pas encore eu le temps d'approfondir. # GNU/Linux ## Compilation Le *packaging* a été amélioré pour *GNU/Linux*. En supposant que *g++* et *make* soient installés : - télécharger et décompresser les sources de l'application situés à : [http://q37.info/download/computing/apps/orgnzq/](http://q37.info/download/computing/apps/orgnzq/), - télécharger et décompresser la version de *CEF* de la branche `2704` correspondant à votre architecture (*Linux 32bit* ou *Linux 64bit*) située à [http://cefbuilds.com/](http://cefbuilds.com/#branch_2704), - créer une variable d'environnement nommée `CEF` pointant sur la racine du *package* de *CEF* (`export CEF=/cef_binary_3.2704...`), - se placer à la racine du *package* de l’application et lancer la commande `make`. ## Lancement de l'interface native Pour lancer l'interface native, se placer dans `frontend` et lancer `xdhcefq/xdhcefq -m=XDHTML/orgnzqxdh`. ## Lancement du *backend* comme *daemon* Pour lancer le *backend* en mode *daemon*, se placer dans `processing`, et lancer `dmnzq/tool/dmnzq backend/dmnzq.xprj`. Vous pouvez alors, dans l'interface native, sélectionner `Moteur de traitement local` pour se connecter à ce *backend*. ## Lancement de l'interface *Web* Dans le répertoire `frontend/xdhbrwq`, il y a un répertoire `htdocs` dont il faut placer le contenu à un endroit qui soit accessible à votre serveur *httpd*. Pour lancer la *CGI*, se placer dans le répertoire `frontend` et lancer `xdhbrwq/xdhbrwq XDHTML/orgnzqxdh`. Puis ouvrir un navigateur *WEB* et saisir l'adresse correspondant au fichier `orgnzq.html` du répertoire `htdocs` mentionné ci-dessus. Remplir les champs, et **sélectionner `localhost`** à la place de `q37`. # Windows Les binaires fournis sont destinés à *Windows XP SP3* et supérieurs. Prendre à l'adresse [http://q37.info/download/computing/apps/orgnzq/](http://q37.info/download/computing/apps/orgnzq/) et désarchiver le *package* correspondant aux binaires *Windows*. Une fois chargé et désarchivé, suivre les instructions données dans le chapitre *GNU/Linux* (sauf ceux relatifs à la compilation). Selon la version de *Windows*, les `/` (*slash*) devront peut-être être remplacés par des `\` (*backslash*). # Autres systèmes d'exploitation Pour les systèmes d'exploitation *POSIX* pour lesquels il n'y a pas de version de *CEF*, il n'est possible que de lancer le *backend* et la *CGI*. Suivre les instructions concernant *GNU/Linux*, en ignorant tout ce qui concerne *CEF*. La compilation de l'utilitaire *xdhcefq*, qui intervient en dernier, échouera naturellement, mais tout le reste devrait être compilé et pouvoir être lancé en suivant les instructions dans la section consacrée à *GNU/Linux*. Pour la version *OS X*, c'est toujours aussi compliqué, mais je travaille à améliorer la procédure. En attendant, suivre les indications du précédent journal. # Démonstration en ligne Il y a une démonstration en ligne de la version *Web* accessible à [http://q37.info/xdh/orgnzq.html](http://q37.info/xdh/orgnzq.html). Par ailleurs, vous pouvez vous connecter directement sur le *backend* utilisé par cette version *Web* à partir de l'interface native en sélectionnant `Moteur de traitement sur q37.info` à la première page. La démonstration tourne sur un serveur placé derrière une *box* *ADSL*. De ce fait, l'application peut manquer de réactivité. # Et ensuite ? Avant d'ajouter de nouvelles fonctionnalités, et afin de tester plus avant le système de *plugins*, de nouveaux types de champs, ainsi que de nouvelles possibilités de stockage (dans des fichiers ; le système actuel ne stockant que dans la *RAM* étant d'un intérêt limité) vont être développés. Par ailleurs, quelques tests réalisés avec une [brique internet](https://labriqueinter.net/) que l'on m'a prêtée montre que la *CGI* et le *backend* tournent parfaitement sur ce genre de matériel. J'envisage donc de faire tourner la démo sur un matériel similaire, mais un peu plus costaud, pour que la compilation soit plus rapide (et ainsi éviter d'avoir à recourir à la compilation croisée). Et, puisque cela fonctionne sans problème sur une architecture *ARM* 32 bits, autant se frotter à une architecture *ARM* 64 bits, comme celle de l'[ODROID-C2](http://www.hardkernel.com/main/products/prdt_info.php?g_code=G145457216438), ou du futur [Banana Pi BPI-M64](http://www.banana-pi.org/m64.html)...

AltStyle によって変換されたページ (->オリジナル) /