Forum Ametys

Forum de la communauté Ametys

You are not logged in.

#1 27/02/2017 15:16:50

RSellin
Guest
Registered: 29/08/2012
Posts: 59

[Résolu] - Resolver pour les Pièce Jointe de contenu

Bonjour,

(Oui, je sais, ça fait longtemps... ^^)

Je m'arrache les cheveux depuis un moment sur un problème, j'ai besoin d'un coup de main smile

Je veux que, quand on place un article dans une zone précise (invisible-zone-sidebar-1), cela affiche l'article, et en dessous, la PJ affectée à l'article (PJ du contenu, pas de la page) en question - avec un lien de téléchargement du fichier joint.

J'ai donc utilisé le resolver prévu à cet effet :

<xsl:variable name="contenuId" select="/cms/page/pageContents/zone[@name='invisible-zone-sidebar1']/zoneItem[1]/information/contentId" />

<xsl:for-each select="ametys:contentAttachments($contenuId)/resource">

<a href="{resolver:resolve(attachment-content, @id, true())}" title="{@name}">Télécharger le fichier</a>

</xsl:for-each>

Coté Front office, j'obtiens çà :

<a title="fichier.pdf" href="resource://c9489f71-9478-412d-befb-43cae5544d03">Télécharger le fichier</a>

Je précise que je travaille dans le fichier main.xsl, là où j'ai déclaré ma zone.
J'ai bien déclaré xmlns:resolver="org.ametys.cms.transformation.xslt.ResolveURIComponent" dans l'en-tête et le préfixe "resolver" est là également.

Merci d'avance pour votre aide smile

Last edited by RSellin (27/02/2017 17:51:47)

Offline

#2 27/02/2017 15:48:29

Laurence Aumeunier
Expert Team
Registered: 10/08/2010
Posts: 154

Re: [Résolu] - Resolver pour les Pièce Jointe de contenu

Bonjour,

Le "resolver" Ametys se comporte ainsi lorsqu'il ne trouve pas le type à résoudre
L'erreur que je vois ici (si vous avez copier-coller exactement ce que vous avez écrit dans la XSL), c'est que "attachment-content" n'est pas entouré de simple cotes et donc n'est pas interprété comme une chaine de caractère

<a href="{resolver:resolve('attachment-content', @id, true())}" title="{@name}">Télécharger le fichier</a>

Laurence Aumeunier
Ametys Expert

Offline

#3 27/02/2017 16:07:06

RSellin
Guest
Registered: 29/08/2012
Posts: 59

Re: [Résolu] - Resolver pour les Pièce Jointe de contenu

Arf, j'ai essayé avec les quotes également, sans résultat... sad
Je suis sur une 3.5, je sais pas si ça peut expliquer le souci ?

Offline

#4 27/02/2017 16:24:55

Laurence Aumeunier
Expert Team
Registered: 10/08/2010
Posts: 154

Re: [Résolu] - Resolver pour les Pièce Jointe de contenu

Vous parlez du front, est-ce que coté back-office le lien fonctionne ?


Laurence Aumeunier
Ametys Expert

Offline

#5 27/02/2017 16:25:41

RSellin
Guest
Registered: 29/08/2012
Posts: 59

Re: [Résolu] - Resolver pour les Pièce Jointe de contenu

Non, front et back, même topo sad

Offline

#6 27/02/2017 16:49:54

Laurence Aumeunier
Expert Team
Registered: 10/08/2010
Posts: 154

Re: [Résolu] - Resolver pour les Pièce Jointe de contenu

Je me demande si le problème ne vient pas du fait que vous essayez de résoudre le lien en dehors du contexte du contenu, puisque vous êtes au niveau de la charte graphique. Le resolver a besoin de connaitre de quel contenu il s'agit pour résoudre correctement le lien.

Un moyen de tester déjà que ca fonctionne bien avec une 3.5, çà serait d'ajouter le lien directement dans la vue du contenu (vue main) et voir si dans ce cas, çà marche.

Si oui, vous pourriez faire une nouvelle vue et utiliser cette vue dans la zone en question ?


Laurence Aumeunier
Ametys Expert

Offline

#7 27/02/2017 17:51:27

RSellin
Guest
Registered: 29/08/2012
Posts: 59

Re: [Résolu] - Resolver pour les Pièce Jointe de contenu

Vous avez raison, en passant directement par la vue (main, en l'occurrence), tout s'affiche correctement.

Alors créer une vue spécifique, ça m'ennuie un peu, dans le sens où elle sera disponible pour tous les sites et pas "limitée" à cette charte graphique...

Je vais peut être m'orienter vers un nouvel affichage de la remontée de contenu, pour plus de souplesse.
Je passe le sujet en résolu, merci Laurence wink

Offline

Board footer

Powered by FluxBB