[Python-checkins] r88888 - in tracker/instances: board/html/_generic.index.html board/html/_generic.item.html board/html/_generic.keywords_expr.html board/html/issue.search.html board/html/page.html board/html/style.css board/schema.py jobs/html/_generic.index.html jobs/html/_generic.item.html jobs/html/_generic.keywords_expr.html jobs/html/offer.search.html jobs/html/page.html jobs/html/style.css jython/html/_generic.index.html jython/html/_generic.item.html jython/html/_generic.keywords_expr.html jython/html/issue.search.html jython/html/page.html jython/html/style.css meta/html/_generic.index.html meta/html/_generic.item.html meta/html/issue.search.html meta/html/page.html meta/html/style.css security/html/_generic.index.html security/html/_generic.item.html security/html/_generic.keywords_expr.html security/html/issue.search.html security/html/page.html security/html/style.css security/schema.py setuptools/html/_generic.index.html setuptools/html/_generic.item.html setuptools/html/_generic.keywords_expr.html setuptools/html/issue.search.html setuptools/html/page.html setuptools/html/style.css

ezio.melotti python-checkins at python.org
Sun Aug 21 17:55:28 CEST 2011


Author: ezio.melotti
Date: Sun Aug 21 17:55:28 2011
New Revision: 88888
Log:
#411: Upgrade the other instances to 1.4.19.
Added:
 tracker/instances/board/html/_generic.keywords_expr.html
 tracker/instances/jobs/html/_generic.keywords_expr.html
 tracker/instances/jython/html/_generic.keywords_expr.html
 tracker/instances/security/html/_generic.keywords_expr.html
 tracker/instances/setuptools/html/_generic.keywords_expr.html
Modified:
 tracker/instances/board/html/_generic.index.html
 tracker/instances/board/html/_generic.item.html
 tracker/instances/board/html/issue.search.html
 tracker/instances/board/html/page.html
 tracker/instances/board/html/style.css
 tracker/instances/board/schema.py
 tracker/instances/jobs/html/_generic.index.html
 tracker/instances/jobs/html/_generic.item.html
 tracker/instances/jobs/html/offer.search.html
 tracker/instances/jobs/html/page.html
 tracker/instances/jobs/html/style.css
 tracker/instances/jython/html/_generic.index.html
 tracker/instances/jython/html/_generic.item.html
 tracker/instances/jython/html/issue.search.html
 tracker/instances/jython/html/page.html
 tracker/instances/jython/html/style.css
 tracker/instances/meta/html/_generic.index.html
 tracker/instances/meta/html/_generic.item.html
 tracker/instances/meta/html/issue.search.html
 tracker/instances/meta/html/page.html
 tracker/instances/meta/html/style.css
 tracker/instances/security/html/_generic.index.html
 tracker/instances/security/html/_generic.item.html
 tracker/instances/security/html/issue.search.html
 tracker/instances/security/html/page.html
 tracker/instances/security/html/style.css
 tracker/instances/security/schema.py
 tracker/instances/setuptools/html/_generic.index.html
 tracker/instances/setuptools/html/_generic.item.html
 tracker/instances/setuptools/html/issue.search.html
 tracker/instances/setuptools/html/page.html
 tracker/instances/setuptools/html/style.css
Modified: tracker/instances/board/html/_generic.index.html
==============================================================================
--- tracker/instances/board/html/_generic.index.html	(original)
+++ tracker/instances/board/html/_generic.index.html	Sun Aug 21 17:55:28 2011
@@ -37,7 +37,8 @@
 
 <p class="form-help">
 Remove entries by deleting their line. Add new entries by appending
- them to the table - put an X in the id column.
+ them to the table - put an X in the id column. If you wish to restore a
+ removed item and you know its id then just put that id in the id column.
 </p>
 </tal:block>
 <form onSubmit="return submit_once()" method="POST"
Modified: tracker/instances/board/html/_generic.item.html
==============================================================================
--- tracker/instances/board/html/_generic.item.html	(original)
+++ tracker/instances/board/html/_generic.item.html	Sun Aug 21 17:55:28 2011
@@ -44,7 +44,12 @@
 
 </form>
 
-<tal:block tal:condition="context/id" tal:replace="structure context/history" />
+<tal:block tal:condition="context/id"
+ tal:define="limit python:[10, None][request.form.has_key('show_all_history')]"
+ tal:replace="structure python:context.history(limit=limit)" />
+<p tal:condition="not:exists:request/form/show_all_history" i18n:translate="">Showing 10 items.
+<a tal:attributes="href string:${context/_classname}${context/id}?show_all_history=yes">Show all history</a>
+(warning: this could be VERY long)</p>
 
 </div>
 
Added: tracker/instances/board/html/_generic.keywords_expr.html
==============================================================================
--- (empty file)
+++ tracker/instances/board/html/_generic.keywords_expr.html	Sun Aug 21 17:55:28 2011
@@ -0,0 +1,11 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <link rel="stylesheet" type="text/css" href="@@file/style.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8;" />
+ <title tal:content="string:Roundup Keywords Expression Editor"></title>
+ </head>
+ <body class="body"
+ tal:content="structure python:utils.keywords_expressions(request)">
+ </body>
+</html>
Modified: tracker/instances/board/html/issue.search.html
==============================================================================
--- tracker/instances/board/html/issue.search.html	(original)
+++ tracker/instances/board/html/issue.search.html	Sun Aug 21 17:55:28 2011
@@ -12,10 +12,10 @@
 cols python:request.columns or 'id activity title status assignedto'.split();
 sort_on python:request.sort and request.sort[0] or nothing;
 sort_desc python:sort_on and sort_on[0] == '-';
- sort_on python:(sort_on and sort_on[1]) or 'activity';
+ sort_on python:(sort_on and sort_on[1]) or (not request.nodeid and 'activity') or '';
 group_on python:request.group and request.group[0] or nothing;
 group_desc python:group_on and group_on[0] == '-';
- group_on python:(group_on and group_on[1]) or 'priority';
+ group_on python:(group_on and group_on[1]) or (not request.nodeid and 'priority') or '';
 
 search_input templates/page/macros/search_input;
 search_date templates/page/macros/search_date;
@@ -23,6 +23,7 @@
 sort_input templates/page/macros/sort_input;
 group_input templates/page/macros/group_input;
 search_select templates/page/macros/search_select;
+ search_select_keywords templates/page/macros/search_select_keywords;
 search_select_translated templates/page/macros/search_select_translated;
 search_multiselect templates/page/macros/search_multiselect;">
 
@@ -191,7 +192,7 @@
 db_klass string:keyword;
 db_content string:name;">
 <th i18n:translate="">Keyword:</th>
- <td metal:use-macro="search_select_translated">
+ <td metal:use-macro="search_select_keywords">
 <option metal:fill-slot="extra_options" value="-1" i18n:translate=""
 tal:attributes="selected python:value == '-1'">not set</option>
 </td>
@@ -244,8 +245,8 @@
 <th i18n:translate="">No Sort or group:</th>
 <td>&nbsp;</td>
 <td>&nbsp;</td>
- <td><input type="radio" name="@sort" value=""/></td>
- <td><input type="radio" name="@group" value=""/></td>
+ <td><input type="radio" name="@sort" value="" tal:attributes="checked python:sort_on == ''" /></td>
+ <td><input type="radio" name="@group" value="" tal:attributes="checked python:group_on == ''" /></td>
 </tr>
 
 <tr>
Modified: tracker/instances/board/html/page.html
==============================================================================
--- tracker/instances/board/html/page.html	(original)
+++ tracker/instances/board/html/page.html	Sun Aug 21 17:55:28 2011
@@ -130,7 +130,7 @@
 </li>
 <li>
 <a href="user?@template=register"
- tal:condition="python:request.user.hasPermission('Create', 'user')"
+ tal:condition="python:request.user.hasPermission('Register', 'user')"
 i18n:translate="">Register</a>
 	</li>
 <li><a href="user?@template=forgotten" i18n:translate="">Lost&nbsp;your&nbsp;login?</a>
@@ -283,7 +283,7 @@
 <input tal:attributes="value python:request.form.getvalue(name) or nothing;
 name name;
 id name"/>
- <span tal:replace="structure python:db.issue.classhelp(columns,
+ <span tal:replace="structure python:db[db_klass].classhelp(columns,
 property=name)" />
 </td>
 
@@ -299,6 +299,22 @@
 </select>
 </td>
 
+<td metal:define-macro="search_select_keywords">
+ <div tal:attributes="id python:'''keywords_%s'''%name">
+ <select tal:attributes="name name; id name"
+ tal:define="value python:request.form.getvalue(name)">
+ <option value="" i18n:translate="">don't care</option>
+ <metal:slot define-slot="extra_options" />
+ <option value="" i18n:translate="" disabled="disabled">------------</option>
+ <option tal:repeat="s python:db[db_klass].list()"
+ tal:attributes="value s/id; selected python:value == s.id"
+ tal:content="python:s[db_content]"></option>
+ </select>
+ <a class="classhelp"
+	 tal:attributes="href python:'''javascript:help_window('issue?@template=keywords_expr&property=%s&form=itemSynopsis', 350, 200)'''%name">(expr)</a>
+ </div>
+</td>
+
 <!-- like search_select, but translates the further values.
 Could extend it (METAL 1.1 attribute "extend-macro")
 -->
Modified: tracker/instances/board/html/style.css
==============================================================================
--- tracker/instances/board/html/style.css	(original)
+++ tracker/instances/board/html/style.css	Sun Aug 21 17:55:28 2011
@@ -33,13 +33,6 @@
 #searchbox { display: none;}
 }
 
-#searchbox { float: right;}
-
-div#body-title {
- float: left;
-}
-
-
 div#searchbox 
 {
 float: right;
@@ -456,6 +449,17 @@
 background-color: #ffffc0;
 }
 
+.calendar_display {
+ text-align: center;
+}
+
+.calendar_display td {
+ padding: 1px 4px 1px 4px;
+}
+
+.calendar_display .today {
+ background-color: #afafaf;
+}
 
 #demowarning {
 position: absolute;
Modified: tracker/instances/board/schema.py
==============================================================================
--- tracker/instances/board/schema.py	(original)
+++ tracker/instances/board/schema.py	Sun Aug 21 17:55:28 2011
@@ -80,6 +80,8 @@
 roles=String(), # comma-separated string of Role names
 timezone=String())
 user.setkey("username")
+db.security.addPermission(name='Register', klass='user',
+ description='User is allowed to register new user')
 
 # FileClass automatically gets this property in addition to the Class ones:
 # content = String() [saved to disk in <tracker home>/db/files/]
@@ -287,6 +289,9 @@
 description="User is allowed to view their own and public queries")
 for r in 'User', 'Board', 'Coordinator':
 db.security.addPermissionToRole(r, p)
+p = db.security.addPermission(name='Search', klass='query')
+for r in 'User', 'Board', 'Coordinator':
+ db.security.addPermissionToRole(r, p)
 p = db.security.addPermission(name='Edit', klass='query', check=edit_query,
 description="User is allowed to edit their queries")
 for r in 'User', 'Board', 'Coordinator':
@@ -315,7 +320,7 @@
 # Assign the appropriate permissions to the anonymous user's Anonymous
 # Role. Choices here are:
 # - Allow anonymous users to register
-#db.security.addPermissionToRole('Anonymous', 'Create', 'user')
+#db.security.addPermissionToRole('Anonymous', 'Register', 'user')
 
 # Allow anonymous users access to view issues (and the related, linked
 # information).
Modified: tracker/instances/jobs/html/_generic.index.html
==============================================================================
--- tracker/instances/jobs/html/_generic.index.html	(original)
+++ tracker/instances/jobs/html/_generic.index.html	Sun Aug 21 17:55:28 2011
@@ -37,7 +37,8 @@
 
 <p class="form-help">
 Remove entries by deleting their line. Add new entries by appending
- them to the table - put an X in the id column.
+ them to the table - put an X in the id column. If you wish to restore a
+ removed item and you know its id then just put that id in the id column.
 </p>
 </tal:block>
 <form onSubmit="return submit_once()" method="POST"
Modified: tracker/instances/jobs/html/_generic.item.html
==============================================================================
--- tracker/instances/jobs/html/_generic.item.html	(original)
+++ tracker/instances/jobs/html/_generic.item.html	Sun Aug 21 17:55:28 2011
@@ -44,7 +44,12 @@
 
 </form>
 
-<tal:block tal:condition="context/id" tal:replace="structure context/history" />
+<tal:block tal:condition="context/id"
+ tal:define="limit python:[10, None][request.form.has_key('show_all_history')]"
+ tal:replace="structure python:context.history(limit=limit)" />
+<p tal:condition="not:exists:request/form/show_all_history" i18n:translate="">Showing 10 items.
+<a tal:attributes="href string:${context/_classname}${context/id}?show_all_history=yes">Show all history</a>
+(warning: this could be VERY long)</p>
 
 </div>
 
Added: tracker/instances/jobs/html/_generic.keywords_expr.html
==============================================================================
--- (empty file)
+++ tracker/instances/jobs/html/_generic.keywords_expr.html	Sun Aug 21 17:55:28 2011
@@ -0,0 +1,11 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <link rel="stylesheet" type="text/css" href="@@file/style.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8;" />
+ <title tal:content="string:Roundup Keywords Expression Editor"></title>
+ </head>
+ <body class="body"
+ tal:content="structure python:utils.keywords_expressions(request)">
+ </body>
+</html>
Modified: tracker/instances/jobs/html/offer.search.html
==============================================================================
--- tracker/instances/jobs/html/offer.search.html	(original)
+++ tracker/instances/jobs/html/offer.search.html	Sun Aug 21 17:55:28 2011
@@ -12,10 +12,10 @@
 cols python:request.columns or 'id activity title status assignedto'.split();
 sort_on python:request.sort and request.sort[0] or nothing;
 sort_desc python:sort_on and sort_on[0] == '-';
- sort_on python:(sort_on and sort_on[1]) or 'activity';
+ sort_on python:(sort_on and sort_on[1]) or (not request.nodeid and 'activity') or '';
 group_on python:request.group and request.group[0] or nothing;
 group_desc python:group_on and group_on[0] == '-';
- group_on python:(group_on and group_on[1]) or 'status';
+ group_on python:(group_on and group_on[1]) or (not request.nodeid and 'priority') or '';
 
 search_input templates/page/macros/search_input;
 search_date templates/page/macros/search_date;
@@ -156,8 +156,8 @@
 <th i18n:translate="">No Sort or group:</th>
 <td>&nbsp;</td>
 <td>&nbsp;</td>
- <td><input type="radio" name="@sort" value=""/></td>
- <td><input type="radio" name="@group" value=""/></td>
+ <td><input type="radio" name="@sort" value="" tal:attributes="checked python:sort_on == ''" /></td>
+ <td><input type="radio" name="@group" value="" tal:attributes="checked python:group_on == ''" /></td>
 </tr>
 
 <tr>
Modified: tracker/instances/jobs/html/page.html
==============================================================================
--- tracker/instances/jobs/html/page.html	(original)
+++ tracker/instances/jobs/html/page.html	Sun Aug 21 17:55:28 2011
@@ -272,7 +272,7 @@
 <input tal:attributes="value python:request.form.getvalue(name) or nothing;
 name name;
 id name"/>
- <span tal:replace="structure python:db.offer.classhelp(columns,
+ <span tal:replace="structure python:db[db_klass].classhelp(columns,
 property=name)" />
 </td>
 
@@ -288,6 +288,22 @@
 </select>
 </td>
 
+<td metal:define-macro="search_select_keywords">
+ <div tal:attributes="id python:'''keywords_%s'''%name">
+ <select tal:attributes="name name; id name"
+ tal:define="value python:request.form.getvalue(name)">
+ <option value="" i18n:translate="">don't care</option>
+ <metal:slot define-slot="extra_options" />
+ <option value="" i18n:translate="" disabled="disabled">------------</option>
+ <option tal:repeat="s python:db[db_klass].list()"
+ tal:attributes="value s/id; selected python:value == s.id"
+ tal:content="python:s[db_content]"></option>
+ </select>
+ <a class="classhelp"
+	 tal:attributes="href python:'''javascript:help_window('issue?@template=keywords_expr&property=%s&form=itemSynopsis', 350, 200)'''%name">(expr)</a>
+ </div>
+</td>
+
 <!-- like search_select, but translates the further values.
 Could extend it (METAL 1.1 attribute "extend-macro")
 -->
Modified: tracker/instances/jobs/html/style.css
==============================================================================
--- tracker/instances/jobs/html/style.css	(original)
+++ tracker/instances/jobs/html/style.css	Sun Aug 21 17:55:28 2011
@@ -33,13 +33,6 @@
 #searchbox { display: none;}
 }
 
-#searchbox { float: right;}
-
-div#body-title {
- float: left;
-}
-
-
 div#searchbox 
 {
 float: right;
@@ -452,6 +445,17 @@
 background-color: #ffffc0;
 }
 
+.calendar_display {
+ text-align: center;
+}
+
+.calendar_display td {
+ padding: 1px 4px 1px 4px;
+}
+
+.calendar_display .today {
+ background-color: #afafaf;
+}
 
 #demowarning {
 position: absolute;
Modified: tracker/instances/jython/html/_generic.index.html
==============================================================================
--- tracker/instances/jython/html/_generic.index.html	(original)
+++ tracker/instances/jython/html/_generic.index.html	Sun Aug 21 17:55:28 2011
@@ -37,7 +37,8 @@
 
 <p class="form-help">
 Remove entries by deleting their line. Add new entries by appending
- them to the table - put an X in the id column.
+ them to the table - put an X in the id column. If you wish to restore a
+ removed item and you know its id then just put that id in the id column.
 </p>
 </tal:block>
 <form onSubmit="return submit_once()" method="POST"
Modified: tracker/instances/jython/html/_generic.item.html
==============================================================================
--- tracker/instances/jython/html/_generic.item.html	(original)
+++ tracker/instances/jython/html/_generic.item.html	Sun Aug 21 17:55:28 2011
@@ -44,7 +44,12 @@
 
 </form>
 
-<tal:block tal:condition="context/id" tal:replace="structure context/history" />
+<tal:block tal:condition="context/id"
+ tal:define="limit python:[10, None][request.form.has_key('show_all_history')]"
+ tal:replace="structure python:context.history(limit=limit)" />
+<p tal:condition="not:exists:request/form/show_all_history" i18n:translate="">Showing 10 items.
+<a tal:attributes="href string:${context/_classname}${context/id}?show_all_history=yes">Show all history</a>
+(warning: this could be VERY long)</p>
 
 </div>
 
Added: tracker/instances/jython/html/_generic.keywords_expr.html
==============================================================================
--- (empty file)
+++ tracker/instances/jython/html/_generic.keywords_expr.html	Sun Aug 21 17:55:28 2011
@@ -0,0 +1,11 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <link rel="stylesheet" type="text/css" href="@@file/style.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8;" />
+ <title tal:content="string:Roundup Keywords Expression Editor"></title>
+ </head>
+ <body class="body"
+ tal:content="structure python:utils.keywords_expressions(request)">
+ </body>
+</html>
Modified: tracker/instances/jython/html/issue.search.html
==============================================================================
--- tracker/instances/jython/html/issue.search.html	(original)
+++ tracker/instances/jython/html/issue.search.html	Sun Aug 21 17:55:28 2011
@@ -12,10 +12,10 @@
 cols python:request.columns or 'id activity title status assignedto'.split();
 sort_on python:request.sort and request.sort[0] or nothing;
 sort_desc python:sort_on and sort_on[0] == '-';
- sort_on python:(sort_on and sort_on[1]) or 'activity';
+ sort_on python:(sort_on and sort_on[1]) or (not request.nodeid and 'activity') or '';
 group_on python:request.group and request.group[0] or nothing;
 group_desc python:group_on and group_on[0] == '-';
- group_on python:(group_on and group_on[1]) or 'priority';
+ group_on python:(group_on and group_on[1]) or (not request.nodeid and 'priority') or '';
 
 search_input templates/page/macros/search_input;
 search_date templates/page/macros/search_date;
@@ -23,6 +23,7 @@
 sort_input templates/page/macros/sort_input;
 group_input templates/page/macros/group_input;
 search_select templates/page/macros/search_select;
+ search_select_keywords templates/page/macros/search_select_keywords;
 search_select_translated templates/page/macros/search_select_translated;
 search_multiselect templates/page/macros/search_multiselect;">
 
@@ -191,9 +192,9 @@
 db_klass string:keyword;
 db_content string:name;">
 <th i18n:translate="">Keyword:</th>
- <td metal:use-macro="search_select_translated">
+ <td metal:use-macro="search_select_keywords">
 <option metal:fill-slot="extra_options" value="-1" i18n:translate=""
- tal:attributes="selected python:value == '-1'">not set</option>
+ tal:attributes="selected python:value == '-1'">not selected</option>
 </td>
 <td metal:use-macro="column_input"></td>
 <td metal:use-macro="sort_input"></td>
@@ -244,8 +245,8 @@
 <th i18n:translate="">No Sort or group:</th>
 <td>&nbsp;</td>
 <td>&nbsp;</td>
- <td><input type="radio" name="@sort" value=""/></td>
- <td><input type="radio" name="@group" value=""/></td>
+ <td><input type="radio" name="@sort" value="" tal:attributes="checked python:sort_on == ''" /></td>
+ <td><input type="radio" name="@group" value="" tal:attributes="checked python:group_on == ''" /></td>
 </tr>
 
 <tr>
Modified: tracker/instances/jython/html/page.html
==============================================================================
--- tracker/instances/jython/html/page.html	(original)
+++ tracker/instances/jython/html/page.html	Sun Aug 21 17:55:28 2011
@@ -349,7 +349,7 @@
 string (eg. "id,title" or "id,name,description") as well as name
 -->
 <input tal:attributes="value python:request.form.getvalue(name) or nothing; name name; id name" />
- <span tal:replace="structure python:db.issue.classhelp(columns, property=name)" />
+ <span tal:replace="structure python:db[db_klass].classhelp(columns, property=name)" />
 </td>
 <td metal:define-macro="search_select">
 <select tal:attributes="name name; id name"
@@ -363,6 +363,21 @@
 tal:content="python:s[db_content]"></option>
 </select>
 </td>
+<td metal:define-macro="search_select_keywords">
+ <div tal:attributes="id python:'''keywords_%s'''%name">
+ <select tal:attributes="name name; id name"
+ tal:define="value python:request.form.getvalue(name)">
+ <option value="" i18n:translate="">don't care</option>
+ <metal:slot define-slot="extra_options" />
+ <option value="" i18n:translate="" disabled="disabled">------------</option>
+ <option tal:repeat="s python:db[db_klass].list()"
+ tal:attributes="value s/id; selected python:value == s.id"
+ tal:content="python:s[db_content]"></option>
+ </select>
+ <a class="classhelp"
+ tal:attributes="href python:'''javascript:help_window('issue?@template=keywords_expr&property=%s&form=itemSynopsis', 350, 200)'''%name">(expr)</a>
+ </div>
+</td>
 <!-- like search_select, but translates the further values.
 Could extend it (METAL 1.1 attribute "extend-macro")
 -->
Modified: tracker/instances/jython/html/style.css
==============================================================================
--- tracker/instances/jython/html/style.css	(original)
+++ tracker/instances/jython/html/style.css	Sun Aug 21 17:55:28 2011
@@ -33,13 +33,6 @@
 #searchbox { display: none;}
 }
 
-#searchbox { float: right;}
-
-div#body-title {
- float: left;
-}
-
-
 div#searchbox 
 {
 float: right;
@@ -453,6 +446,17 @@
 background-color: #ffffc0;
 }
 
+.calendar_display {
+ text-align: center;
+}
+
+.calendar_display td {
+ padding: 1px 4px 1px 4px;
+}
+
+.calendar_display .today {
+ background-color: #afafaf;
+}
 
 #demowarning {
 position: absolute;
Modified: tracker/instances/meta/html/_generic.index.html
==============================================================================
--- tracker/instances/meta/html/_generic.index.html	(original)
+++ tracker/instances/meta/html/_generic.index.html	Sun Aug 21 17:55:28 2011
@@ -39,7 +39,8 @@
 
 <p class="form-help">
 Remove entries by deleting their line. Add new entries by appending
- them to the table - put an X in the id column.
+ them to the table - put an X in the id column. If you wish to restore a
+ removed item and you know its id then just put that id in the id column.
 </p>
 </tal:block>
 <form onSubmit="return submit_once()" method="POST"
Modified: tracker/instances/meta/html/_generic.item.html
==============================================================================
--- tracker/instances/meta/html/_generic.item.html	(original)
+++ tracker/instances/meta/html/_generic.item.html	Sun Aug 21 17:55:28 2011
@@ -44,7 +44,12 @@
 
 </form>
 
-<tal:block tal:condition="context/id" tal:replace="structure context/history" />
+<tal:block tal:condition="context/id"
+ tal:define="limit python:[10, None][request.form.has_key('show_all_history')]"
+ tal:replace="structure python:context.history(limit=limit)" />
+<p tal:condition="not:exists:request/form/show_all_history" i18n:translate="">Showing 10 items.
+<a tal:attributes="href string:${context/_classname}${context/id}?show_all_history=yes">Show all history</a>
+(warning: this could be VERY long)</p>
 
 </div>
 
Modified: tracker/instances/meta/html/issue.search.html
==============================================================================
--- tracker/instances/meta/html/issue.search.html	(original)
+++ tracker/instances/meta/html/issue.search.html	Sun Aug 21 17:55:28 2011
@@ -7,15 +7,15 @@
 
 <form method="GET" name="itemSynopsis"
 tal:attributes="action request/classname">
- 
+
 <table class="form" tal:define="
 cols python:request.columns or 'id activity title status assignedto'.split();
 sort_on python:request.sort and request.sort[0] or nothing;
 sort_desc python:sort_on and sort_on[0] == '-';
- sort_on python:(sort_on and sort_on[1]) or 'activity';
+ sort_on python:(sort_on and sort_on[1]) or (not request.nodeid and 'activity') or '';
 group_on python:request.group and request.group[0] or nothing;
 group_desc python:group_on and group_on[0] == '-';
- group_on python:(group_on and group_on[1]) or 'priority';
+ group_on python:(group_on and group_on[1]) or (not request.nodeid and 'priority') or '';
 
 search_input templates/page/macros/search_input;
 search_date templates/page/macros/search_date;
@@ -164,8 +164,8 @@
 <th i18n:translate="">No Sort or group:</th>
 <td>&nbsp;</td>
 <td>&nbsp;</td>
- <td><input type="radio" name="@sort" value=""></td>
- <td><input type="radio" name="@group" value=""></td>
+ <td><input type="radio" name="@sort" value="" tal:attributes="checked python:sort_on == ''"></td>
+ <td><input type="radio" name="@group" value="" tal:attributes="checked python:group_on == ''"></td>
 </tr>
 
 <tr>
Modified: tracker/instances/meta/html/page.html
==============================================================================
--- tracker/instances/meta/html/page.html	(original)
+++ tracker/instances/meta/html/page.html	Sun Aug 21 17:55:28 2011
@@ -28,9 +28,6 @@
 <tr>
 <td class="page-header-left">&nbsp;</td>
 <td class="page-header-top">
- <div id="body-title">
- <h2><span metal:define-slot="body_title">body title</span></h2>
- </div>
 <div id="searchbox">
 <form method="GET" action="issue">
 <input type="hidden" name="@columns"
@@ -41,7 +38,10 @@
 <input id="search-text" name="@search_text" size="10"/>
 <input type="submit" id="submit" name="submit" value="Search" i18n:attributes="value" />
 </form>
- </div>
+ </div>
+ <div id="body-title">
+ <h2><span metal:define-slot="body_title">body title</span></h2>
+ </div>
 </td>
 </tr>
 
@@ -162,7 +162,7 @@
 </p>
 <p class="userblock">
 <b i18n:translate="">Help</b><br>
- <a href="http://roundup.sourceforge.net/doc-1.0/"
+ <a href="http://www.roundup-tracker.org"
 i18n:translate="">Roundup docs</a>
 </p>
 </td>
@@ -229,7 +229,7 @@
 <input tal:attributes="value python:request.form.getvalue(name) or nothing;
 name name;
 id name">
- <span tal:replace="structure python:db.issue.classhelp(columns,
+ <span tal:replace="structure python:db[db_klass].classhelp(columns,
 property=name)" />
 </td>
 
@@ -245,6 +245,22 @@
 </select>
 </td>
 
+<td metal:define-macro="search_select_keywords">
+ <div tal:attributes="id python:'''keywords_%s'''%name">
+ <select tal:attributes="name name; id name"
+ tal:define="value python:request.form.getvalue(name)">
+ <option value="" i18n:translate="">don't care</option>
+ <metal:slot define-slot="extra_options" />
+ <option value="" i18n:translate="" disabled="disabled">------------</option>
+ <option tal:repeat="s python:db[db_klass].list()"
+ tal:attributes="value s/id; selected python:value == s.id"
+ tal:content="python:s[db_content]"></option>
+ </select>
+ <a class="classhelp"
+	 tal:attributes="href python:'''javascript:help_window('issue?@template=keywords_expr&property=%s&form=itemSynopsis', 350, 200)'''%name">(expr)</a>
+ </div>
+</td>
+
 <!-- like search_select, but translates the further values.
 Could extend it (METAL 1.1 attribute "extend-macro")
 -->
Modified: tracker/instances/meta/html/style.css
==============================================================================
--- tracker/instances/meta/html/style.css	(original)
+++ tracker/instances/meta/html/style.css	Sun Aug 21 17:55:28 2011
@@ -50,14 +50,6 @@
 padding: 5px;
 border-bottom: 1px solid #444;
 }
-#searchbox {
- float: right;
-}
-
-div#body-title {
- float: left;
-}
-
 
 div#searchbox {
 float: right;
@@ -431,6 +423,7 @@
 font-weight: bold;
 text-align: left;
 }
+
 input[type="text"]:focus,
 input[type="checkbox"]:focus,
 input[type="radio"]:focus,
@@ -440,6 +433,18 @@
 background-color: #ffffc0;
 }
 
+.calendar_display {
+ text-align: center;
+}
+
+.calendar_display td {
+ padding: 1px 4px 1px 4px;
+}
+
+.calendar_display .today {
+ background-color: #afafaf;
+}
+
 /* vim: sts=2 sw=2 et
 */
 /* SHA: 7243da9b4e481a0b95a5367b45baaaa45fab8998 */
Modified: tracker/instances/security/html/_generic.index.html
==============================================================================
--- tracker/instances/security/html/_generic.index.html	(original)
+++ tracker/instances/security/html/_generic.index.html	Sun Aug 21 17:55:28 2011
@@ -37,7 +37,8 @@
 
 <p class="form-help">
 Remove entries by deleting their line. Add new entries by appending
- them to the table - put an X in the id column.
+ them to the table - put an X in the id column. If you wish to restore a
+ removed item and you know its id then just put that id in the id column.
 </p>
 </tal:block>
 <form onSubmit="return submit_once()" method="POST"
Modified: tracker/instances/security/html/_generic.item.html
==============================================================================
--- tracker/instances/security/html/_generic.item.html	(original)
+++ tracker/instances/security/html/_generic.item.html	Sun Aug 21 17:55:28 2011
@@ -44,7 +44,12 @@
 
 </form>
 
-<tal:block tal:condition="context/id" tal:replace="structure context/history" />
+<tal:block tal:condition="context/id"
+ tal:define="limit python:[10, None][request.form.has_key('show_all_history')]"
+ tal:replace="structure python:context.history(limit=limit)" />
+<p tal:condition="not:exists:request/form/show_all_history" i18n:translate="">Showing 10 items.
+<a tal:attributes="href string:${context/_classname}${context/id}?show_all_history=yes">Show all history</a>
+(warning: this could be VERY long)</p>
 
 </div>
 
Added: tracker/instances/security/html/_generic.keywords_expr.html
==============================================================================
--- (empty file)
+++ tracker/instances/security/html/_generic.keywords_expr.html	Sun Aug 21 17:55:28 2011
@@ -0,0 +1,11 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <link rel="stylesheet" type="text/css" href="@@file/style.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8;" />
+ <title tal:content="string:Roundup Keywords Expression Editor"></title>
+ </head>
+ <body class="body"
+ tal:content="structure python:utils.keywords_expressions(request)">
+ </body>
+</html>
Modified: tracker/instances/security/html/issue.search.html
==============================================================================
--- tracker/instances/security/html/issue.search.html	(original)
+++ tracker/instances/security/html/issue.search.html	Sun Aug 21 17:55:28 2011
@@ -12,10 +12,10 @@
 cols python:request.columns or 'id activity title status assignedto'.split();
 sort_on python:request.sort and request.sort[0] or nothing;
 sort_desc python:sort_on and sort_on[0] == '-';
- sort_on python:(sort_on and sort_on[1]) or 'activity';
+ sort_on python:(sort_on and sort_on[1]) or (not request.nodeid and 'activity') or '';
 group_on python:request.group and request.group[0] or nothing;
 group_desc python:group_on and group_on[0] == '-';
- group_on python:(group_on and group_on[1]) or 'priority';
+ group_on python:(group_on and group_on[1]) or (not request.nodeid and 'priority') or '';
 
 search_input templates/page/macros/search_input;
 search_date templates/page/macros/search_date;
@@ -23,6 +23,7 @@
 sort_input templates/page/macros/sort_input;
 group_input templates/page/macros/group_input;
 search_select templates/page/macros/search_select;
+ search_select_keywords templates/page/macros/search_select_keywords;
 search_select_translated templates/page/macros/search_select_translated;
 search_multiselect templates/page/macros/search_multiselect;">
 
@@ -191,7 +192,7 @@
 db_klass string:keyword;
 db_content string:name;">
 <th i18n:translate="">Keyword:</th>
- <td metal:use-macro="search_select_translated">
+ <td metal:use-macro="search_select_keywords">
 <option metal:fill-slot="extra_options" value="-1" i18n:translate=""
 tal:attributes="selected python:value == '-1'">not set</option>
 </td>
@@ -244,8 +245,8 @@
 <th i18n:translate="">No Sort or group:</th>
 <td>&nbsp;</td>
 <td>&nbsp;</td>
- <td><input type="radio" name="@sort" value=""/></td>
- <td><input type="radio" name="@group" value=""/></td>
+ <td><input type="radio" name="@sort" value="" tal:attributes="checked python:sort_on == ''" /></td>
+ <td><input type="radio" name="@group" value="" tal:attributes="checked python:group_on == ''" /></td>
 </tr>
 
 <tr>
Modified: tracker/instances/security/html/page.html
==============================================================================
--- tracker/instances/security/html/page.html	(original)
+++ tracker/instances/security/html/page.html	Sun Aug 21 17:55:28 2011
@@ -130,7 +130,7 @@
 </li>
 <li>
 <a href="user?@template=register"
- tal:condition="python:request.user.hasPermission('Create', 'user')"
+ tal:condition="python:request.user.hasPermission('Register', 'user')"
 i18n:translate="">Register</a>
 	</li>
 <li><a href="user?@template=forgotten" i18n:translate="">Lost&nbsp;your&nbsp;login?</a>
@@ -283,7 +283,7 @@
 <input tal:attributes="value python:request.form.getvalue(name) or nothing;
 name name;
 id name"/>
- <span tal:replace="structure python:db.issue.classhelp(columns,
+ <span tal:replace="structure python:db[db_klass].classhelp(columns,
 property=name)" />
 </td>
 
@@ -299,6 +299,22 @@
 </select>
 </td>
 
+<td metal:define-macro="search_select_keywords">
+ <div tal:attributes="id python:'''keywords_%s'''%name">
+ <select tal:attributes="name name; id name"
+ tal:define="value python:request.form.getvalue(name)">
+ <option value="" i18n:translate="">don't care</option>
+ <metal:slot define-slot="extra_options" />
+ <option value="" i18n:translate="" disabled="disabled">------------</option>
+ <option tal:repeat="s python:db[db_klass].list()"
+ tal:attributes="value s/id; selected python:value == s.id"
+ tal:content="python:s[db_content]"></option>
+ </select>
+ <a class="classhelp"
+	 tal:attributes="href python:'''javascript:help_window('issue?@template=keywords_expr&property=%s&form=itemSynopsis', 350, 200)'''%name">(expr)</a>
+ </div>
+</td>
+
 <!-- like search_select, but translates the further values.
 Could extend it (METAL 1.1 attribute "extend-macro")
 -->
Modified: tracker/instances/security/html/style.css
==============================================================================
--- tracker/instances/security/html/style.css	(original)
+++ tracker/instances/security/html/style.css	Sun Aug 21 17:55:28 2011
@@ -33,13 +33,6 @@
 #searchbox { display: none;}
 }
 
-#searchbox { float: right;}
-
-div#body-title {
- float: left;
-}
-
-
 div#searchbox 
 {
 float: right;
@@ -456,6 +449,17 @@
 background-color: #ffffc0;
 }
 
+.calendar_display {
+ text-align: center;
+}
+
+.calendar_display td {
+ padding: 1px 4px 1px 4px;
+}
+
+.calendar_display .today {
+ background-color: #afafaf;
+}
 
 #demowarning {
 position: absolute;
Modified: tracker/instances/security/schema.py
==============================================================================
--- tracker/instances/security/schema.py	(original)
+++ tracker/instances/security/schema.py	Sun Aug 21 17:55:28 2011
@@ -87,6 +87,8 @@
 roles=String(), # comma-separated string of Role names
 timezone=String())
 user.setkey("username")
+db.security.addPermission(name='Register', klass='user',
+ description='User is allowed to register new user')
 
 # FileClass automatically gets this property in addition to the Class ones:
 # content = String() [saved to disk in <tracker home>/db/files/]
@@ -299,6 +301,9 @@
 description="User is allowed to view their own and public queries")
 for r in 'User', 'Developer', 'Coordinator':
 db.security.addPermissionToRole(r, p)
+p = db.security.addPermission(name='Search', klass='query')
+for r in 'User', 'Developer', 'Coordinator':
+ db.security.addPermissionToRole(r, p)
 p = db.security.addPermission(name='Edit', klass='query', check=edit_query,
 description="User is allowed to edit their queries")
 for r in 'User', 'Developer', 'Coordinator':
@@ -327,7 +332,7 @@
 # Assign the appropriate permissions to the anonymous user's Anonymous
 # Role. Choices here are:
 # - Allow anonymous users to register
-#db.security.addPermissionToRole('Anonymous', 'Create', 'user')
+#db.security.addPermissionToRole('Anonymous', 'Register', 'user')
 
 # Allow anonymous users access to view issues (and the related, linked
 # information).
Modified: tracker/instances/setuptools/html/_generic.index.html
==============================================================================
--- tracker/instances/setuptools/html/_generic.index.html	(original)
+++ tracker/instances/setuptools/html/_generic.index.html	Sun Aug 21 17:55:28 2011
@@ -39,7 +39,8 @@
 
 <p class="form-help">
 Remove entries by deleting their line. Add new entries by appending
- them to the table - put an X in the id column.
+ them to the table - put an X in the id column. If you wish to restore a
+ removed item and you know its id then just put that id in the id column.
 </p>
 </tal:block>
 <form onSubmit="return submit_once()" method="POST"
Modified: tracker/instances/setuptools/html/_generic.item.html
==============================================================================
--- tracker/instances/setuptools/html/_generic.item.html	(original)
+++ tracker/instances/setuptools/html/_generic.item.html	Sun Aug 21 17:55:28 2011
@@ -44,7 +44,12 @@
 
 </form>
 
-<tal:block tal:condition="context/id" tal:replace="structure context/history" />
+<tal:block tal:condition="context/id"
+ tal:define="limit python:[10, None][request.form.has_key('show_all_history')]"
+ tal:replace="structure python:context.history(limit=limit)" />
+<p tal:condition="not:exists:request/form/show_all_history" i18n:translate="">Showing 10 items.
+<a tal:attributes="href string:${context/_classname}${context/id}?show_all_history=yes">Show all history</a>
+(warning: this could be VERY long)</p>
 
 </div>
 
Added: tracker/instances/setuptools/html/_generic.keywords_expr.html
==============================================================================
--- (empty file)
+++ tracker/instances/setuptools/html/_generic.keywords_expr.html	Sun Aug 21 17:55:28 2011
@@ -0,0 +1,11 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html>
+ <head>
+ <link rel="stylesheet" type="text/css" href="@@file/style.css" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8;" />
+ <title tal:content="string:Roundup Keywords Expression Editor"></title>
+ </head>
+ <body class="body"
+ tal:content="structure python:utils.keywords_expressions(request)">
+ </body>
+</html>
Modified: tracker/instances/setuptools/html/issue.search.html
==============================================================================
--- tracker/instances/setuptools/html/issue.search.html	(original)
+++ tracker/instances/setuptools/html/issue.search.html	Sun Aug 21 17:55:28 2011
@@ -12,10 +12,10 @@
 cols python:request.columns or 'id activity title status assignedto'.split();
 sort_on python:request.sort and request.sort[0] or nothing;
 sort_desc python:sort_on and sort_on[0] == '-';
- sort_on python:(sort_on and sort_on[1]) or 'activity';
+ sort_on python:(sort_on and sort_on[1]) or (not request.nodeid and 'activity') or '';
 group_on python:request.group and request.group[0] or nothing;
 group_desc python:group_on and group_on[0] == '-';
- group_on python:(group_on and group_on[1]) or 'priority';
+ group_on python:(group_on and group_on[1]) or (not request.nodeid and 'priority') or '';
 
 search_input templates/page/macros/search_input;
 search_date templates/page/macros/search_date;
@@ -23,6 +23,7 @@
 sort_input templates/page/macros/sort_input;
 group_input templates/page/macros/group_input;
 search_select templates/page/macros/search_select;
+ search_select_keywords templates/page/macros/search_select_keywords;
 search_select_translated templates/page/macros/search_select_translated;
 search_multiselect templates/page/macros/search_multiselect;">
 
@@ -54,7 +55,7 @@
 db_klass string:keyword;
 db_content string:name;">
 <th i18n:translate="">Keyword:</th>
- <td metal:use-macro="search_select">
+ <td metal:use-macro="search_select_keywords">
 <option metal:fill-slot="extra_options" value="-1" i18n:translate=""
 tal:attributes="selected python:value == '-1'">not selected</option>
 </td>
@@ -167,8 +168,8 @@
 <th i18n:translate="">No Sort or group:</th>
 <td>&nbsp;</td>
 <td>&nbsp;</td>
- <td><input type="radio" name="@sort" value=""></td>
- <td><input type="radio" name="@group" value=""></td>
+ <td><input type="radio" name="@sort" value="" tal:attributes="checked python:sort_on == ''"></td>
+ <td><input type="radio" name="@group" value="" tal:attributes="checked python:group_on == ''"></td>
 </tr>
 
 <tr>
Modified: tracker/instances/setuptools/html/page.html
==============================================================================
--- tracker/instances/setuptools/html/page.html	(original)
+++ tracker/instances/setuptools/html/page.html	Sun Aug 21 17:55:28 2011
@@ -28,9 +28,6 @@
 <tr>
 <td class="page-header-left">&nbsp;</td>
 <td class="page-header-top">
- <div id="body-title">
- <h2><span metal:define-slot="body_title">body title</span></h2>
- </div>
 <div id="searchbox">
 <form method="GET" action="issue">
 <input type="hidden" name="@columns"
@@ -43,7 +40,10 @@
 <input type="submit" id="submit" name="submit" value="Search"
 i18n:attributes="value" />
 </form>
- </div>
+ </div>
+ <div id="body-title">
+ <h2><span metal:define-slot="body_title">body title</span></h2>
+ </div>
 </td>
 </tr>
 
@@ -164,7 +164,7 @@
 </p>
 <p class="userblock">
 <b i18n:translate="">Help</b><br>
- <a href="http://roundup.sourceforge.net/doc-1.0/"
+ <a href="http://www.roundup-tracker.org"
 i18n:translate="">Roundup docs</a>
 </p>
 </td>
@@ -231,7 +231,7 @@
 <input tal:attributes="value python:request.form.getvalue(name) or nothing;
 name name;
 id name">
- <span tal:replace="structure python:db.issue.classhelp(columns,
+ <span tal:replace="structure python:db[db_klass].classhelp(columns,
 property=name)" />
 </td>
 
@@ -247,6 +247,22 @@
 </select>
 </td>
 
+<td metal:define-macro="search_select_keywords">
+ <div tal:attributes="id python:'''keywords_%s'''%name">
+ <select tal:attributes="name name; id name"
+ tal:define="value python:request.form.getvalue(name)">
+ <option value="" i18n:translate="">don't care</option>
+ <metal:slot define-slot="extra_options" />
+ <option value="" i18n:translate="" disabled="disabled">------------</option>
+ <option tal:repeat="s python:db[db_klass].list()"
+ tal:attributes="value s/id; selected python:value == s.id"
+ tal:content="python:s[db_content]"></option>
+ </select>
+ <a class="classhelp"
+	 tal:attributes="href python:'''javascript:help_window('issue?@template=keywords_expr&property=%s&form=itemSynopsis', 350, 200)'''%name">(expr)</a>
+ </div>
+</td>
+
 <!-- like search_select, but translates the further values.
 Could extend it (METAL 1.1 attribute "extend-macro")
 -->
Modified: tracker/instances/setuptools/html/style.css
==============================================================================
--- tracker/instances/setuptools/html/style.css	(original)
+++ tracker/instances/setuptools/html/style.css	Sun Aug 21 17:55:28 2011
@@ -50,14 +50,6 @@
 padding: 5px;
 border-bottom: 1px solid #444;
 }
-#searchbox {
- float: right;
-}
-
-div#body-title {
- float: left;
-}
-
 
 div#searchbox {
 float: right;
@@ -421,6 +413,7 @@
 font-weight: bold;
 text-align: left;
 }
+
 input[type="text"]:focus,
 input[type="checkbox"]:focus,
 input[type="radio"]:focus,
@@ -429,6 +422,18 @@
 background-color: #ffffc0;
 }
 
+.calendar_display {
+ text-align: center;
+}
+
+.calendar_display td {
+ padding: 1px 4px 1px 4px;
+}
+
+.calendar_display .today {
+ background-color: #afafaf;
+}
+
 /* vim: sts=2 sw=2 et
 */
 /* SHA: 7243da9b4e481a0b95a5367b45baaaa45fab8998 */


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /