Mercurial > p > roundup > code
comparison website/issues/html/issue.item.html @ 4024:c2d0d3e9099d website
svn repository setup
| author | Stefan Seefeld <stefan@users.sourceforge.net> |
|---|---|
| date | Fri, 06 Feb 2009 13:16:31 +0000 |
| parents | |
| children | 20e0e5ce217f |
comparison
equal
deleted
inserted
replaced
| 4023:86c38b5aed66 | 4024:c2d0d3e9099d |
|---|---|
| 1 <tal:block metal:use-macro="templates/page/macros/icing"> | |
| 2 <title metal:fill-slot="head_title"> | |
| 3 <tal:block condition="context/id" i18n:translate="" | |
| 4 >Issue <span tal:replace="context/id" i18n:name="id" | |
| 5 />: <span tal:replace="context/title" i18n:name="title" | |
| 6 /> - <span tal:replace="config/TRACKER_NAME" i18n:name="tracker" | |
| 7 /></tal:block> | |
| 8 <tal:block condition="not:context/id" i18n:translate="" | |
| 9 >New Issue - <span tal:replace="config/TRACKER_NAME" i18n:name="tracker" | |
| 10 /></tal:block> | |
| 11 </title> | |
| 12 <tal:block metal:fill-slot="body_title"> | |
| 13 <span tal:condition="python: not (context.id or context.is_edit_ok())" | |
| 14 tal:omit-tag="python:1" i18n:translate="">New Issue</span> | |
| 15 <span tal:condition="python: not context.id and context.is_edit_ok()" | |
| 16 tal:omit-tag="python:1" i18n:translate="">New Issue Editing</span> | |
| 17 <span tal:condition="python: context.id and not context.is_edit_ok()" | |
| 18 tal:omit-tag="python:1" i18n:translate="">Issue <tal:x | |
| 19 replace="context/id" i18n:name="id" /></span> | |
| 20 <span tal:condition="python: context.id and context.is_edit_ok()" | |
| 21 tal:omit-tag="python:1" i18n:translate="">Issue<tal:x | |
| 22 replace="context/id" i18n:name="id" /> Editing</span> | |
| 23 </tal:block> | |
| 24 | |
| 25 <td class="content" metal:fill-slot="content"> | |
| 26 | |
| 27 <p tal:condition="python:not (context.is_view_ok() | |
| 28 or request.user.hasRole('Anonymous'))" i18n:translate=""> | |
| 29 You are not allowed to view this page.</p> | |
| 30 | |
| 31 <p tal:condition="python:not context.is_view_ok() | |
| 32 and request.user.hasRole('Anonymous')" i18n:translate=""> | |
| 33 Please login with your username and password.</p> | |
| 34 | |
| 35 <div tal:condition="context/is_view_ok"> | |
| 36 | |
| 37 <form method="POST" name="itemSynopsis" | |
| 38 onSubmit="return submit_once()" enctype="multipart/form-data" | |
| 39 tal:attributes="action context/designator"> | |
| 40 | |
| 41 <fieldset><legend>classification</legend> | |
| 42 <table class="form"> | |
| 43 <tr> | |
| 44 <th class="required" i18n:translate="">Title:</th> | |
| 45 <td colspan="3" tal:condition="context/title/is_edit_ok" | |
| 46 tal:content="structure python:context.title.field(size=60)">title</td> | |
| 47 <td colspan="3" tal:condition="not:context/title/is_edit_ok"> | |
| 48 <span tal:content="structure context/title/plain"/> | |
| 49 <input type="hidden" name="title" tal:attributes="value context/title"> | |
| 50 </td> | |
| 51 </tr> | |
| 52 | |
| 53 <tr> | |
| 54 <th class="required" i18n:translate=""> | |
| 55 <span tal:replace="structure python:db.issue_type.classhelp('id,name,description',label='Type')" />: | |
| 56 </th> | |
| 57 <td tal:content="structure context/type/menu">type</td> | |
| 58 <th i18n:translate=""> | |
| 59 <span tal:replace="structure python:db.severity.classhelp('id,name,description',label='Severity')" />: | |
| 60 </th> | |
| 61 <td tal:content="structure context/severity/menu">components</td> | |
| 62 </tr> | |
| 63 | |
| 64 <tr> | |
| 65 <th i18n:translate=""> | |
| 66 <span tal:replace="structure python:db.component.classhelp('id,name,description',label='Components')" />: | |
| 67 </th> | |
| 68 <td tal:content="structure context/components/menu">components</td> | |
| 69 <th i18n:translate=""> | |
| 70 <span tal:replace="structure python:db.version.classhelp('id,name,description',label='Versions')" />: | |
| 71 </th> | |
| 72 <td tal:content="structure context/versions/menu">versions</td> | |
| 73 </tr> | |
| 74 </table> | |
| 75 </fieldset> | |
| 76 | |
| 77 <fieldset><legend>process</legend> | |
| 78 <table class="form"> | |
| 79 <tr tal:condition="context/id"> | |
| 80 <th i18n:translate=""> | |
| 81 <span tal:replace="structure python:db.status.classhelp('id,name,description',label='Status')" />: | |
| 82 </th> | |
| 83 <td tal:content="structure context/status/menu">status</td> | |
| 84 <th i18n:translate="">Resolution:</th> | |
| 85 <td tal:content="structure context/resolution/menu">resolution</td> | |
| 86 </tr> | |
| 87 | |
| 88 <tr tal:condition="context/id"> | |
| 89 <th> | |
| 90 <tal:block i18n:translate="">Dependencies</tal:block>: | |
| 91 <span tal:condition="context/dependencies/is_edit_ok" | |
| 92 tal:replace="structure python:db.issue.classhelp('id,title', filter='status=0,1', property='dependencies')" /> | |
| 93 </th> | |
| 94 <td> | |
| 95 <span tal:replace="structure python:context.dependencies.field(showid=1,size=20)" /> | |
| 96 <span tal:condition="context/dependencies" tal:repeat="d python:context.dependencies.sorted('creation')"> | |
| 97 <br/>View: <a tal:attributes="href string:issue${d/id}" tal:content="d/id"></a> | |
| 98 </span> | |
| 99 </td> | |
| 100 <th i18n:translate=""> | |
| 101 <tal:block i18n:translate="">Superseder</tal:block>: | |
| 102 <span tal:condition="context/superseder/is_edit_ok" | |
| 103 tal:replace="structure python:db.issue.classhelp('id,title', filter='status=0,1', property='superseder')" /> | |
| 104 </th> | |
| 105 <td> | |
| 106 <span tal:replace="structure python:context.superseder.field(showid=1, size=20)" /> | |
| 107 <span tal:condition="context/superseder"> | |
| 108 <!-- <br><span i18n:translate="">View</span>: | |
| 109 <a tal:repeat="sup context/superseder" | |
| 110 tal:content="python:sup['id'] + ', '*(not repeat['sup'].end)" | |
| 111 tal:attributes="href string:issue${sup/id}; title sup/title;"></a> --> | |
| 112 <br><span i18n:translate="">View</span>: | |
| 113 <a tal:content="context/superseder/id" | |
| 114 tal:attributes="href string:issue${context/superseder/id}; title context/superseder/title;"></a> | |
| 115 </span> | |
| 116 </td> | |
| 117 </tr> | |
| 118 <tr> | |
| 119 <th><tal:block i18n:translate="">Assigned To</tal:block>:</th> | |
| 120 <td tal:condition="context/status/is_edit_ok"> | |
| 121 <select name="assignee"> | |
| 122 <option value="-1">nobody</option> | |
| 123 <tal:block tal:repeat="userdata python:db._db.user.filter_sql('select id,_username from _user where _roles like \'%Developer%\' order by _username')"> | |
| 124 <option tal:attributes="value python:userdata[0]; | |
| 125 selected python:str(userdata[0]) == context.assignee._value" | |
| 126 tal:content="python:userdata[1]"></option> | |
| 127 </tal:block> | |
| 128 </select> | |
| 129 </td> | |
| 130 <td tal:condition="not:context/assignee/is_edit_ok"> | |
| 131 <span tal:replace="structure context/assignee/plain" /> | |
| 132 </td> | |
| 133 <th><tal:block i18n:translate="">Nosy List</tal:block>: | |
| 134 <span tal:condition="context/nosy/is_edit_ok" | |
| 135 tal:replace="structure python:db.user.classhelp('username,realname,address', property='nosy')" /> | |
| 136 </th> | |
| 137 <td> | |
| 138 <span tal:replace="structure context/nosy/field" /> | |
| 139 </td> | |
| 140 </tr> | |
| 141 <tr> | |
| 142 <th> | |
| 143 <span tal:replace="structure python:db.priority.classhelp('id,name,description',label='Priority')" />: | |
| 144 </th> | |
| 145 <td tal:content="structure context/priority/menu">priority</td> | |
| 146 <th i18n:translate="">Keywords:</th> | |
| 147 <td tal:content="structure python:context['keywords'].menu(height=5)">keywords</td> | |
| 148 | |
| 149 | |
| 150 </tr> | |
| 151 <tr tal:condition="context/is_edit_ok"> | |
| 152 <th><tal:block i18n:translate="">Comment</tal:block>:</th> | |
| 153 <td colspan="3"> | |
| 154 <textarea tal:content="request/form/@note/value | default" | |
| 155 name="@note" wrap="hard" rows="10" cols="72"></textarea> | |
| 156 </td> | |
| 157 </tr> | |
| 158 | |
| 159 <tr tal:condition="context/is_edit_ok"> | |
| 160 <th><tal:block i18n:translate="">File</tal:block>:</th> | |
| 161 <td colspan=3> | |
| 162 <input type="hidden" name="@link@files" value="file-1"> | |
| 163 <input type="file" name="file-1@content" size="40"> | |
| 164 </td> | |
| 165 </tr> | |
| 166 <tr tal:condition="context/is_edit_ok"> | |
| 167 <th><tal:block i18n:translate="">File Description</tal:block>:</th> | |
| 168 <td colspan=3><input type="edit" name="file-1@description" size="40"></td> | |
| 169 </tr> | |
| 170 </table> | |
| 171 </fieldset> | |
| 172 <table class="form"> | |
| 173 <tr tal:condition="context/is_edit_ok"> | |
| 174 <td> | |
| 175 | |
| 176 <input type="hidden" name="@template" value="item"> | |
| 177 <input type="hidden" name="@required" value="title"> | |
| 178 </td> | |
| 179 <td colspan=3> | |
| 180 <span tal:replace="structure context/submit">submit button</span> | |
| 181 <a tal:condition="context/id" tal:attributes="href context/copy_url" | |
| 182 i18n:translate="">Make a copy</a> | |
| 183 </td> | |
| 184 </tr> | |
| 185 </table> | |
| 186 </form> | |
| 187 | |
| 188 <p tal:condition="context/id" i18n:translate=""> | |
| 189 Created on <b><tal:x replace="python:context.creation.pretty('%Y-%m-%d %H:%M')" i18n:name="creation" /></b> | |
| 190 by <b><tal:x replace="context/creator" i18n:name="creator" /></b>, | |
| 191 last changed <b><tal:x replace="python:context.activity.pretty('%Y-%m-%d %H:%M')" i18n:name="activity" /></b> | |
| 192 by <b><tal:x replace="context/actor" i18n:name="actor" /></b>. | |
| 193 </p> | |
| 194 | |
| 195 <table class="files" tal:condition="context/files"> | |
| 196 <tr><th colspan="5" class="header" i18n:translate="">Files</th></tr> | |
| 197 <tr> | |
| 198 <th i18n:translate="">File name</th> | |
| 199 <th i18n:translate="">Uploaded</th> | |
| 200 <th i18n:translate="">Description</th> | |
| 201 <th i18n:translate="">Edit</th> | |
| 202 <th i18n:translate="">Remove</th> | |
| 203 </tr> | |
| 204 <tr tal:repeat="file python:context.files.sorted('creation')"> | |
| 205 <td> | |
| 206 <a tal:attributes="href file/download_url" | |
| 207 tal:content="file/name">dld link</a> | |
| 208 </td> | |
| 209 <td> | |
| 210 <span tal:content="file/creator">creator's name</span>, | |
| 211 <span tal:content="python:file.creation.pretty('%Y-%m-%d %H:%M')">creation date</span> | |
| 212 </td> | |
| 213 <td tal:content="file/description" /> | |
| 214 <td><a tal:condition="file/is_edit_ok" | |
| 215 tal:attributes="href string:file${file/id}">edit</a> | |
| 216 </td> | |
| 217 <td> | |
| 218 <form style="padding:0" tal:condition="file/is_edit_ok" | |
| 219 tal:attributes="action string:issue${context/id}"> | |
| 220 <input type="hidden" name="@remove@files" tal:attributes="value file/id"> | |
| 221 <input type="hidden" name="@action" value="edit"> | |
| 222 <input type="submit" value="remove" i18n:attributes="value"> | |
| 223 </form> | |
| 224 </td> | |
| 225 </tr> | |
| 226 </table> | |
| 227 | |
| 228 <table class="messages" tal:condition="context/messages"> | |
| 229 <tr><th colspan="4" class="header" i18n:translate="">Messages</th></tr> | |
| 230 <tal:block tal:repeat="msg context/messages"> | |
| 231 <tr> | |
| 232 <th><a tal:attributes="href string:msg${msg/id}" | |
| 233 i18n:translate="">msg<tal:x replace="msg/id" i18n:name="id" /></a></th> | |
| 234 <th i18n:translate="">Author: <tal:x replace="python:msg.author.realname.plain()" | |
| 235 i18n:name="author" /> (<tal:x replace="msg/author"/>)</th> | |
| 236 <th i18n:translate="">Date: <tal:x replace="python:msg.date.pretty('%Y-%m-%d %H:%M')" | |
| 237 i18n:name="date" /></th> | |
| 238 <th> | |
| 239 <form style="padding:0" tal:condition="msg/is_edit_ok" | |
| 240 tal:attributes="action string:issue${context/id}"> | |
| 241 <input type="hidden" name="@remove@messages" tal:attributes="value msg/id"> | |
| 242 <input type="hidden" name="@action" value="edit"> | |
| 243 <input type="submit" value="remove" i18n:attributes="value"> | |
| 244 </form> | |
| 245 </th> | |
| 246 </tr> | |
| 247 <tr> | |
| 248 <td colspan="4" class="content"> | |
| 249 <pre tal:condition="python:msg.content.is_view_ok()" | |
| 250 tal:content="structure python:utils.localReplace(msg.content.hyperlinked())">content</pre> | |
| 251 </td> | |
| 252 </tr> | |
| 253 </tal:block> | |
| 254 </table> | |
| 255 | |
| 256 <tal:block tal:condition="context/id" tal:replace="structure context/history" /> | |
| 257 | |
| 258 </div> | |
| 259 | |
| 260 </td> | |
| 261 | |
| 262 </tal:block> |
