在 Alfresco Share 中自定义 Doclib 过滤器

发布于 2024-12-19 13:24:45 字数 246 浏览 3 评论 0原文

在 Alfresco 4.0 中,我想扩展 Share Doclib Filter 网页脚本以添加我自己的自定义过滤器。

  1. 有没有一种简单的方法可以在 share-config-custom.xml 中添加我自己的过滤器?
  2. 如何在存储库端定义自己的过滤器?

在此处输入图像描述

In Alfresco 4.0, I'd like to extend Share Doclib Filter webscript to add my own customized filter.

  1. Is there a simple way to add my own filter in the share-config-custom.xml?
  2. How do I define my own filter on the repository side?

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

萌无敌 2024-12-26 13:24:45

涉及 2 个步骤:

  • 通过使用您自己的模块自定义文档库来添加链接(请参阅 alfresco 帮助):

    <自定义>
      org.alfresco.components.documentlibrary
      com.company.components.documentlibrary
    
    

扩展 webscripts filter.get.jsrepo-filter.get.js (将它们添加到 web-extension / site-webscripts / com / company/ Components 中/ documentlibrary /

var filters = model.filters;
filters.push(
      {
         id: 'myExtension',
         data: '',
         label: 'link.myExtension'
      });

model.filters = filters;

用您自己的标签扩展属性文件

  • 覆盖存储库网页脚本以添加您自己的过滤器解释:

alfresco / templates / webscripts / org / alfresco / slingshot /中documentlibrary-v2 /

复制粘贴 filters.lib.js 并添加您的逻辑:

case "myExtension":
                filterQuery = "+PATH:\"" + parsedArgs.rootNode.qnamePath + "//*\"";
                filterQuery += "+@blabla\\:isLikeThat:\"FALSE\"";
                filterParams.query = filterQuery + filterQueryDefaults;
                break;

There are 2 steps involved:

  • Adding the link by customizing the document library with your own module(see alfresco Help):

    <customization>
      <targetPackageRoot>org.alfresco.components.documentlibrary</targetPackageRoot>
      <sourcePackageRoot>com.company.components.documentlibrary</sourcePackageRoot>
    </customization>
    

extend the webscripts filter.get.js and repo-filter.get.js (add them in web-extension / site-webscripts / com / company/ components / documentlibrary / )

var filters = model.filters;
filters.push(
      {
         id: 'myExtension',
         data: '',
         label: 'link.myExtension'
      });

model.filters = filters;

extend the property file with your own labels

  • Override the repository webscript to add your own filter interpretation:

in alfresco / templates / webscripts / org / alfresco / slingshot / documentlibrary-v2 /

Copy paste the filters.lib.js and add your logic:

case "myExtension":
                filterQuery = "+PATH:\"" + parsedArgs.rootNode.qnamePath + "//*\"";
                filterQuery += "+@blabla\\:isLikeThat:\"FALSE\"";
                filterParams.query = filterQuery + filterQueryDefaults;
                break;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文