{"id":124,"date":"2014-09-30T15:46:09","date_gmt":"2014-09-30T15:46:09","guid":{"rendered":"http:\/\/192.168.2.32:8082\/?p=124"},"modified":"2019-01-03T10:13:15","modified_gmt":"2019-01-03T10:13:15","slug":"alfresco-download-wenn-schreibrecht","status":"publish","type":"post","link":"https:\/\/www.dev-metal.ch\/?p=124","title":{"rendered":"Alfresco: Kein Download bei Schreibrecht (Consumer)"},"content":{"rendered":"<p><!--more-->Alfresco-Share l\u00e4sst im Standard den Download von Objekten zu, sobald Leserechte vorhanden sind. Das macht grunds\u00e4tzlich so auch Sinn. Es kann aber doch sein, dass man unter gewissen Umst\u00e4nden den Download &#8222;verhindern&#8220; will, auch wenn der lesende Zugriff gestattet ist. Die hier beschriebene Methode verhindert den Download nicht per se in Alfresco (CIFS, etc.). Ich beschr\u00e4nke mich auf Alfresco-Share und begn\u00fcge mich auch damit, dass der Download-Button einfach nicht angezeigt wird. H\u00f6chstwahrscheinlich gibt es noch elegantere M\u00f6gichkeiten um dies in Alfresco zu bewerkstelligen. Die beschriebene L\u00f6sung gewinnt also bestimmt keinen &#8222;Sch\u00f6nheitspreis&#8220;. F\u00fcr meine Belange reicht&#8217;s aber aus:<\/p>\n<h1>Download-Links<\/h1>\n<p>Alfresco-Aktionen sind ab Version 4 global in<\/p>\n<pre class=\"lang:default decode:true\">\/opt\/alfresco\/tomcat\/webapps\/share\/WEB-INF\/classes\/alfresco\/share-documentlibrary-config.xml<\/pre>\n<p>Sektion DocLibActions definiert.<\/p>\n<p>Diese k\u00f6nnen \u00fcber<\/p>\n<pre class=\"lang:default decode:true \">\/opt\/alfresco\/tomcat\/shared\/classes\/alfresco\/web-extension\/share-config-custom.xml\r\n<\/pre>\n<p>\u00fcberschrieben werden:<\/p>\n<pre class=\"lang:default decode:true \">&lt;!-- Document Library Actions config section --&gt;\r\n       &lt;config evaluator=\"string-compare\" condition=\"DocLibActions\"&gt;\r\n         &lt;actions&gt;\r\n         &lt;!-- Download document --&gt;\r\n            &lt;action id=\"document-download\" type=\"link\" label=\"actions.document.download\"&gt;\r\n               &lt;param name=\"href\"&gt;{downloadUrl}&lt;\/param&gt;\r\n                   &lt;permissions&gt;\r\n                     &lt;permission allow=\"true\"&gt;Write&lt;\/permission&gt;\r\n                   &lt;\/permissions&gt;\r\n            &lt;\/action&gt;\r\n\r\n         &lt;!-- View document in browser --&gt;\r\n            &lt;action id=\"document-view-content\" type=\"link\" label=\"actions.document.view\"&gt;\r\n               &lt;param name=\"href\"&gt;{viewUrl}&lt;\/param&gt;\r\n                   &lt;permissions&gt;\r\n                     &lt;permission allow=\"true\"&gt;Write&lt;\/permission&gt;\r\n                   &lt;\/permissions&gt;\r\n            &lt;\/action&gt;\r\n\r\n         &lt;!-- Copy to --&gt;\r\n            &lt;action id=\"document-copy-to\" type=\"javascript\" label=\"actions.document.copy-to\"&gt;\r\n               &lt;param name=\"function\"&gt;onActionCopyTo&lt;\/param&gt;\r\n                   &lt;permissions&gt;\r\n                     &lt;permission allow=\"true\"&gt;Write&lt;\/permission&gt;\r\n                   &lt;\/permissions&gt;\r\n               &lt;evaluator negate=\"true\"&gt;evaluator.doclib.action.isLocked&lt;\/evaluator&gt;\r\n            &lt;\/action&gt;\r\n\r\n          &lt;!-- Assign workflow --&gt;\r\n            &lt;action id=\"document-assign-workflow\" type=\"javascript\" label=\"actions.document.assign-workflow\"&gt;\r\n               &lt;param name=\"function\"&gt;onActionAssignWorkflow&lt;\/param&gt;\r\n                   &lt;permissions&gt;\r\n                     &lt;permission allow=\"true\"&gt;Write&lt;\/permission&gt;\r\n                   &lt;\/permissions&gt;\r\n            &lt;\/action&gt;\r\n\r\n          &lt;!-- Publish document --&gt;\r\n            &lt;action id=\"document-publish\" type=\"javascript\" label=\"actions.document.publish\"&gt;\r\n               &lt;param name=\"function\"&gt;onActionPublish&lt;\/param&gt;\r\n                   &lt;permissions&gt;\r\n                     &lt;permission allow=\"true\"&gt;Write&lt;\/permission&gt;\r\n                   &lt;\/permissions&gt;\r\n               &lt;evaluator negate=\"true\"&gt;evaluator.doclib.action.isLocked&lt;\/evaluator&gt;\r\n            &lt;\/action&gt;\r\n\r\n         &lt;!-- Download folder --&gt;\r\n            &lt;action id=\"folder-download\" type=\"javascript\" label=\"actions.folder.download\" icon=\"document-download\"&gt;\r\n                 &lt;permissions&gt;\r\n                   &lt;permission allow=\"true\"&gt;Write&lt;\/permission&gt;\r\n                 &lt;\/permissions&gt;\r\n               &lt;param name=\"function\"&gt;onActionFolderDownload&lt;\/param&gt;\r\n            &lt;\/action&gt;\r\n         &lt;\/actions&gt;\r\n       &lt;\/config&gt;<\/pre>\n<h1>Download Button<\/h1>\n<p>Die Aktionen sind nicht der einzige Weg um ein Dokument herunterladen zu k\u00f6nnen. Auf der Dokumenten-Detail Ansicht gibt es auch noch einen grossen Download-Button, der weg muss:<\/p>\n<pre class=\"lang:default decode:true\">\/opt\/alfresco\/tomcat\/webapps\/share\/WEB-INF\/classes\/alfresco\/site-webscripts\/org\/alfresco\/components\/node-details\/node-header.get.html.ftl\r\n<\/pre>\n<ul>\n<li>Backup von diesem File erstellen<\/li>\n<li>Folgendes If-Statement kann ersatzlos gestrichen werden<\/li>\n<\/ul>\n<pre class=\"lang:default decode:true \">Select all\r\n          &lt;\\#if showDownload == \"true\"&gt;\r\n             &lt;!-- Download Button --&gt;\r\n             &lt;span class=\"yui-button yui-link-button onDownloadDocumentClick\"&gt;\r\n                &lt;span class=\"first-child\"&gt;\r\n                   &lt;a href=\"$\\{url.context\\}\/proxy\/alfresco\/$\\{node.contentURL?js_string\\}?a=true\" tabindex=\"0\"&gt;$\\{msg(\"button.download\")\\}&lt;\/a&gt;\r\n                &lt;\/span&gt;\r\n             &lt;\/span&gt;\r\n          &lt;\/\\#if&gt;\r\n<\/pre>\n<h1>Download as Zip<\/h1>\n<p>To disable Download As Zip Action, add the following entries in<\/p>\n<pre class=\"lang:default decode:true \">\/opt\/alfresco\/tomcat\/shared\/classes\/alfresco\/web-extension\/share-config-custom.xml \r\n<\/pre>\n<pre class=\"lang:default decode:true\"> &lt;!-- Custom DocLibActions config section --&gt;\r\n&lt;config evaluator=\"string-compare\" condition=\"DocLibActions\"&gt;\r\n \r\n &lt;actions&gt;\r\n     &lt;action id=\"folder-download\" type=\"javascript\" label=\"actions.folder.download\" icon=\"document-download\"&gt;\r\n\t &lt;param name=\"function\"&gt;onActionFolderDownload&lt;\/param&gt;\r\n \r\n          &lt;!-- Disable Action Evaluator --&gt;    \r\n         &lt;evaluator&gt;evaluator.doclib.action.disableAction&lt;\/evaluator&gt;\r\n     &lt;\/action&gt;\r\n&lt;\/actions&gt;\r\n \r\n&lt;\/config&gt;\r\n \r\n &lt;!-- Document Library config section --&gt;\r\n&lt;config evaluator=\"string-compare\" condition=\"DocumentLibrary\" replace=\"true\"&gt;\r\n \r\n&lt;multi-select&gt;\r\n \r\n        &lt;!--  Download as Zip commented\r\n           &lt;action type=\"action-link\" id=\"onActionDownload\" label=\"menu.selected-items.download\" \/&gt; \r\n        --&gt;\r\n         &lt;action type=\"action-link\" id=\"onActionCopyTo\" permission=\"Write\" label=\"menu.selected-items.copy\" \/&gt;\r\n         &lt;action type=\"action-link\" id=\"onActionMoveTo\" permission=\"Delete\" label=\"menu.selected-items.move\"\/&gt;\r\n         &lt;action type=\"action-link\" id=\"onActionAssignWorkflow\" asset=\"document\" label=\"menu.selected-items.assign-workflow\"\/&gt;\r\n         &lt;action type=\"action-link\" id=\"onActionDelete\" permission=\"Delete\" label=\"menu.selected-items.delete\"\/&gt;\r\n         &lt;action type=\"action-link\" id=\"onActionCloudSync\" asset=\"document\"  permission=\"CreateChildren\" label=\"menu.selected-items.cloudSync\" notAspect=\"sync:syncSetMemberNode\" syncMode=\"ON_PREMISE\" \/&gt;\r\n         &lt;action type=\"action-link\" id=\"onActionCloudSyncRequest\" label=\"menu.selected-items.cloudRequestSync\" hasAspect=\"sync:syncSetMemberNode\" syncMode=\"ON_PREMISE\" \/&gt;\r\n \r\n&lt;\/multi-select&gt;\r\n\r\n&lt;\/config&gt;<\/pre>\n<h1>Download Button auf Previewer entfernen<\/h1>\n<p>\u00dcber den Previewer ist es auch m\u00f6glich, einen Download anzustossen. Diese M\u00f6glichkeiten enferne ich gleich ganz. Das geht so: <a href=\"http:\/\/192.168.2.32:8082\/?p=534\">http:\/\/192.168.2.32:8082\/?p=534<\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[4,35],"tags":[15],"class_list":["post-124","post","type-post","status-publish","format-standard","hentry","category-alfresco","category-java","tag-java"],"modified_by":"ralph","_links":{"self":[{"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/posts\/124","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=124"}],"version-history":[{"count":11,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/posts\/124\/revisions"}],"predecessor-version":[{"id":844,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=\/wp\/v2\/posts\/124\/revisions\/844"}],"wp:attachment":[{"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=124"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=124"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dev-metal.ch\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=124"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}