1 <html xmlns="http://www.w3.org/1999/xhtml"
2 metal:use-macro="here/main_template/macros/master">
5 <meta http-equiv="content-type" content="text/html;charset=UTF-8" />
6 <metal:block metal:fill-slot="javascript_head_slot">
7 <script type="text/javascript" tal:attributes="src string:$portal_url/cart_widgets.js"></script>
8 <script type="text/javascript" tal:attributes="src string:$portal_url/photo_lightbox_viewer.js"></script>
10 tal:define="AddPortalContent modules/Products/CMFCore/permissions/AddPortalContent"
11 tal:condition="python: mtool.checkPermission(AddPortalContent, here)">
12 <script type="text/javascript" tal:attributes="src string:$portal_url/fileupload.js" charset="utf-8"></script>
13 <script type="text/javascript" tal:attributes="src string:$portal_url/portfolio_upload.js" charset="utf-8"></script>
16 <title>portfolio_view</title>
19 <body i18n:domain="portfolio">
20 <div metal:fill-slot="header" tal:omit-tag="" tal:condition="not:here/hasPresentationPage">
21 <h1 id="DesktopTitle">
22 <span tal:replace="here/title_or_id">Page Title</span>
24 <div id="DesktopDescription" tal:content="structure here/Description">
25 Description of the resource goes here, perhaps even wrapping lines; this is to make it long enough to test.
29 <div metal:fill-slot="main" tal:omit-tag=""
30 tal:define="AddPortalContent modules/Products/CMFCore/permissions/AddPortalContent;
31 dropable python:mtool.checkPermission(AddPortalContent, here);
32 Batch python:modules['Products.Plinn'].Batch;
33 pho_start python:request.get('pho_start', 0);
34 port_start python:request.get('port_start', 0);
35 portfolios python:Batch(here.listNearestFolderContents(contentFilter={'portal_type' : 'Portfolio'}),
36 16, port_start, orphan=1, quantumleap=1, b_start_str='port_start');">
37 <div tal:condition="python:here.hasPresentationPage() and pho_start < 20"
38 tal:content="structure here/presentation_page">custom presentation</div>
39 <div tal:condition="portfolios" tal:omit-tag="">
40 <div tal:define="batch portfolios" tal:omit-tag="">
41 <div metal:use-macro="here/batch_macros/macros/navigation">batch navigation</div>
42 <div class="portfolio_lightbox">
43 <a tal:repeat="portfolio batch"
44 tal:attributes="href portfolio/absolute_url">
45 <span tal:define="sphoto portfolio/samplePhoto" tal:omit-tag="">
46 <span tal:condition="sphoto" tal:omit-tag="">
47 <img tal:attributes="src sphoto/src;
50 width sphoto/width;"/>
52 <span tal:condition="not:sphoto" tal:omit-tag="">
53 <img tal:attributes="src here/empty_portfolio.gif/absolute_url;
54 alt portfolio/title_or_id"/>
57 <h3 tal:content="portfolio/Title">Portfolio title or id</h3>
58 <div tal:content="portfolio/Description"></div>
64 <div tal:define="batchInfos python:here.getPhotosInfos(here);
65 batch batchInfos/batch;
66 infos batchInfos/infos;
67 features batchInfos/features"
69 <form tal:attributes="action string:${here/absolute_url}/portfolio_edit_form" method="post">
70 <div id="lightbox_toolbar" class="image_toolbar"
71 tal:define="ModifyPortalContent modules/Products/CMFCore/permissions/ModifyPortalContent"
72 tal:condition="python:mtool.checkPermission(ModifyPortalContent, here)">
74 <span i18n:translate="" tal:omit-tag="">sort:</span>
76 <option value="position" i18n:translate="">manual</option>
77 <option value="DateTimeOriginal" i18n:translate="">shooting</option>
78 <option value="modified" i18n:translate="">modification</option>
81 <input type="image" width="17" height="27" alt="delete" title="delete"
83 tal:attributes="src string:$portal_url/trash_btn.gif"
84 i18n:attributes="alt;title"/>
88 <div metal:use-macro="here/photo_layout_macros/macros/grid">