Forum Ametys

Forum de la communauté Ametys

You are not logged in.

#1 27/03/2013 17:17:05

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Afficher les date de dépots des pièces jointes d'une page

Bonjour,

Est-il possible de récupérer la date de mise en ligne d'un fichier joint à une page ?

Je souhaite afficher cette date à coté de la taille de la pj.
Merci smile

Offline

#2 28/03/2013 11:25:14

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Afficher les date de dépots des pièces jointes d'une page

Bonjour,
en attendant la nouvelle documentation qui j'espère sera complète sur ce point de vue d'ici sa sortie, voici une vieille technique indienne pour savoir ce que vous avez en entrée d'une xsl.
Dans le body, vous placez une instruction du type :

<marker><xsl:copy-of select="/"/></marker>

Et ensuite vous analysez le html de sortie dans lequel vous retrouverez votre balise <marker> contenant le XML que vous avez à disposition en entrée. En l'occurence quelque chose comme :

<marker>
     <attachments id="resources-collection://1e234e4d-926e-4968-86d5-3891d2150f2f">
          <page lang="fr" title="Plan du site" site="www" path="plan-du-site"></page>
          <file id="resource://f44a964d-ec05-4a31-aa0b-e6877967dcc8" keywords="" author="Administrator User"
                    lastmodified="2013-03-28T10:18:56.345+01:00" mimetype="image/jpeg" 
                    name="nath.JPG" path="/nath.JPG">
               <size>2 Mo</size>
               <icon>plugins/explorer/icon-medium/JPG.png</icon>
          </file>
     </attachments>
</marker>

Pour convertir une date à ce format, vous pouvez utiliser les intructions i18n.

<i18n:date src-pattern="yyyy-MM-dd'T'hh:mm:ss" pattern="long" value="{@lastmodified}"/>
<i18n:time src-pattern="yyyy-MM-dd'T'hh:mm:ss" pattern="long" value="{@lastmodified}"/>
<i18n:date-time src-pattern="yyyy-MM-dd'T'hh:mm:ss" pattern="long" value="{@lastmodified}"/>

Raphael Franchet
Expert Ametys

Offline

#3 04/04/2013 12:06:07

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: Afficher les date de dépots des pièces jointes d'une page

Bonjour Raphaël,

Je ne comprends pas comment vous obtenez votre second cadre. Comment puis analyser le
xml d'entrée ?

Passez vous par le code source de la pge ou par cocoonview ? Ni l'un ni l'autre ne me donne d'information de date.

Last edited by Francis Feytout (04/04/2013 12:07:24)

Offline

#4 04/04/2013 12:15:19

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Afficher les date de dépots des pièces jointes d'une page

En effet en analysant le code source de la page. Il faut mettre ce marqueur dans le body mais sous une balise plus "classique" comme un <p> par exemple.
Ensuite, regardez bien le source de la page et n'utilisez pas d'analyseur de code (comme firebug) car certains font sauter les balises inconnues.
Mais finalement, dans votre cas, je pense que c'est plutôt le cache qui est en cause smile. Faites toujours vos tests en "preview" mais après avoir désactivé le cache des éléments de page (_admin -> Configuration -> Systeme)


Raphael Franchet
Expert Ametys

Offline

#5 04/04/2013 14:19:20

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: Afficher les date de dépots des pièces jointes d'une page

Hmm toujours pas et je suis bien en mode dev sans cache et en preview de page.

Voici le source que j'obtiens :

Est-il consistent ?

Je travaille sous la version de démo 3.4.1 du 17/11/2012, est-ce un problème de version d'Amétys ?

Offline

#6 04/04/2013 14:31:54

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Afficher les date de dépots des pièces jointes d'une page

Dans votre source, on trouve bien un <marker> mais pas de la bonne chose smile.
Je pense que vous n'avez pas mis le bout de code dans la bonne XSL.
La XSL de service possède son propre générateur, c'est dans celle-ci qu'il faut intervenir.... si on parle bien du service "Pièces jointes d'une page"


Raphael Franchet
Expert Ametys

Offline

#7 04/04/2013 15:30:28

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: Afficher les date de dépots des pièces jointes d'une page

ça explique ! Oui j'ai inséré le marqueur dans la xsl du gabarit. Il s'agit bien du service "pièce jointe d'une page".
Je suppose qu'il s'agit de {skin}/services/web/pages/services/attach/attachments-tree_3.3.xsl mais quel est le nom du template dans lequel l'utiliser ?
J'espère que la future doc inclura les noms des templates noyau. tongue

Offline

#8 04/04/2013 15:58:51

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Afficher les date de dépots des pièces jointes d'une page

Tout à fait. Depuis la 3.3 du noyau (d'où le _3.3 dans certains noms de fichiers) nous avons uniformisés les rendus des services et des contenus.
Il y a donc une xsl commune qui appelle certains templates, mais rien ne vous empêche de sortir de ce carcan et de faire

<xsl:template match="/">
     <html>
          <body>
                  <p><marker><xsl:copy-of select="/"/></marker></p>
          </body>
     </html>
</xsl:template>

Et du coup, vous n'avez aucun rendu et seulement le <marker>


Raphael Franchet
Expert Ametys

Offline

#9 04/04/2013 16:21:18

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: Afficher les date de dépots des pièces jointes d'une page

Excellent, ça va m'être utile !
Mais comme je souhaite surcharger l'affichage des pièces jointes pour ajouter la date {@lastmodified}, j'ai quand même besoin du nom du template d'affichage pour ça, non ?

Last edited by Francis Feytout (04/04/2013 16:21:29)

Offline

#10 04/04/2013 17:07:44

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Afficher les date de dépots des pièces jointes d'une page

En effet, aujourd'hui (et même à l'avenir) je vous invite à regarder le template apporté par le noyau

qui importe cette xsl

qui importe cette xsl


et vous trouvez alors

    <xsl:template match="File">
        <li>
            <span class="file">
                <a href="{resolver:resolve('attachment-page', @id, true())}" title="{@name} ({size})">
                    <xsl:call-template name="Icons"/>
                    <xsl:value-of select="@name"/>
                </a>
                <span class="size"><xsl:value-of select="size"/></span>            
            </span>
        </li>
    </xsl:template>

Raphael Franchet
Expert Ametys

Offline

#11 04/04/2013 17:27:12

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: Afficher les date de dépots des pièces jointes d'une page

Merci,
Je n'ai pas la même version des fichiers, les miens s'importent eux-mêmes...  Par exemple pour attachments-tree_3.3.xsl :

<xsl:import href="plugin:web://pages/services/attach/attachments-tree_3.3.xsl"/>

C'est forcément plus facile quand la chaîne d'import donne de l'information !

Offline

#12 05/04/2013 10:22:20

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: Afficher les date de dépots des pièces jointes d'une page

Alors...
Je souhaite surcharger toutes les vues du services d'attachment, donc je crée le fichier {skin}/services/web/pages/services/attach/attachments_3.3.xsl :

<xsl:stylesheet version="1.0"
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
        xmlns:i18n="http://apache.org/cocoon/i18n/2.1"
        xmlns:ametys="org.ametys.web.transformation.xslt.AmetysXSLTHelper"
        exclude-result-prefixes="ametys">
    
    <xsl:import href="plugin:web://pages/services/attach/common/attachments_3.3.xsl"/>
    
    <xsl:template match="File">
        <li>
            <span class="file">
                <a href="{resolver:resolve('attachment-page', @id, true())}" title="{@name} ({size})">
                    <xsl:call-template name="Icons"/>
                    <xsl:value-of select="@name"/>
                </a>
                <span class="size"><xsl:value-of select="size"/></span><br/>            
                <span class="size"><xsl:value-of select="size"/></span> <!-- test --> 
            </span>
        </li>
    </xsl:template>
</xsl:stylesheet>

Mais le rendu n'est pas modifié et j'ai une erreur 500 quand je rentre dans les paramètres du service :

Can't find a stylesheet for: service:web://pages/services/attach/attachments_3.3.xml
...

Je pensais avoir compris le système de surcharge d'un service mais apparemment j'ai raté un truc. Voyez vous mon erreur ?  sad

Offline

#13 08/04/2013 09:22:07

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Afficher les date de dépots des pièces jointes d'une page

A chaque fois que l'on place une XSL pour faire une vue, on peut l'accompagner d'un fichier XML de même nom dont le contenu permet :
1) de donner un libellé à la vue
2) d'inclure ou d'exclude la vue (ainsi vous pouvez exclude des vues apportées par le noyau)

Par exemple :

<service exclude="false">
    <label i18n="true">ATTACHMENTS_SERVICE_LIST_XSLT_ATTACHMENT33_TREE_LABEL</label>
</service>

En théorie, ce fichier est facultatif : le libellé utilisée est à ce moment là le nom du fichier XSL et il est inclus par défaut.
D'autre part, le protocole service:// permet de chercher dans la skin et si il ne trouve pas de se rabattre sur le plugin : ainsi quand on surcharge une XSL pas la peine de surcharger le XML (sauf si on veut changer le libellé par exemple)

Cette erreur signifie que vous demandez un fichier qui n'existe pas... en l'occurence ce fichier n'a pas l'air si facultatif... si l'erreur vient bien de là il faudrait ouvrir un ticket dans le jira
En l'occurence sur une 3.5 le fichier <xsl:import href="plugin:web://pages/services/attach/common/attachments_3.3.xsl"/> n'existe pas... quelle version utilisez-vous ?


Raphael Franchet
Expert Ametys

Offline

#14 08/04/2013 10:14:01

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: Afficher les date de dépots des pièces jointes d'une page

Bonjour Raphael,

J'utilise la version 3.4.1-20121117-0511-SNAPSHOT sur mon poste local et la  3.4.0-20120615-0401-SNAPSHOT sur nos serveur.

Si je crée attachments_3.3.xml avec la xsl ci-dessus j'obtiens :

Exception when creating Transformer from file:/home/francis/Ametys/webapp/cms/skins/etudiantBx3/services/web/pages/services/attach/attachments_3.3.xsl
org.apache.excalibur.xml.xslt.XSLTProcessorException: Exception when creating Transformer from file:/home/francis/Ametys/webapp/cms/skins/etudiantBx3/services/web/pages/services/attach/attachments_3.3.xsl at org.ametys.runtime.cocoon.ThreadSafeTraxProcessor.getTransformerHandlerAndValidity(ThreadSafeTraxProcessor.java:233) at org.apache.cocoon.transformation.TraxTransformer.setup(TraxTransformer.java:331) at org.ametys.runtime.cocoon.TraxTransformer.setup(TraxTransformer.java:50) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.setupPipeline(AbstractProcessingPipeline.java:398) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.setupPipeline(AbstractCachingProcessingPipeline.java:718) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.preparePipeline(AbstractProcessingPipeline.java:501) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.prepareInternal(AbstractProcessingPipeline.java:515) at org.apache.cocoon.components.source.impl.SitemapSource.init(SitemapSource.java:343) at org.apache.cocoon.components.source.impl.SitemapSource.<init>(SitemapSource.java:215) at org.apache.cocoon.components.source.impl.SitemapSourceFactory.getSource(SitemapSourceFactory.java:65) at org.apache.excalibur.source.impl.SourceResolverImpl.resolveURI(SourceResolverImpl.java:208) at org.apache.cocoon.components.CocoonComponentManager.resolveURI(CocoonComponentManager.java:558) at org.apache.cocoon.components.CocoonComponentManager.resolveURI(CocoonComponentManager.java:558) at org.apache.cocoon.environment.AbstractEnvironment.resolveURI(AbstractEnvironment.java:554) at org.apache.cocoon.environment.wrapper.MutableEnvironmentFacade.resolveURI(MutableEnvironmentFacade.java:307) at org.ametys.web.repository.PageGenerator._saxZoneItems(PageGenerator.java:437) at org.ametys.web.repository.PageGenerator._saxZone(PageGenerator.java:262) at org.ametys.web.repository.PageGenerator.generate(PageGenerator.java:192) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:579) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:280) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:780) at org.apache.cocoon.components.source.impl.SitemapSource.toSAX(SitemapSource.java:414) at org.apache.cocoon.components.source.SourceUtil.toSAX(SourceUtil.java:101) at org.apache.cocoon.components.source.SourceUtil.parse(SourceUtil.java:321) at org.apache.cocoon.sitemap.ContentAggregator.generate(ContentAggregator.java:125) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.processXMLPipeline(AbstractProcessingPipeline.java:579) at org.apache.cocoon.components.pipeline.impl.AbstractCachingProcessingPipeline.processXMLPipeline(AbstractCachingProcessingPipeline.java:280) at org.apache.cocoon.components.pipeline.AbstractProcessingPipeline.process(AbstractProcessingPipeline.java:481) at org.apache.cocoon.components.treeprocessor.sitemap.SerializeNode.invoke(SerializeNode.java:144) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:178) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) at org.apache.cocoon.components.treeprocessor.sitemap.MountNode.invoke(MountNode.java:118) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:47) at org.apache.cocoon.components.treeprocessor.sitemap.MatchNode.invoke(MatchNode.java:108) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelineNode.invoke(PipelineNode.java:143) at org.apache.cocoon.components.treeprocessor.AbstractParentProcessingNode.invokeNodes(AbstractParentProcessingNode.java:69) at org.apache.cocoon.components.treeprocessor.sitemap.PipelinesNode.invoke(PipelinesNode.java:93) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:236) at org.apache.cocoon.components.treeprocessor.ConcreteTreeProcessor.process(ConcreteTreeProcessor.java:178) at org.apache.cocoon.components.treeprocessor.TreeProcessor.process(TreeProcessor.java:254) at org.apache.cocoon.Cocoon.process(Cocoon.java:699) at org.apache.cocoon.servlet.CocoonServlet.service(CocoonServlet.java:1159) at org.ametys.runtime.servlet.RuntimeServlet._doService(RuntimeServlet.java:135) at org.ametys.runtime.servlet.RuntimeServlet.service(RuntimeServlet.java:92) at javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:390) at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114) at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle(Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:536) at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:915) at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539) at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:405) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) Caused by: org.apache.xpath.domapi.XPathStylesheetDOM3Exception: Le préfixe doit se convertir en espace de noms : resolver at org.apache.xpath.compiler.XPathParser.errorForDOM3(XPathParser.java:655) at org.apache.xpath.compiler.Lexer.mapNSTokens(Lexer.java:647) at org.apache.xpath.compiler.Lexer.tokenize(Lexer.java:274) at org.apache.xpath.compiler.Lexer.tokenize(Lexer.java:98) at org.apache.xpath.compiler.XPathParser.initXPath(XPathParser.java:112) at org.apache.xpath.XPath.<init>(XPath.java:227) at org.apache.xalan.processor.StylesheetHandler.createXPath(StylesheetHandler.java:155) at org.apache.xalan.templates.AVT.<init>(AVT.java:308) at org.apache.xalan.processor.XSLTAttributeDef.processAVT(XSLTAttributeDef.java:520) at org.apache.xalan.processor.XSLTAttributeDef.processValue(XSLTAttributeDef.java:1393) at org.apache.xalan.processor.XSLTAttributeDef.setAttrValue(XSLTAttributeDef.java:1601) at org.apache.xalan.processor.XSLTElementProcessor.setPropertiesFromAttributes(XSLTElementProcessor.java:343) at org.apache.xalan.processor.XSLTElementProcessor.setPropertiesFromAttributes(XSLTElementProcessor.java:268) at org.apache.xalan.processor.ProcessorLRE.startElement(ProcessorLRE.java:283) at org.apache.xalan.processor.StylesheetHandler.startElement(StylesheetHandler.java:626) at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) at org.apache.excalibur.xml.impl.JaxpParser.parse(JaxpParser.java:315) at org.apache.excalibur.xmlizer.DefaultXMLizer.toSAX(DefaultXMLizer.java:128) at org.ametys.runtime.cocoon.ThreadSafeTraxProcessor._sourceToSAX(ThreadSafeTraxProcessor.java:248) at org.ametys.runtime.cocoon.ThreadSafeTraxProcessor.getTransformerHandlerAndValidity(ThreadSafeTraxProcessor.java:185) ... 
69 more 

Mais cette fois je n'ai pas de rendu pour le service.

Offline

#15 08/04/2013 10:21:31

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Afficher les date de dépots des pièces jointes d'une page

Oui cela correspond à ce que je disais : la xsl n'existe pas dans le noyau même en 3.4 (  ).
Alors certes, vous pouvez créer une vue attachments_3.3.xsl mais dans ce cas n'importez pas ce fichier dans le noyau car vous avez cette erreur.
Je pense que vous souhaitez surcharger une vue existante plutot. Mais laquelle ? attachment_small_3.3 ? attachment_medium_3.3 ? attachment_tree_3.3 ?


Raphael Franchet
Expert Ametys

Offline

#16 08/04/2013 10:46:15

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: Afficher les date de dépots des pièces jointes d'une page

Comment faire pour surcharger uniquement attachments-tree_3.3.xsl avec le template "File" qui se trouve dans attachment.xsl ?

J'ai un erreur de rendu quand j'essaie.

Offline

#17 08/04/2013 10:58:26

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Afficher les date de dépots des pièces jointes d'une page

au temps pour moi, j'ai fait une erreur, j'avais raté le 'common' dans votre chemin.

si vous souhaitez surcharger File tout le temps, votre fichier est au bon endroit je pense
si vous ne souhaitez surcharger File que dans le cas du tree, il faut surcharger _tree et y mettre l'import du _tree noyau et le template en question.

mais bon à part, ça vous ne devriez pas avoir d'erreur dans les autres cas.
si vous analyser finement votre stacktrace vous trouverez l'erreur suivante : Le préfixe doit se convertir en espace de noms : resolver

vous avez utilisé "resolver:" sans la déclaration en entête de fichier xmlns:resolver="..." que je vous laisse copier du fichier d'orginie.


Raphael Franchet
Expert Ametys

Offline

#18 08/04/2013 14:57:03

Francis Feytout
Guest
From: Bordeaux 3
Registered: 19/01/2012
Posts: 35

Re: Afficher les date de dépots des pièces jointes d'une page

En effet ça fonctionne avec le "resolver:" en en-têre, j'étais trop concentré sur la balise import.
Pour référence voici ma surcharge :

<xsl:stylesheet version="1.0"
        xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
        xmlns:i18n="http://apache.org/cocoon/i18n/2.1"
        xmlns:resolver="org.ametys.cms.transformation.xslt.ResolveURIComponent"
        xmlns:ametys="org.ametys.web.transformation.xslt.AmetysXSLTHelper"
        exclude-result-prefixes="ametys">
    
    <xsl:import href="plugin:web://pages/services/attach/attachments-tree_3.3.xsl"/>
    ...
   <xsl:template match="File">
        <xsl:variable name="Date">
            <i18n:text i18n:key="SKIN_DOWNLOAD_DATE" i18n:catalogue="skin.{$skin}"/>
            <i18n:date src-pattern="yyyy-MM-dd'T'hh:mm:ss" pattern="dd-MM-yyyy" value="{@lastModified}"/>
        </xsl:variable>
        <li>
            <span class="file">
                <a href="{resolver:resolve('attachment-page', @id, true())}" title="{@name} ({size})">
                    <xsl:call-template name="Icons"/>
                    <xsl:value-of select="@name"/>
                </a>
                <span class="size"><xsl:value-of select="size"/></span>
                <span class="size"><xsl:copy-of select="$Date"/></span>
            </span>
        </li>
    </xsl:template>

</xsl:stylesheet>    

Merci pour le coup de main Raphël.

Offline

#19 08/04/2013 15:07:52

Raphaël Franchet
Expert Team
From: Toulouse
Registered: 10/08/2010
Posts: 1,111

Re: Afficher les date de dépots des pièces jointes d'une page

Avec plaisir smile


Raphael Franchet
Expert Ametys

Offline

Board footer

Powered by FluxBB