在Plone atreal.richfile.preview的WRT定製atreal.richfile.preview的,文件預覽,有一個名爲viewlet.pt模板,它包含顯示控制激活/更新一個TAL語句,刷新並摺疊操作菜單:。完整的代碼片段:定製在Plone
<dl class="richfile portlet"
tal:condition="view/available"
tal:attributes="id view/plugin_id"
i18n:domain="atreal.richfile.preview">
<dt tal:attributes="id string:${view/plugin_id}Header" class="rfheader portletHeader">
<span class="portletTopLeft"></span>
<!--tal:block tal:replace="structure view/controls" -->
<span class="title" style="font-weight:bold"
i18n:translate="">
Preview
</span>
<span class="portletTopRight"> <span>
</dt>
<dd tal:content="structure view/getPreview" >
<!--Your specific code here-->
<IFRAME src="http://somesite.com"
tal:attributes="src string:${here/absolute_url}/rfpreview"
ondragstart="false" onselectstart="false"
width="100%" height="400" scrolling="auto" frameborder="0"> </IFRAME>
<!--End of specific code-->
</dd>
</dl>
如果我刪除<tal:block tal:replace="structure view/controls" >
,我可以正確地查看DOC,XLS,ODT文件格式。但對於pdf文件的所有內容混亂起來。如果我保留上面的聲明,它會打開另一個窗口,當我單擊操作控件激活/更新或刷新並正確查看時,但它會下載doc xls和其他文件(由於超鏈接而不預期)
另請注意,在將默認<dd>
屬性更改爲<dd tal:content="structure view/getPreview">
後,還可以查看不帶背景圖片的pdf文件。
如果語句保持原樣,打開一個新的窗口那裏有圖標的放大,縮小,打印,保存爲。我希望在這個窗口中禁用這些。 (我禁用複製粘貼我可以用JavaScript在viewlet中做),但它不會發生在新窗口中。我無法檢測到這個新的模板窗口。
主要目的是防止任何形式的任何文件複製/粘貼/下載從Plone站點,但應該允許文件預覽。
任何人都可以正確指導ZMI中的確切位置以及如何定製它? Plone的4.1