Implémentation d’une méthode utilitaire pour indexer les cases à cocher.
[Plinn.git] / skins / generic / folder_contents_macros.pt
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
3 <html xmlns="http://www.w3.org/1999/xhtml">
4
5 <head>
6 <meta http-equiv="content-type" content="text/html;charset=UTF-8" />
7 <title>folder contents macros</title>
8 </head>
9
10 <body i18n:domain="cmf_default" metal:define-macro="FolderListing"
11 tal:define="batch_dict options/batch;
12 batch batch_dict/batch_obj;
13 listColumnInfos batch_dict/listColumnInfos;
14 listItemInfos batch_dict/listItemInfos;"
15 tal:omit-tag="">
16 <div style="display:none">
17 <span id="FolderUrl" tal:content="here/absolute_url" >Folder url for script</span>
18 <span tal:condition="options/form/is_orderable" tal:omit-tag="">
19 <span id="FirstItemPos" tal:content="python:listItemInfos[0]['position']">first batch item position</span>
20 <span id="BatchNavigationSize" tal:content="batch/size"></span>
21 </span>
22 </div>
23 <!-- batch navigation -->
24 <div tal:define="navBatchBarId string:topNavBatchBar" tal:omit-tag="">
25 <span metal:use-macro="here/batch_macros/macros/navigation">batch navigation</span>
26 </div>
27 <table class="listing" cellspacing="0">
28 <thead id="FolderListingHeader">
29 <tr>
30 <th tal:attributes="width column_info/width; colspan column_info/colspan" tal:repeat="column_info listColumnInfos" nowrap="nowrap" >
31 <a href="." tal:attributes="href column_info/url" tal:content="column_info/title" i18n:translate="">Type</a>
32 <span tal:repeat="img column_info/images" tal:omit-tag="">
33 <a tal:omit-tag="python:not img.has_key('href')"
34 tal:attributes="href img/href|nothing ; title img/alt" i18n:attributes="title"
35 ><img tal:attributes="src img/src ; alt img/alt ; id img/id|nothing" border="0" i18n:attributes="alt" /></a>
36 </span>
37 </th>
38 <td colspan="5" tal:replace="nothing"></td>
39 </tr>
40 </thead>
41 <tbody id="FolderListingBody">
42 <tbody tal:repeat="item_info listItemInfos" tal:omit-tag="">
43 <tr class="" tal:attributes="class python: (even and 'even') or 'odd'" tal:define="even repeat/item_info/even">
44 <td><img src="." alt="lock" height="16" width="16" border="0"
45 tal:condition="python:not isAnon and item_info['lock']"
46 tal:attributes="src here/lock.gif/absolute_url"
47 i18n:attributes="alt" /></td>
48 <td>
49 <input id="" type="checkbox" name="ids:list" value=""
50 tal:attributes="value item_info/id; id item_info/checkbox" tal:condition="item_info/checkbox" />
51 </td>
52 <td>
53 <a href="." tal:attributes="href item_info/url" tal:condition="item_info/icon">
54 <img src="." alt="" tal:attributes="src item_info/icon; alt item_info/type" border="0" i18n:attributes="alt" />
55 </a>
56 </td>
57 <td>
58 <a href="." tal:attributes="href item_info/url" tal:content="item_info/title_or_id">title or id</a>
59 </td>
60 <td>
61 <span tal:replace="item_info/modified">2001</span>
62 </td>
63 <td>
64 <span tal:replace="item_info/position">1</span>
65 </td>
66 </tr>
67 </tbody>
68 </tbody>
69 </table>
70 <!-- batch navigation -->
71 <div tal:define="navBatchBarId string:bottomNavBatchBar" tal:omit-tag="">
72 <span metal:use-macro="here/batch_macros/macros/navigation">batch navigation</span>
73 </div>
74 <script type="text/javascript">
75 //<!--
76 // variables for drag-and-drop ordered support
77 var ddEnabled = false
78 try {
79 var firstItemPos = parseInt(document.getElementById("FirstItemPos").innerHTML);
80 ddEnabled = true;
81 }
82 catch (e) {}
83
84 var topNavBatchBar = document.getElementById("topNavBatchBar");
85 var bottomNavBatchBar = document.getElementById("bottomNavBatchBar");
86 var listing = document.getElementById("FolderListingBody");
87
88 if (ddEnabled) {
89 var rows = listing.getElementsByTagName("TR")
90 for ( var i = 0 ; i < rows.length ; i++ )
91 rows[i].pos = i + firstItemPos;
92
93 var fDDcontroler = new FolderDDropControler(listing);
94 var topNavBatchBar = document.getElementById("topNavBatchBar");
95 var bottomNavBatchBar = document.getElementById("bottomNavBatchBar");
96 if (topNavBatchBar && bottomNavBatchBar) {
97 new DropTarget(topNavBatchBar, fDDcontroler);
98 new DropTarget(bottomNavBatchBar, fDDcontroler);
99 }
100 }
101
102
103 addListener(document.getElementById("FolderListingHeader"), "click", loadListing);
104 if (topNavBatchBar && bottomNavBatchBar) {
105 addListener(topNavBatchBar, "click", loadListing);
106 addListener(bottomNavBatchBar, "click", loadListing);
107 }
108
109 //-->
110 </script>
111 </body>
112
113 </html>