Show More
@@ -256,7 +256,7 b' class LoginForm(formencode.Schema):' | |||||
256 |
|
256 | |||
257 | password = UnicodeString( |
|
257 | password = UnicodeString( | |
258 | strip=True, |
|
258 | strip=True, | |
259 |
min= |
|
259 | min=6, | |
260 | not_empty=True, |
|
260 | not_empty=True, | |
261 | messages={ |
|
261 | messages={ | |
262 | 'empty':_('Please enter a password'), |
|
262 | 'empty':_('Please enter a password'), | |
@@ -273,10 +273,10 b' def UserForm(edit=False, old_data={}):' | |||||
273 | filter_extra_fields = True |
|
273 | filter_extra_fields = True | |
274 | username = All(UnicodeString(strip=True, min=1, not_empty=True), ValidUsername(edit, old_data)) |
|
274 | username = All(UnicodeString(strip=True, min=1, not_empty=True), ValidUsername(edit, old_data)) | |
275 | if edit: |
|
275 | if edit: | |
276 |
new_password = All(UnicodeString(strip=True, min= |
|
276 | new_password = All(UnicodeString(strip=True, min=6, not_empty=False), ValidPassword) | |
277 | admin = StringBoolean(if_missing=False) |
|
277 | admin = StringBoolean(if_missing=False) | |
278 | else: |
|
278 | else: | |
279 |
password = All(UnicodeString(strip=True, min= |
|
279 | password = All(UnicodeString(strip=True, min=6, not_empty=True), ValidPassword) | |
280 | active = StringBoolean(if_missing=False) |
|
280 | active = StringBoolean(if_missing=False) | |
281 | name = UnicodeString(strip=True, min=1, not_empty=True) |
|
281 | name = UnicodeString(strip=True, min=1, not_empty=True) | |
282 | lastname = UnicodeString(strip=True, min=1, not_empty=True) |
|
282 | lastname = UnicodeString(strip=True, min=1, not_empty=True) |
@@ -1161,7 +1161,7 b' div.options a:hover' | |||||
1161 | #content div.box div.message |
|
1161 | #content div.box div.message | |
1162 | { |
|
1162 | { | |
1163 | margin: 0 0 0px 0; |
|
1163 | margin: 0 0 0px 0; | |
1164 | padding: 0 0 10px 0; |
|
1164 | padding: 10px 0 10px 0; | |
1165 | clear: both; |
|
1165 | clear: both; | |
1166 | overflow: hidden; |
|
1166 | overflow: hidden; | |
1167 | } |
|
1167 | } | |
@@ -3058,7 +3058,9 b' h3.files_location{' | |||||
3058 | } |
|
3058 | } | |
3059 |
|
3059 | |||
3060 | #changeset_content .container { |
|
3060 | #changeset_content .container { | |
3061 | height: 120px; |
|
3061 | min-height: 120px; | |
|
3062 | font-size: 1.2em; | |||
|
3063 | ||||
3062 | } |
|
3064 | } | |
3063 |
|
3065 | |||
3064 | #changeset_content .container .left { |
|
3066 | #changeset_content .container .left { | |
@@ -3190,7 +3192,6 b' h3.files_location{' | |||||
3190 | border: 1px solid #DDDDDD; |
|
3192 | border: 1px solid #DDDDDD; | |
3191 | display: block; |
|
3193 | display: block; | |
3192 | float: right; |
|
3194 | float: right; | |
3193 | font-size: 0.75em; |
|
|||
3194 | text-align: center; |
|
3195 | text-align: center; | |
3195 | min-width: 15px; |
|
3196 | min-width: 15px; | |
3196 | } |
|
3197 | } |
@@ -3,7 +3,7 b'' | |||||
3 | <%inherit file="/base/base.html"/> |
|
3 | <%inherit file="/base/base.html"/> | |
4 |
|
4 | |||
5 | <%def name="title()"> |
|
5 | <%def name="title()"> | |
6 |
${_('Changelog |
|
6 | ${_('Changelog')} - ${c.repo_name} | |
7 | </%def> |
|
7 | </%def> | |
8 |
|
8 | |||
9 | <%def name="breadcrumbs_links()"> |
|
9 | <%def name="breadcrumbs_links()"> |
@@ -1,7 +1,7 b'' | |||||
1 | <%inherit file="/base/base.html"/> |
|
1 | <%inherit file="/base/base.html"/> | |
2 |
|
2 | |||
3 | <%def name="title()"> |
|
3 | <%def name="title()"> | |
4 | ${_('Changeset')} |
|
4 | ${_('Changeset')} - r${c.changeset.revision}:${c.changeset.short_id} - ${c.repo_name} | |
5 | </%def> |
|
5 | </%def> | |
6 |
|
6 | |||
7 | <%def name="breadcrumbs_links()"> |
|
7 | <%def name="breadcrumbs_links()"> | |
@@ -34,42 +34,56 b'' | |||||
34 | </div> |
|
34 | </div> | |
35 | </div> |
|
35 | </div> | |
36 | </div> |
|
36 | </div> | |
37 |
|
37 | <div id="changeset_content"> | ||
38 | <div id="changeset_content"> |
|
38 | <div class="container"> | |
39 | <div class="container"> |
|
39 | <div class="left"> | |
40 | <div class="left"> |
|
40 | <div class="date">${_('commit')} ${c.changeset.revision}: ${c.changeset.short_id}@${c.changeset.date}</div> | |
41 | <div class="date">${_('Date')}: ${c.changeset.date}</div> |
|
41 | <div class="author"> | |
42 | <div class="author">${_('Author')}: ${c.changeset.author}</div> |
|
42 | <div class="gravatar"> | |
43 | <div class="message">${h.wrap_paragraphs(c.changeset.message)}</div> |
|
43 | <img alt="gravatar" src="${h.gravatar_url(h.email(c.changeset.author),20)}"/> | |
44 | </div> |
|
44 | </div> | |
45 | <div class="right"> |
|
45 | <span>${h.person(c.changeset.author)}</span><br/> | |
46 | %if len(c.changeset.parents)>1: |
|
46 | <span><a href="mailto:${h.email_or_none(c.changeset.author)}">${h.email_or_none(c.changeset.author)}</a></span><br/> | |
47 | <div class="merge"> |
|
47 | </div> | |
48 | ${_('merge')} |
|
48 | <div class="message"> | |
49 | <img alt="merge" src="/images/icons/arrow_join.png"> |
|
49 | ${h.link_to(h.wrap_paragraphs(c.changeset.message), | |
50 | </div> |
|
50 | h.url('changeset_home',repo_name=c.repo_name,revision=c.changeset.short_id))} | |
51 | %endif |
|
51 | </div> | |
52 | %for p_cs in reversed(c.changeset.parents): |
|
52 | </div> | |
53 | <div class="parent">${_('Parent')} ${p_cs.revision}: ${h.link_to(p_cs.short_id, |
|
53 | <div class="right"> | |
54 | h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.short_id),title=p_cs.message)} |
|
54 | <div class="changes"> | |
55 | </div> |
|
55 | <span class="removed" title="${_('removed')}">${len(c.changeset.removed)}</span> | |
56 | %endfor |
|
56 | <span class="changed" title="${_('changed')}">${len(c.changeset.changed)}</span> | |
57 | <span class="logtags"> |
|
57 | <span class="added" title="${_('added')}">${len(c.changeset.added)}</span> | |
58 | <span class="branchtag" title="${'%s %s' % (_('branch'),c.changeset.branch)}"> |
|
58 | </div> | |
59 | ${h.link_to(c.changeset.branch,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.short_id))}</span> |
|
59 | %if len(c.changeset.parents)>1: | |
60 | %for tag in c.changeset.tags: |
|
60 | <div class="merge"> | |
61 | <span class="tagtag" title="${'%s %s' % (_('tag'),tag)}"> |
|
61 | ${_('merge')}<img alt="merge" src="/images/icons/arrow_join.png"/> | |
62 | ${h.link_to(tag,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.short_id))}</span> |
|
62 | </div> | |
63 | %endfor |
|
63 | %endif | |
64 | </span> |
|
64 | %for p_cs in reversed(c.changeset.parents): | |
65 | </div> |
|
65 | <div class="parent">${_('Parent')} ${p_cs.revision}: ${h.link_to(p_cs.short_id, | |
66 | </div> |
|
66 | h.url('changeset_home',repo_name=c.repo_name,revision=p_cs.short_id),title=p_cs.message)} | |
67 | <span style="font-size:1.1em;font-weight: bold">${_('Files affected')}</span> |
|
67 | </div> | |
68 | <div class="cs_files"> |
|
68 | %endfor | |
69 | %for change,filenode,diff,cs1,cs2 in c.changes: |
|
69 | <span class="logtags"> | |
70 | <div class="cs_${change}">${h.link_to(filenode.path,h.url.current(anchor='CHANGE-%s'%filenode.path))}</div> |
|
70 | <span class="branchtag" title="${'%s %s' % (_('branch'),c.changeset.branch)}"> | |
71 | %endfor |
|
71 | ${h.link_to(c.changeset.branch,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.short_id))}</span> | |
72 | </div> |
|
72 | %for tag in c.changeset.tags: | |
|
73 | <span class="tagtag" title="${'%s %s' % (_('tag'),tag)}"> | |||
|
74 | ${h.link_to(tag,h.url('files_home',repo_name=c.repo_name,revision=c.changeset.short_id))}</span> | |||
|
75 | %endfor | |||
|
76 | </span> | |||
|
77 | </div> | |||
|
78 | </div> | |||
|
79 | <span style="font-size:1.1em;font-weight: bold">${_('Files affected')}</span> | |||
|
80 | <div class="cs_files"> | |||
|
81 | %for change,filenode,diff,cs1,cs2 in c.changes: | |||
|
82 | <div class="cs_${change}">${h.link_to(filenode.path,h.url.current(anchor='CHANGE-%s'%filenode.path))}</div> | |||
|
83 | %endfor | |||
|
84 | </div> | |||
|
85 | </div> | |||
|
86 | ||||
73 | </div> |
|
87 | </div> | |
74 |
|
88 | |||
75 | %for change,filenode,diff,cs1,cs2 in c.changes: |
|
89 | %for change,filenode,diff,cs1,cs2 in c.changes: |
@@ -20,11 +20,11 b' setup(' | |||||
20 | "SQLAlchemy>=0.6", |
|
20 | "SQLAlchemy>=0.6", | |
21 | "babel", |
|
21 | "babel", | |
22 | "Mako>=0.3.2", |
|
22 | "Mako>=0.3.2", | |
23 |
"vcs>=0.1. |
|
23 | "vcs>=0.1.7", | |
24 | "pygments>=1.3.0", |
|
24 | "pygments>=1.3.0", | |
25 | "mercurial>=1.6", |
|
25 | "mercurial>=1.6", | |
26 | "pysqlite", |
|
26 | "pysqlite", | |
27 |
"whoosh==1.0.0b1 |
|
27 | "whoosh==1.0.0b19", | |
28 | "py-bcrypt", |
|
28 | "py-bcrypt", | |
29 | "celery", |
|
29 | "celery", | |
30 | ], |
|
30 | ], |
General Comments 0
You need to be logged in to leave comments.
Login now