Alfresco共享高级搜索自定义

时间:2015-06-08 12:38:44

标签: alfresco alfresco-share advanced-search

我正在尝试修改share-config-custom.xml,以便我可以通过以下属性搜索电子邮件:

           <!-- cm:emailed aspect -->
           <show id="cm:originator" />
           <show id="cm:addressee" />
           <show id="cm:addressees" />
           <show id="cm:sentdate" />
           <show id="cm:subjectline" />

这是我的share-config-custom.xml:

    <config evaluator="model-type" condition="cm:content">
    <forms> 
        <form label="Mails">
            <field-visibility>
               <show id="cm:originator" />
               <show id="cm:addressee" />
               <show id="cm:addressees" />
               <show id="cm:sentdate" />
               <show id="cm:subjectline" />
            </field-visibility>
        </form>
    </forms>
   </config>

  <config evaluator="string-compare" condition="AdvancedSearch">
  <advanced-search>
     <!-- Forms for the advanced search type list -->
     <forms>
        <!--
           The 'form' config element contains the name of the model type
           of the form to display.

           The element supports the following optional attributes:
              id = form id, the id of "search" will be assumed if not set
              label = label text to display - defaults to model type if not set
              labelId = I18N message id of label text to display
              description = description text to display
              descriptionId = I18N message id of description text to display
        -->
    <form labelId="Mails" descriptionId="Search for Mails">cm:content</form>
     </forms>
  </advanced-search>

它不起作用。我尝试过aspectnode-type而不是model-type。我使用了许多force="true"for-mode="view"的组合...仍然无法使其正常工作。在搜索表单中,我看不到与属性相关的任何内容。它只是一个默认的搜索表单。任何帮助将不胜感激。

up:要清楚,问题是我有一些cm:电子邮件方面的文件。我想创建一个仅用于搜索此类文档的表单。但是,当我说“<form labelId="Mails" descriptionId="Search for Mails">cm:content</form>”时,默认内容搜索表单也会被修改。我相信必须有一些简单的方法或方法。我不想在我的自定义模型中定义新类型,我将此解决方案保留为最后一个。

1 个答案:

答案 0 :(得分:4)

共享配置不正确。看看https://wiki.alfresco.com/wiki/Share_Advanced_Search#Search_Forms

您需要使用方面字段更改 cm:content form id="search"的模型类型。

我正在打电话,所以答案可能很短。

- UPDATE-- 您无法在高级搜索的下拉列表中选择一个Aspect,Alfresco的当前实现不允许这样做。

在大多数情况下,我只是将方面字段添加到默认的 cm:内容类型。

或者,当我对应用方面有更多控制权时,我只需创建一个新类型自定义:邮寄并让父 cm:内容并作为必填方面的厘米:电子邮件发送即可。然后,您可以创建一种将该类型专门用于自定义:邮寄的行为,或者在Alfresco中创建一个入站规则,该规则触发hasAspect cm:通过电子邮件发送

我希望这有点清楚。