Salut,
nous venons de développer un tel gabarit incluant l'arbre Webdav en Ajax
dispo depuis l'interface du gestionnaire de fichier. ça a été un sacré
boulot, notamment, la fameuse initialisation de la EngineHashMap nous a
obligé à des tours de passe passe adaptés à notre cas d'usage. Bref la
réponse n'est pas simple, je vais analyser vos problème et tenter d'apporter
une réponse synthétique dans la journée.
Quelques limitations néanmoins: je n'ai pas intégré la toolbar mais
seulement l'arbre; en effet, des erreurs javascript vraissemblablement dues
à des URL cassées du fait de l'intégration de l'arbre hors de sa popup
habituelle me laissait présager beaucoup de hacking javascript dans des
fichiers volumineux et non documentés. Néanmoins j'ai par exemple trouvé un
hack pour rétablir le fonctionnement de la popup d'info dans l'arbre.
J'imagine que les autres actions de la toobar auraient requis des hacks
similaires.
Enfin, je pense que ce 'tree view' ci en standard n'est pas une solution
forcément intéressante:
en effet, le nombre de fichiers javascript requis pour l'interface d'édition
de Jahia est proprement hallucinant et par example totallement inadapté à
certains niveaux de connectivité, notamment ceux de tous les pays en voie de
développement. IMHO, Si un tel widget devait être développé, il faudrait
peut être le faire avec un autre framework que Zimbra.
Par example, le genre de Tree View développé par Spinelz et basé sur des
standards simples et répandus tels que Prototype et Scriptaculous me
semblerait beaucoup plus sain, propre et plus véritablement open source:
http://script.spinelz.org/index_en.html (puis demo>tree view)
remarque, dans ce cas il faudrait ajouter un call back AJAX via Prototype
bien senti pour insérer le contenu du répertoire courant du webdav.
Bon, je me repenche sur la question et vous apporte les détails de notre
implémentation le plus vite possible.
Cordialement,
Raphaël Valyi,
Smile.fr
From: Arnaud RUPIN <[EMAIL PROTECTED]>
Reply-To: <[email protected]>
To: [email protected]
Subject: Re: Box "FileManager"
Date: Fri, 05 Jan 2007 10:57:23 +0100
Bonjour
Je vous comprends : cela me semble tellement utile que j'attendais cette
boîte en standard.
Je parle bien de boîte au sens Jahia du terme (box) et non pas de portlet.
Il s'agit d'une boîte comme le type "Portlet" est une boîte ou "Dernières
actualités" est ue boîte.
Outre le développement adéquat d'une boîte Jahia, comme je voulais le même
comportement que le Gestionnaire de Fichiers du mode édition, j'ai récupéré
le code de engines/engine.jsp et de engines/filemanager/AjaxFileManager.jsp
A partir de là, comme je l'explique, je bute sur au moins deux choses :
1/ la gestion de l'EngineHashMap
J'ai des clés non valorisées. Je force donc les valeurs.
Par exemple je force engineUrl à
engineUrl="/cms/Jahia/engineName/filemanager/site/"+jParams.getSiteKey()+"/op/edit/pid/"+jParams.getPageID();
Cela fonctionne mais cela ne me paraît pas propre du tout.
2/ Comportement des actions
Lorsque j'utilise une action disponible depuis la toolbar, j'ai à chaque
fois une popup qui ne se ferme pas à la fin de cette action et qui a priori
fait que l'IHM ne s'actualise pas (bien que l'action soit réalisée avec
succès).
Je ne sais pas si 2/ est une conséquence de 1/
Quelqu'un aurait-il des idées pour résoudre/stabiliser cela ?
Merci beaucoup
--
Arnaud RUPIN
Rectorat de Rennes
SERvice Informatique Académique(SERIA)
Département Développement des TIC
Michael Mousset a écrit :
Bonjour, je suis interessé par ce dévellopement, pourriez vous m'en dire
un peu plus sur la facon dont vous avez procédé pour ajouter cette boite,
est-ce un portlet que vous avez créé?
Le 04/01/07, *Arnaud RUPIN* <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>> a écrit :
Bonjour
Il ne s'agit pas de bug mais de problème de développement.
Je suis en train de développer une boîte donnant accès au WebDAV à
partir du code du Gestionnaire de Fichiers (engines/engine.jsp +
engines/filemanager/AjaxFileManager.jsp).
Mon but est que cette boîte permette à un utilisateur d'interagir
avec
le WebDAV comme on le fait en mode édition avec le Gestionaire de
Fichiers.
J'arrive donc à une IHM identique à l'engine FileManager mais il
semble
qu'il ait des clés non valorisées dans le EngineMap que je récupère :
final HashMap engineMap = (HashMap)
request.getAttribute ("org.jahia.engines.EngineHashMap");
Dans mon cas je récupère des valeurs null pour
engineMap.get("fileManagerEngineUrl");
engineMap.get("engineUrl");
engineMap.get("screen");
J'arrive à forcer ces valeurs mais j'ai des comportements bizzares,
par
exemple lorsque je clique sur un bouton de la toolbar (upload de
fichier
par exemple), j'ai bien une popup qui s'ouvre pour me permettre
d'effectuer l'action mais une fois l'action réalisée, une popup ne se
ferme pas et le contenu de l'IHM WebDAV n'est pas actualisée. Il faut
que je ferme cette popup et que j'actualise explicitement mon
navigateur
(pour voir mon nouveau fichier par exemple).
Je ne sas pas trop à quoi cela est du.
Comment faire pour récupérer dans ma boîte un EngineHashMap
correctement
initialisé, svp ?
Comment faire pour régler ce problème de popup, svp ?
Merci
--
Arnaud RUPIN
Rectorat de Rennes
SERvice Informatique Académique(SERIA)
Département Développement des TIC
_________________________________________________________________
Personnalisez votre Messenger avec Live.com
http://www.windowslive.fr/livecom/