Mercurial > p > roundup > code
changeset 4159:01c9c82cf2e6 gsoc-2009
Modified user.item to allow Subversion login, and still working on bug.item
| author | Pygi <pygi@users.sourceforge.net> |
|---|---|
| date | Thu, 02 Jul 2009 12:44:28 +0000 |
| parents | e1870046daff |
| children | 7acbd69a0aa0 |
| files | scripts/notify-roundup/html/bug.item.html scripts/notify-roundup/html/user.item.html |
| diffstat | 2 files changed, 442 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/notify-roundup/html/bug.item.html Thu Jul 02 12:44:28 2009 +0000 @@ -0,0 +1,273 @@ +<tal:block metal:use-macro="templates/page/macros/frame"> +<title metal:fill-slot="head_title"> +<tal:block condition="context/id" i18n:translate="" + >Bug <span tal:replace="context/id" i18n:name="id" + />: <span tal:replace="context/title" i18n:name="title" + /> - <span tal:replace="config/TRACKER_NAME" i18n:name="tracker" +/></tal:block> +<tal:block condition="not:context/id" i18n:translate="" + >New Bug report - <span tal:replace="config/TRACKER_NAME" i18n:name="tracker" +/></tal:block> +</title> +<tal:block metal:fill-slot="body_title"> + <span tal:condition="python: not (context.id or context.is_edit_ok())" + tal:omit-tag="python:1" i18n:translate="">New Bug</span> + <span tal:condition="python: not context.id and context.is_edit_ok()" + tal:omit-tag="python:1" i18n:translate="">New Bug Editing</span> + <span tal:condition="python: context.id and not context.is_edit_ok()" + tal:omit-tag="python:1" i18n:translate="">Bug <tal:x + replace="context/id" i18n:name="id" /></span> + <span tal:condition="python: context.id and context.is_edit_ok()" + tal:omit-tag="python:1" i18n:translate="">Bug<tal:x + replace="context/id" i18n:name="id" /> Editing</span> +</tal:block> + +<td class="content" metal:fill-slot="content"> + +<p tal:condition="python:not (context.is_view_ok() + or request.user.hasRole('Anonymous'))" i18n:translate=""> + You are not allowed to view this page.</p> + +<p tal:condition="python:not context.is_view_ok() + and request.user.hasRole('Anonymous')" i18n:translate=""> + Please login with your username and password.</p> + +<div tal:condition="context/is_view_ok"> + +<form method="POST" name="itemSynopsis" + onSubmit="return submit_once()" enctype="multipart/form-data" + tal:attributes="action context/designator"> + +<fieldset><legend>classification</legend> +<table class="form"> +<tr> + <th class="required" i18n:translate="">Title:</th> + <td colspan="3" tal:condition="context/title/is_edit_ok" + tal:content="structure python:context.title.field(size=40)">title</td> + <td colspan="3" tal:condition="not:context/title/is_edit_ok"> + <span tal:content="structure context/title/plain"/> + <input type="hidden" name="title" tal:attributes="value context/title"> + </td> +</tr> + +<tr> + <th class="required" i18n:translate=""> + <span tal:condition="context/type/is_edit_ok" + tal:replace="structure python:db.bug_type.classhelp('id,name,description',property='type',label='Type')" /> + <span tal:condition="not:context/type/is_edit_ok">Type</span>: + </th> + <td tal:content="structure context/type/menu">type</td> + <th i18n:translate=""> + <span tal:condition="context/severity/is_edit_ok" + tal:replace="structure python:db.severity.classhelp('id,name,description',property='severity',label='Severity')" /> + <span tal:condition="not:context/severity/is_edit_ok">Severity</span>: + </th> + <td tal:content="structure context/severity/menu">severity</td> +</tr> + +<tr> + <th i18n:translate=""> + <span tal:condition="context/components/is_edit_ok" + tal:replace="structure python:db.component.classhelp('id,name,description',property='components',label='Components')" /> + <span tal:condition="not:context/components/is_edit_ok">Components</span>: + </th> + <td tal:content="structure context/components/menu">components</td> + <th i18n:translate=""> + <span tal:condition="context/versions/is_edit_ok" + tal:replace="structure python:db.version.classhelp('id,name,description',property='versions',label='Versions')" /> + <span tal:condition="not:context/versions/is_edit_ok">Versions</span>: + </th> + <td tal:content="structure context/versions/menu">versions</td> +</tr> +</table> +</fieldset> + +<fieldset><legend>process</legend> +<table class="form"> +<tr tal:condition="context/id"> + <th i18n:translate=""> + <span tal:condition="context/status/is_edit_ok" + tal:replace="structure python:db.status.classhelp('id,name,description',property='status', label='Status')" /> + <span tal:condition="not:context/status/is_edit_ok">Status</span>: + </th> + <td tal:content="structure context/status/menu">status</td> + <th i18n:translate=""> + <span tal:condition="context/resolution/is_edit_ok" + tal:replace="structure python:db.resolution.classhelp('id,name,description',property='resolution', label='Resolution')" /> + <span tal:condition="not:context/resolution/is_edit_ok">Resolution</span>: + </th> + <td tal:content="structure context/resolution/menu">resolution</td> +</tr> + +<tr tal:condition="context/id"> + <th> + <tal:block i18n:translate="">Dependencies</tal:block>: + <span tal:condition="context/dependencies/is_edit_ok" + tal:replace="structure python:db.bug.classhelp('id,title', filter='status=0,1', property='dependencies')" /> + </th> + <td> + <span tal:replace="structure python:context.dependencies.field(showid=1,size=20)" /> + <span tal:condition="context/dependencies" tal:repeat="d python:context.dependencies.sorted('creation')"> + <br/>View: <a tal:attributes="href string:bug${d/id}" tal:content="d/id"></a> + </span> + </td> + <th i18n:translate=""> + <tal:block i18n:translate="">Superseder</tal:block>: + <span tal:condition="context/superseder/is_edit_ok" + tal:replace="structure python:db.bug.classhelp('id,title', filter='status=0,1', property='superseder')" /> + </th> + <td> + <span tal:replace="structure python:context.superseder.field(showid=1, size=20)" /> + <span tal:condition="context/superseder"> +<!-- <br><span i18n:translate="">View</span>: + <a tal:repeat="sup context/superseder" + tal:content="python:sup['id'] + ', '*(not repeat['sup'].end)" + tal:attributes="href string:bug${sup/id}; title sup/title;"></a> --> + <br><span i18n:translate="">View</span>: + <a tal:content="context/superseder/id" + tal:attributes="href string:bug${context/superseder/id}; title context/superseder/title;"></a> + </span> + </td> + </tr> + <tr> + <th><tal:block i18n:translate="">Assigned To</tal:block>:</th> + <td tal:content="structure context/assignee/menu">assignedto menu</td> + <th><tal:block i18n:translate="">Nosy List</tal:block>: + <span tal:condition="context/nosy/is_edit_ok" + tal:replace="structure python:db.user.classhelp('username,realname,address', property='nosy')" /> + </th> + <td> + <span tal:replace="structure context/nosy/field" /> + </td> +</tr> +<tr> + <th> + <span tal:condition="context/priority/is_edit_ok" + tal:replace="structure python:db.priority.classhelp('id,name,description',property='priority',label='Priority')" /> + <span tal:condition="not:context/priority/is_edit_ok">Priority</span>: + </th> + <td tal:content="structure context/priority/menu">priority</td> + <th i18n:translate="">Keywords:</th> + <td tal:content="structure python:context['keywords'].menu(height=5)">keywords</td> + + +</tr> +<tr tal:condition="context/is_edit_ok"> + <th><tal:block i18n:translate="">Comment</tal:block>:</th> + <td colspan="3"> + <textarea tal:content="request/form/@note/value | default" + name="@note" wrap="hard" rows="10" cols="60"></textarea> + </td> +</tr> + +<tr tal:condition="context/is_edit_ok"> + <th><tal:block i18n:translate="">File</tal:block>:</th> + <td colspan="3"> + <input type="hidden" name="@link@files" value="file-1"> + <input type="file" name="file-1@content" size="35"> + </td> +</tr> +<tr tal:condition="context/is_edit_ok"> + <th><tal:block i18n:translate="">File Description</tal:block>:</th> + <td colspan=3><input type="edit" name="file-1@description" size="40"></td> +</tr> +</table> +</fieldset> +<table class="form"> +<tr tal:condition="context/is_edit_ok"> + <td> + + <input type="hidden" name="@template" value="item"> + <input type="hidden" name="@required" value="title"> + </td> + <td colspan=3> + <span tal:replace="structure context/submit">submit button</span> + <a tal:condition="context/id" tal:attributes="href context/copy_url" + i18n:translate="">Make a copy</a> + </td> +</tr> +</table> +</form> + +<p tal:condition="context/id" i18n:translate=""> + Created on <b><tal:x replace="python:context.creation.pretty('%Y-%m-%d %H:%M')" i18n:name="creation" /></b> + by <b><tal:x replace="context/creator" i18n:name="creator" /></b>, + last changed <b><tal:x replace="python:context.activity.pretty('%Y-%m-%d %H:%M')" i18n:name="activity" /></b> + by <b><tal:x replace="context/actor" i18n:name="actor" /></b>. +</p> + +<table class="files" tal:condition="context/files"> + <tr><th colspan="5" class="header" i18n:translate="">Files</th></tr> + <tr> + <th i18n:translate="">File name</th> + <th i18n:translate="">Uploaded</th> + <th i18n:translate="">Description</th> + <th i18n:translate="">Edit</th> + <th i18n:translate="">Remove</th> + </tr> + <tr tal:repeat="file python:context.files.sorted('creation')"> + <td> + <a tal:attributes="href file/download_url" + tal:content="file/name">dld link</a> + </td> + <td> + <span tal:content="file/creator">creator's name</span>, + <span tal:content="python:file.creation.pretty('%Y-%m-%d %H:%M')">creation date</span> + </td> + <td tal:content="file/description" /> + <td><a tal:condition="file/is_edit_ok" + tal:attributes="href string:file${file/id}">edit</a> + </td> + <td> + <form style="padding:0" tal:condition="file/is_edit_ok" + tal:attributes="action string:bug${context/id}"> + <input type="hidden" name="@remove@files" tal:attributes="value file/id"> + <input type="hidden" name="@action" value="edit"> + <input type="submit" value="remove" i18n:attributes="value"> + </form> + </td> + </tr> +</table> + +<table class="messages" tal:condition="context/messages"> + <tr><th colspan="4" class="header" i18n:translate="">Messages</th></tr> + <tal:block tal:repeat="msg context/messages"> + <tr> + <th><a tal:attributes="href string:msg${msg/id}" + i18n:translate="">msg<tal:x replace="msg/id" i18n:name="id" /></a></th> + <th i18n:translate="">Author: <tal:x replace="python:msg.author.realname.plain()" + i18n:name="author" /> (<tal:x replace="msg/author"/>)</th> + <th i18n:translate="">Date: <tal:x replace="python:msg.date.pretty('%Y-%m-%d %H:%M')" + i18n:name="date" /></th> + <th> + <form style="padding:0" tal:condition="msg/is_edit_ok" + tal:attributes="action string:bug${context/id}"> + <input type="hidden" name="@remove@messages" tal:attributes="value msg/id"> + <input type="hidden" name="@action" value="edit"> + <input type="submit" value="remove" i18n:attributes="value"> + </form> + </th> + </tr> + <tr> + <tr tal:condition="msg/revision"> + <th tal:define="r msg/revision" colspan="4"> + <a tal:attributes="href string:svn_rev${r/id}" + tal:content="python:'Subversion revision %d'%r['revision']" /> + </th> + </tr> + + <td colspan="4" class="content"> + <pre tal:condition="python:msg.content.is_view_ok()" + tal:content="structure python:utils.localReplace(msg.content.hyperlinked())">content</pre> + </td> + </tr> + </tal:block> +</table> + +<tal:block tal:condition="context/id" tal:replace="structure context/history" /> + +</div> + +</td> + +</tal:block>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/notify-roundup/html/user.item.html Thu Jul 02 12:44:28 2009 +0000 @@ -0,0 +1,169 @@ +<tal:doc metal:use-macro="templates/page/macros/frame" +define="edit_ok context/is_edit_ok" +> +<title metal:fill-slot="head_title"> +<tal:if condition="context/id" i18n:translate="" + >User <span tal:replace="context/id" i18n:name="id" + />: <span tal:replace="context/username" i18n:name="title" + /> - <span tal:replace="config/TRACKER_NAME" i18n:name="tracker" +/></tal:if> +<tal:if condition="not:context/id" i18n:translate="" + >New User - <span tal:replace="config/TRACKER_NAME" i18n:name="tracker" +/></tal:if> +</title> +<metal:slot fill-slot="more-javascript"> +<script metal:use-macro="templates/page/macros/user_utils"></script> +<script type="text/javascript" src="@@file/help_controls.js"></script> +</metal:slot> +<tal:block metal:fill-slot="body_title" + define="edit_ok context/is_edit_ok"> + <span tal:condition="python: not (context.id or edit_ok)" + tal:omit-tag="python:1" i18n:translate="">New User</span> + <span tal:condition="python: not context.id and edit_ok" + tal:omit-tag="python:1" i18n:translate="">New User Editing</span> + <span tal:condition="python: context.id and not edit_ok" + tal:omit-tag="python:1" i18n:translate="">User<tal:x + replace="context/id" i18n:name="id" /></span> + <span tal:condition="python: context.id and edit_ok" + tal:omit-tag="python:1" i18n:translate="">User<tal:x + replace="context/id" i18n:name="id" /> Editing</span> +</tal:block> + +<td class="content" metal:fill-slot="content"> + +<p tal:condition="python:not (context.is_view_ok() + or request.user.hasRole('Anonymous'))" i18n:translate=""> + You are not allowed to view this page.</p> + +<p tal:condition="python:not context.is_view_ok() + and request.user.hasRole('Anonymous')" i18n:translate=""> + Please login with your username and password.</p> + +<div tal:condition="context/is_view_ok"> + +<form method="POST" + tal:define="required python:'username address'.split()" + enctype="multipart/form-data" + tal:attributes="action context/designator; + onSubmit python:'return checkRequiredFields(\'%s\')'%'\', \''.join(required); + "> +<table class="form" tal:define=" + th_label templates/page/macros/th_label; + src_input templates/page/macros/user_src_input; + normal_input templates/page/macros/user_normal_input; + pw_input templates/page/macros/user_pw_input; + confirm_input templates/page/macros/user_confirm_input; + edit_ok context/is_edit_ok; + "> + <tr tal:define="name string:realname; label string:Name; value context/realname; edit_ok edit_ok"> + <th metal:use-macro="th_label">Name</th> + <td><input name="realname" metal:use-macro="src_input"></td> + </tr> + <tr tal:define="name string:username; label string:Login Name; value context/username"> + <th metal:use-macro="th_label">Login Name</th> + <td><input metal:use-macro="src_input"></td> + </tr> + <tal:if condition="edit_ok"> + <tr tal:define="name string:password; label string:Login Password"> + <th metal:use-macro="th_label">Login Password</th> + <td><input metal:use-macro="pw_input" type="password"></td> + </tr> + <tr tal:define="name string:password; label string:Confirm Password"> + <th metal:use-macro="th_label">Confirm Password</th> + <td><input metal:use-macro="confirm_input" type="password"></td> + </tr> + </tal:if> + <tr> + <th i18n:translate="">Subversion login</th> + <td tal:content="structure context/svn_name/field">svn_name</td> + </tr> + <tal:if condition="python:request.user.hasPermission('Web Roles')"> + <tr tal:define="name string:roles; label string:Roles;"> + <th><label for="roles" i18n:translate="">Roles</label></th> + <td tal:define="gips context/id"> + <tal:subif condition=gips define="value context/roles"> + <input metal:use-macro="normal_input"> + </tal:subif> + <tal:subif condition="not:gips" define="value db/config/NEW_WEB_USER_ROLES"> + <input metal:use-macro="normal_input"> + </tal:subif> + <tal:block i18n:translate="">(to give the user more than one role, + enter a comma,separated,list)</tal:block> + </td> + </tr> + </tal:if> + + <tr tal:define="name string:phone; label string:Phone; value context/phone"> + <th metal:use-macro="th_label">Phone</th> + <td><input name="phone" metal:use-macro="normal_input"></td> + </tr> + + <tr tal:define="name string:organisation; label string:Organisation; value context/organisation"> + <th metal:use-macro="th_label">Organisation</th> + <td><input name="organisation" metal:use-macro="normal_input"></td> + </tr> + + <tr tal:condition="python:edit_ok or context.timezone" + tal:define="name string:timezone; label string:Timezone; value context/timezone"> + <th metal:use-macro="th_label">Timezone</th> + <td><input tal:replace="structure python: + utils.tzfield(context.timezone, 'timezone', db.config.DEFAULT_TIMEZONE)"/> + </td> + </tr> + + <tr tal:define="name string:address; label string:E-mail address; value context/address"> + <th metal:use-macro="th_label">E-mail address</th> + <td tal:define="mailto python:context.address.field(id='address'); + mklink python:mailto and not edit_ok"> + <a href="mailto:calvin@the-z.org" + tal:attributes="href string:mailto:$value" + tal:content="value" + tal:condition="python:mklink">calvin@the-z.org</a> + <tal:if condition=edit_ok> + <input metal:use-macro="src_input" value="calvin@the-z.org"> + </tal:if> + + </td> + </tr> + + <tr> + <th><label for="alternate_addresses" i18n:translate="">Alternate E-mail addresses<br>One address per line</label></th> + <td> + <textarea rows=5 cols=40 tal:replace="structure context/alternate_addresses/multiline">nobody@nowhere.org +anybody@everywhere.net +(alternate_addresses) + </textarea> + </td> + </tr> + + <tr tal:condition="edit_ok"> + <td> + + <input type="hidden" name="@template" value="item"> + <input type="hidden" name="@required" value="username,address" + tal:attributes="value python:','.join(required)"> + </td> + <td><input type="submit" value="save" tal:replace="structure context/submit"><!--submit button here--> + <input type="reset"> + </td> + </tr> +</table> +</form> + +<tal:block tal:condition="not:context/id" i18n:translate=""> +<table class="form"> +<tr> + <td>Note: </td> + <th class="required">highlighted</th> + <td> fields are required.</td> +</tr> +</table> +</tal:block> + +<tal:block tal:condition="context/id" tal:replace="structure context/history" /> + +</div> + +</td> + +</tal:doc>
