74 lines
3.4 KiB
XML
74 lines
3.4 KiB
XML
<tal:comment replace="nothing">View macro for a File.</tal:comment>
|
|
<metal:view define-macro="view"
|
|
tal:define="empty python: not value or not value.size;
|
|
imageSrc string:${contextObj/absolute_url}/download?name=$name">
|
|
<tal:file condition="python: not empty and not widget['isImage']">
|
|
<img tal:define="icon value/getBestIcon"
|
|
tal:condition="icon" tal:attributes="src string: $portal_url/$icon"/>
|
|
<a tal:attributes="href imageSrc"
|
|
tal:content="value/filename">
|
|
</a> -
|
|
<i class="discreet" tal:content="python:'%sKb' % (value.size / 1024)"></i>
|
|
</tal:file>
|
|
<tal:image condition="python: not empty and widget['isImage']">
|
|
<img tal:attributes="src python: imageSrc" />
|
|
</tal:image>
|
|
<tal:nothing tal:condition="empty">-</tal:nothing>
|
|
</metal:view>
|
|
|
|
<tal:comment replace="nothing">Edit macro for an File.</tal:comment>
|
|
<metal:edit define-macro="edit">
|
|
<tal:showFile condition="python: value and value.size">
|
|
<metal:call use-macro="portal/skyn/widgets/file/macros/view"/><br/>
|
|
</tal:showFile>
|
|
<tal:editButtons condition="python: value and value.size">
|
|
<tal:comment replace="nothing">Keep the file untouched.</tal:comment>
|
|
<input class="noborder" type="radio" value="nochange"
|
|
tal:attributes="checked python:test(value.size!=0, 'checked', None);
|
|
name string:${name}_delete;
|
|
id string:${name}_nochange;
|
|
onclick string:document.getElementById('${name}_file').disabled=true;"/>
|
|
<label tal:attributes="for string:${name}_nochange"
|
|
i18n:translate="nochange_file" i18n:domain="plone">
|
|
</label>
|
|
<br/>
|
|
<tal:comment replace="nothing">Delete the file.</tal:comment>
|
|
<tal:delete condition="not: widget/required">
|
|
<input class="noborder" type="radio" value="delete"
|
|
tal:attributes="name string:${name}_delete;
|
|
id string:${name}_delete;
|
|
onclick string:document.getElementById('${name}_file').disabled=true;"/>
|
|
<label tal:attributes="for string:${name}_delete"
|
|
i18n:translate="delete_file" i18n:domain="plone">
|
|
</label>
|
|
<br/>
|
|
</tal:delete>
|
|
<tal:comment replace="nothing">Replace with a new file.</tal:comment>
|
|
<input class="noborder" type="radio" value=""
|
|
tal:attributes="checked python:test(value.size==0, 'checked', None);
|
|
name string:${name}_delete;
|
|
id string:${name}_upload;
|
|
onclick string:document.getElementById('${name}_file').disabled=false"/>
|
|
<label tal:attributes="for string:${name}_upload;"
|
|
i18n:translate="upload_file" i18n:domain="plone">
|
|
</label>
|
|
<br/>
|
|
</tal:editButtons>
|
|
<tal:comment replace="nothing">The upload field.</tal:comment>
|
|
<input type="file" size="30"
|
|
tal:attributes="name string:${name}_file;
|
|
id string:${name}_file;"/>
|
|
<script type="text/javascript"
|
|
tal:define="isDisabled python:test(value and value.size, 'true', 'false')"
|
|
tal:content="string: document.getElementById('${name}_file').disabled=$isDisabled;">
|
|
</script>
|
|
</metal:edit>
|
|
|
|
<tal:comment replace="nothing">Cell macro for an File.</tal:comment>
|
|
<metal:cell define-macro="cell">
|
|
<metal:call use-macro="portal/skyn/widgets/file/macros/view"/>
|
|
</metal:cell>
|
|
|
|
<tal:comment replace="nothing">Search macro for an File.</tal:comment>
|
|
<metal:search define-macro="search"></metal:search>
|