Email Template (recupération des permissions de l'espace)

cancel
Showing results for 
Search instead for 
Did you mean: 
tarl
Member II

Email Template (recupération des permissions de l'espace)

Bonjour à tous!
j'utilise FreeMarker  pour creer un template d'email. Ce mail me sert à créer une nouvelle issue dans Redmine(bugtracker) pour cela je transmets: un projet, une priorité… et les personnes concernées par cette issue. Grace à FreeMarker je récupère facillement le projet :
Project:<@recurse_macro node=space/>
Tracker: Revue
Priority: Normal
Status: Nouveauuuu

<#macro recurse_macro node >
   <#if node.parent.properties["cm:categories"]?? >
      <#if node.parent.properties["cm:categories"][0].name == "Root Project">
         ${node.parent.name}
      <#else>
         <@recurse_macro node.parent />
      </#if>
   <#else>
      <@recurse_macro node.parent />
   </#if>
</#macro>
Cela fonctionne à merveille! Mon problème est que pour récupérer les utilisateurs concernés je voudrais récupérer tous les utilisateurs ayant des permissions dans cet espace. cependant je n'arrive pas à traiter les infos retournées par le model "permissions"! Voila ce que j'ai essayé:
<#list space.permissions?split(";") as perm >
   ${perm}
</#list>
Mais l'erreur indique que split necessite un objet string.
Si qq1 peut m'éclairer ca m'aiderais beaucoup!
Merci d'avance
2 Replies
cleseach
Active Member II

Re: Email Template (recupération des permissions de l'espace)

Bonjour,

Le wiki indique que la méthode permissions retourne :
Sequence of the permissions
L'objet que vous essayez de découper selon les ';' n'est donc pas une chaîne de caractères, mais une liste de chaînes de caractères. Le message d'erreur que vous recevez est donc bien normal !

Pour vous en sortir, vous pouvez essayer ce genre de chose :

<#list space.permissions as perm >
   <#list perm?split(";") as permPart >
     ${permPart}
   </#list>
</#list>
Cordialement,
Charles Le Seac'h
tarl
Member II

Re: Email Template (recupération des permissions de l'espace)

Merci beaucoup, ca marche parfaitement!