cancel
Showing results for 
Search instead for 
Did you mean: 

[Résolu] DocumentLibrary: Basculer entre 2 actions

lamba
Champ on-the-rise
Champ on-the-rise
Salut tout le monde,

J'ai ajouté 2 nouvelles actions au Document Library de Alfresco Share (V3.2r2) et elles fonctionnent bien.

Maintenant, je veux basculer entre ces deux actions suite au modification appliquée à un document.
Je m'explique,
-Au début j'ai l'action new1 qui apparait dans le menu des actions à appliquer sur le document.
- Si j'exécute l'action new1, un nouveau aspect est appliqué sur le document
- et je dois par la suite avoir l'action new2 qui apparait à la place de l'action new1 dans le menu des actions du Document Library.

Pour ce faire, j'ai essayé de suivre les étapes indiquées dans le post suivant http://forums.alfresco.com/en/viewtopic.php?f=48&t=22737&p=74582&hilit=actionSet#p74582.

J'ai ajouté le code suivant au fichier doclist.get.js

// Asset status
      if (asset.hasAspect("custom:new"))
      {
         itemStatus.push("newed");
      }
dans la boucle
 for each (asset in assets)

Dans le fichier documentlist.get.config.xml, j'ai ajouté l'appel de la 2eme action comme suit:

<actionSet id="newed">
         <action type="action-link" id="onActionNew2" permission="" label="actions.document.new2" />
</actionSet>

Mais lorsque j'applique l'action new1 rien n'est changé.

Veuillez m'indiquer qu'est ce que j'ai manqué. comment appliquer ce filtre :?:


Merci d'avance.
2 REPLIES 2

lamba
Champ on-the-rise
Champ on-the-rise
J'ai essayé aussi de modifier les fichiers:
- action-sets.lib.js en ajoutant la condition

else if (itemStatus.indexOf("newed") != -1)
   {
      actionSet = "newed";
   }

- et filters.lib.js en ajoutant le filtre

filterQueryDefaults = " -ASPECT:\"{http://www.new.com/model/content/1.0}custom:new\"";

mais ça n'a pas marché  :roll:

quelqu'un pour m'aider svp.



Merci d'avance.

lamba
Champ on-the-rise
Champ on-the-rise
Résolu Smiley Happy

En fait c'est comme l'a décrit Mike dans le post: http://forums.alfresco.com/en/viewtopic.php?f=48&t=22737&p=74582&hilit=actionSet#p74582

Les étapes sont:
1. Modifier le fichier "doclist.get.js" en ajoutant la logique d'affichage des actions, dans la section:
   
for each (asset in assets)
   {
      …
   }
   
2. Modifier le fichier "doclist.get.json.ftl" en ajoutant de nouvelles permissions dans la section "userAccess".
Ces permissions permettent d'afficher/masquer chacune des actions selon une condition.
Par exp:
   
"my-action": ${item.enableMyAction?string}
   
3. Modifier le fichier "documentlist.get.config.xml" en associant chaque permission à son action correspondante.
Par exp:
   
<action type="action-link" id="onActionMyAction" permission="my-action" label="actions.document.my-action" />

Merci pour vous tous Smiley Happy

Bonne journée.