09-04-2013 09:35 AM
Bonjour, quelqu'un peut il me dire si, via syudio, on peut modifier l'onglet "Contenu" d'un document ? Et où peut on trouver les sources pour la parie "publication" située en dessous des méta données communes ? merci d'avance.
09-04-2013 10:04 AM
Bonjour,
Pour votre première question il faut regarder sur une page d'un Type de document la partie "> Tabs > Content views", où l'on peut choisir comment est présenté l'onglet Contenu (ainsi que la poubelle). Il suffit donc de créer une nouvelle Content view avec les paramètres qui vous conviennent, puis de l'affecter au type de document.
Pour la publication, le fichier à modifier est /widgets/summary/publication_widget_template.xhtml
.
09-04-2013 10:11 AM
ok merci. Mais j'aimerai en fait faire un vue d'un répertoire, avec la liste des documents disponibles et leurs sections de publications. Je n'arrive pas à modifier les templates dispo pour afficher cette information. Auriez vous une idée ? encore merci pour votre aide.
09-04-2013 10:16 AM
Pour afficher les sections de publications dans le listing d'un répertoire, il suffit en gros de combiner les deux :
Créez une nouvelle content view qui ressemble à celle par défaut, mais avec par exemple une nouvelle colonne que vous appelez Publications. Son contenu sera alors un widget de type "Template" dont vous fournirez le .xhtml ; utiliser le publication_widget_template.xhtml
tel quel ne fonctionnera probablement pas mais pour peu que vous ayez les connaissances techniques pour l'adapter à vos besoins, ça peut être un bon point de départ.
09-04-2013 10:22 AM
c'est exactement ce que j'ai fait, le soucis c'est que je ne trouve pas comment faire fonctionner mon template sur le document courant, publishActions.publishedDocument ne pointe jamais sur le document correct, j'ai essayé de mapper avec "data", mais... rien...
09-04-2013 10:39 AM
Ah effectivement ça devient ardu, les méthodes "publishActions" sont toutes centrées sur le document courant. Du coup vous devriez pouvoir contourner ça en... remplaçant temporairement le document courant, avec quelque chose comme :
<c:set var="actualCurrentDocument" value="currentDocument" />
#{navigationContext.setCurrentDocument(field)}
<nxu:set var="publishedDocuments"
value="#{publishActions.getPublishedDocumentsFor(tree.name)}"
cache="false">
...
</nxu:set>
#{navigationContext.setCurrentDocument(actualCurrentDocument)}
Notez bien la désactivation du cache.
EDIT: Corrigé erreur dans le code
09-04-2013 11:15 AM
si je comprends bien, à l'entrée de mon template, dans le champ "field", je met bien "data" ? parce que si je fais ça, et que je suis votre manipulation, j'ai droit à un : Cannot convert currentDocument of type class java.lang.String to interface org.nuxeo.ecm.core.api.DocumentModel
je pense que c'est ; #{navigationContext.setCurrentDocument(field)} qui pose problème c'est moi qui n'envoies pas la bonne donnée d'entrée ?
09-04-2013 11:22 AM
Oui pardon c'est bien #{navigationContext.setCurrentDocument(field)} qu'il faut mettre, avec "data" dans le <field> côté config XML.
09-04-2013 12:00 PM
hum toujours le même problème ...
09-04-2013 12:42 PM
C'est bizarre car le message d'erreur indique que le contenu de "field" est une chaîne de caractère au lieu d'un document, qu'est-ce qui apparaît si vous mettez tout simplement #{field} quelque part en dehors d'une balise ?
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.