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>
</@>