在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