2017-02-24 81 views
1

我需要爲特定類型(qwe:customtype)顯示文檔lib的操作。更改僅在特定站點和非站點區域(Myfiles/Repository)中反映。顯示文件lib。自定義類型的動作僅適用於特定站點特定站點的戶外

alfrescoShare-彈弓應用程序的context.xml

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

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

</property> 
</bean> 

共享配置,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> 

外匯:: QWE型只有節點:customtype在「 abc「網站應該能夠查看文檔庫操作。

對於其他站點,它應該對所有類型的節點都可見(如cm:其他站點上的文件夾類型節點應該能夠查看此操作) 我們是否需要任何自定義站點評估器?沒有默認eveluater以特定網站名稱作爲參數。

回答

2

這是可行的一點點工作。首先,查看ChainedMatchAll評估程序(evaluateator.doclib.action.chainedMatchAll)。你可以在slingshot-documentlibrary-context.xml中找到它。

您可以創建自己的評估程序,將其作爲父項,然後列出所有需要爲true的評估程序,以使鏈接評估程序爲真。在slingshot-documentlibrary-context.xml中有幾個例子 - 一個簡單的例子是evaluateator.doclib.metadata.hasSyncFailedBanner。

對於您的情況,您將使用您已經發現的nodeType評估程序和您必須編寫的自定義站點評估程序。

要開發可用於在特定網站上匹配的評估程序,請首先查看Alfresco文檔中的this tutorial。它涵蓋了創建自定義評估器。

該網站位於URL中,因此您應該能夠使用傳遞給評估者的applyModule方法的RequestContext解析該網站。

使用您的自定義網站評估程序,現有nodeType評估程序和chainedMatchAll評估程序,您可以根據節點類型和特定的站點ID顯示或隱藏操作。

+0

謝謝傑夫,它幫助 – k10ml

+0

解決共享擴展模塊聲明文檔。 lib動作配置。 – k10ml