显示文档库。仅针对特定站点特定站点的自定义类型的操作

时间:2017-02-24 15:13:40

标签: alfresco alfresco-share alfresco-webscripts

我需要显示特定类型的doc lib操作(qwe:customtype)。更改仅反映在特定站点和非站点区域(Myfiles / Repository)。

alfrescoShare-弹弓应用context.xml中

<bean id="for-specifictype-only" parent="evaluator.doclib.action.nodeType">
<property name="types">

  <list>
            <value>qwe:customtype</value>
        </list>

</property>
</bean>

份额-CONFIG-custom.xml

<action id="document-assign-workflow" type="javascript" label="actions.document.assign-workflow">
                <param name="function">onActionAssignWorkflow</param>
               <evaluator>for-specifictype-only</evaluator>
 </action>

ForEx ::只有qwe类型的节点:customtype at&#34; abc&#34;网站应该能够查看doc lib动作。

对于其他网站,它应该对所有类型的节点都可见。(如cm:其他网站上的文件夹类型节点应该能够查看此操作) 我们是否需要在此处使用任何自定义网站评估程序?因为没有默认的eveluater将特定的网站名称作为参数。

1 个答案:

答案 0 :(得分:2)

这可以通过一点点工作来实现。首先,查看ChainedMatchAll评估器(evaluator.doclib.action.chainedMatchAll)。您可以在slingshot-documentlibrary-context.xml中找到它。

您可以创建自己的评估程序,将其作为父项,然后列出所有需要为true的评估程序,以使链式求值程序为true。 slingshot-documentlibrary-context.xml中有几个例子 - 一个简单的例子是evaluateator.doclib.metadata.hasSyncFailedBanner。

在您的情况下,您将使用您已经发现的nodeType评估程序,以及您必须编写的自定义网站评估程序。

要开发一个可用于在特定网站上进行匹配的评估程序,请先查看Alfresco文档中的this tutorial。它包括创建自定义评估程序。

该网站位于URL中,因此您应该能够使用RequestContext对其进行解析,该RequestContext将传递给评估者的applyModule方法。

使用自定义网站评估程序,现有nodeType评估程序和chainedMatchAll评估程序,您可以根据节点类型和特定网站ID显示或隐藏操作。