如何Disable Alfresco的Download以及打印功能

Alfreco是一款功能强大的企业文档管理软件,公司需要将系统设计为看文档的人不能下载文档以及将文档打印成PDF的功能。

经过一段时间的调查找到了解决方法,整理如下:

  • Disable 文档左侧的Download以及Edit Offline 按钮
                share-config-custom.xml文件加入下列内容(注意有两个这个文件在tomcat/shared/ 下)
-------------

    <config evaluator="string-compare" condition="DocLibActions">
        <actions>
            <action id="document-view-content">        
                <evaluator>evaluator.doclib.action.disableAction</evaluator>

            </action>
            <action id="document-download">        
                <evaluator>evaluator.doclib.action.disableAction</evaluator>
            </action>            
            <action id="document-edit-offline">        
                <evaluator>evaluator.doclib.action.disableAction</evaluator>
            </action>            

        </actions>

    </config>
-------

  • Disable 在Document Detail上方的Download按钮

1) Copy attached pdf-extension.xml file at tomcat\webapps\share\WEB-INF\classes\alfresco\web-extension\site-data\extensions folder under your Alfresco. 

2) Copy attached pdfjs.get.js file at tomcat\webapps\share\WEB-INF\classes\alfresco\web-extension\site-webscripts\custom\pdf folder under your Alfresco.

pdf-extension.xml 内容:

-----------

<extension>
  <modules>
    <module>
      <id>Disable download PDF</id>
      <auto-deploy>true</auto-deploy>
      <version>1.0</version>
      <customizations>
        <customization>
          <targetPackageRoot>org.alfresco.modules.preview</targetPackageRoot>
          <sourcePackageRoot>custom.pdf</sourcePackageRoot>
        </customization>
      </customizations>
    </module>
  </modules>
</extension>

--------------------

pdfjs.get.js

--------------------


for (var i=0; i<model.toolbarItems.length; i++)
{
  if (model.toolbarItems[i].id == "download")
  {
    model.toolbarItems[i].disabled = true;
  }
}

  • Disable Print 功能

修改tomcat/webapps/share/WEB-INF/classes/alfresco/templates/org/alfresco/document-detail.ftl文件

<@templateHeader>
   <@script type="text/javascript" src="${url.context}/res/modules/documentlibrary/doclib-actions.js" group="document-details"/>
   <@link rel="stylesheet" type="text/css" href="${url.context}/res/components/document-details/document-details-panel.css" group="document-details"/>
   <@templateHtmlEditorAssets />
   <!-- Disable Print -->
   <style type="text/css" media="print">
        BODY {display:none;visibility:hidden;}
  </style>
 
</@>










你可能感兴趣的:(alfresco)