##// END OF EJS Templates
style: remove most of the explicit styles - it should now be good enough in CSS ... and Bootstrap will soon improve it further
Mads Kiilerich -
r6612:88ce09da default
parent child Browse files
Show More
@@ -258,14 +258,14 b' class CodeHtmlFormatter(HtmlFormatter):'
258 # some configurations seem to mess up the formatting...
258 # some configurations seem to mess up the formatting...
259 if nocls:
259 if nocls:
260 yield 0, ('<table class="%stable">' % self.cssclass +
260 yield 0, ('<table class="%stable">' % self.cssclass +
261 '<tr><td><div class="linenodiv" '
261 '<tr><td><div class="linenodiv">'
262 'style="background-color: #f0f0f0; padding-right: 10px">'
262 '<pre>' + ls + '</pre></div></td>'
263 '<pre style="line-height: 125%">' +
263 '<td id="hlcode" class="code">')
264 ls + '</pre></div></td><td id="hlcode" class="code">')
265 else:
264 else:
266 yield 0, ('<table class="%stable">' % self.cssclass +
265 yield 0, ('<table class="%stable">' % self.cssclass +
267 '<tr><td class="linenos"><div class="linenodiv"><pre>' +
266 '<tr><td class="linenos"><div class="linenodiv">'
268 ls + '</pre></div></td><td id="hlcode" class="code">')
267 '<pre>' + ls + '</pre></div></td>'
268 '<td id="hlcode" class="code">')
269 yield 0, dummyoutfile.getvalue()
269 yield 0, dummyoutfile.getvalue()
270 yield 0, '</td></tr></table>'
270 yield 0, '</td></tr></table>'
271
271
@@ -1931,6 +1931,7 b' BIN_FILENODE = 6'
1931 }
1931 }
1932
1932
1933 #graph_content,
1933 #graph_content,
1934 #graph_content_pr,
1934 #graph .info_box,
1935 #graph .info_box,
1935 #graph .container_header {
1936 #graph .container_header {
1936 margin-left: 100px;
1937 margin-left: 100px;
@@ -2009,6 +2010,7 b' tr.out-of-range > td.mid > .message > a '
2009 #graph_content .container .expand_commit {
2010 #graph_content .container .expand_commit {
2010 width: 24px;
2011 width: 24px;
2011 cursor: pointer;
2012 cursor: pointer;
2013 color: #999;
2012 }
2014 }
2013
2015
2014 #graph_content #changesets .container .right {
2016 #graph_content #changesets .container .right {
@@ -142,7 +142,7 b''
142
142
143 %endfor
143 %endfor
144
144
145 <div style="padding-top: 5px">
145 <div>
146 ${h.submit('update',_('Update Gist'),class_="btn btn-success")}
146 ${h.submit('update',_('Update Gist'),class_="btn btn-success")}
147 <a class="btn btn-default" href="${h.url('gist', gist_id=c.gist.gist_access_id)}">${_('Cancel')}</a>
147 <a class="btn btn-default" href="${h.url('gist', gist_id=c.gist.gist_access_id)}">${_('Cancel')}</a>
148 </div>
148 </div>
@@ -41,13 +41,13 b''
41 <div class="panel-body">
41 <div class="panel-body">
42 %if c.gists_pager.item_count>0:
42 %if c.gists_pager.item_count>0:
43 % for gist in c.gists_pager:
43 % for gist in c.gists_pager:
44 <div class="gist-item clearfix" style="padding:10px 20px 10px 15px">
44 <div class="gist-item clearfix">
45 ${h.gravatar_div(gist.owner.email, size=28)}
45 ${h.gravatar_div(gist.owner.email, size=28)}
46 <div title="${gist.owner.full_contact}" class="user" style="font-size: 16px">
46 <div title="${gist.owner.full_contact}" class="user">
47 <b>${h.person(gist.owner.full_contact)}</b> /
47 <b>${h.person(gist.owner.full_contact)}</b> /
48 <b><a href="${h.url('gist',gist_id=gist.gist_access_id)}">gist: ${gist.gist_access_id}</a></b>
48 <b><a href="${h.url('gist',gist_id=gist.gist_access_id)}">gist: ${gist.gist_access_id}</a></b>
49 </div>
49 </div>
50 <div style="padding: 4px 0px 0px 0px">
50 <div>
51 ${_('Created')} ${h.age(gist.created_on)} /
51 ${_('Created')} ${h.age(gist.created_on)} /
52 <span class="text-muted">
52 <span class="text-muted">
53 %if gist.gist_expires == -1:
53 %if gist.gist_expires == -1:
@@ -58,7 +58,7 b''
58 </span>
58 </span>
59 </div>
59 </div>
60
60
61 <div class="text-muted" style="border:0px;padding:10px 0px 0px 40px">${gist.gist_description}</div>
61 <div class="text-muted">${gist.gist_description}</div>
62 </div>
62 </div>
63 % endfor
63 % endfor
64
64
@@ -1,6 +1,6 b''
1 <table class="table">
1 <table class="table">
2 <tr>
2 <tr>
3 <td style="width: 450px"><div class="truncate autoexpand" style="width:120px;font-size:16px;font-family: monospace">${c.user.api_key}</div></td>
3 <td><div class="truncate autoexpand">${c.user.api_key}</div></td>
4 <td>
4 <td>
5 <span class="label label-success">${_('Built-in')}</span>
5 <span class="label label-success">${_('Built-in')}</span>
6 </td>
6 </td>
@@ -19,9 +19,9 b''
19 %if c.user_api_keys:
19 %if c.user_api_keys:
20 %for api_key in c.user_api_keys:
20 %for api_key in c.user_api_keys:
21 <tr class="${'expired' if api_key.is_expired else ''}">
21 <tr class="${'expired' if api_key.is_expired else ''}">
22 <td style="width: 450px"><div class="truncate autoexpand" style="width:120px;font-size:16px;font-family: monospace">${api_key.api_key}</div></td>
22 <td><div class="truncate autoexpand">${api_key.api_key}</div></td>
23 <td>${api_key.description}</td>
23 <td>${api_key.description}</td>
24 <td style="min-width: 80px">
24 <td>
25 %if api_key.expires == -1:
25 %if api_key.expires == -1:
26 ${_('Expires')}: ${_('Never')}
26 ${_('Expires')}: ${_('Never')}
27 %else:
27 %else:
@@ -19,7 +19,7 b''
19 <td>
19 <td>
20 ${h.form(url('my_account_emails_delete'))}
20 ${h.form(url('my_account_emails_delete'))}
21 ${h.hidden('del_email_id',em.email_id)}
21 ${h.hidden('del_email_id',em.email_id)}
22 <i class="icon-minus-circled" style="color:#FF4444"></i>
22 <i class="icon-minus-circled"></i>
23 ${h.submit('remove_',_('Delete'),id="remove_email_%s" % em.email_id,
23 ${h.submit('remove_',_('Delete'),id="remove_email_%s" % em.email_id,
24 class_="btn btn-default btn-xs", onclick="return confirm('"+_('Confirm to delete this email: %s') % em.email+"');")}
24 class_="btn btn-default btn-xs", onclick="return confirm('"+_('Confirm to delete this email: %s') % em.email+"');")}
25 ${h.end_form()}
25 ${h.end_form()}
@@ -8,7 +8,7 b''
8 ${h.form(url('edit_user_ips_delete', id=c.user.user_id))}
8 ${h.form(url('edit_user_ips_delete', id=c.user.user_id))}
9 ${h.hidden('del_ip_id',ip.ip_id)}
9 ${h.hidden('del_ip_id',ip.ip_id)}
10 ${h.hidden('default_user', 'True')}
10 ${h.hidden('default_user', 'True')}
11 <i class="icon-minus-circled" style="color:#FF4444"></i> ${h.submit('remove_',_('Delete'),id="remove_ip_%s" % ip.ip_id,
11 <i class="icon-minus-circled"></i> ${h.submit('remove_',_('Delete'),id="remove_ip_%s" % ip.ip_id,
12 class_="btn btn-default btn-xs", onclick="return confirm('"+_('Confirm to delete this IP address: %s') % ip.ip_addr+"');")}
12 class_="btn btn-default btn-xs", onclick="return confirm('"+_('Confirm to delete this IP address: %s') % ip.ip_addr+"');")}
13 ${h.end_form()}
13 ${h.end_form()}
14 </td>
14 </td>
@@ -11,8 +11,8 b''
11 ]
11 ]
12 %>
12 %>
13 %for dt, dd, tt in elems:
13 %for dt, dd, tt in elems:
14 <dt style="width:150px; text-align: left">${dt}:</dt>
14 <dt>${dt}:</dt>
15 <dd style="margin-left: 160px" title="${tt}">${dd}</dd>
15 <dd title="${tt}">${dd}</dd>
16 %endfor
16 %endfor
17 </dl>
17 </dl>
18
18
@@ -30,7 +30,7 b''
30 </td>
30 </td>
31 <td>
31 <td>
32 %if r2p.user.username !='default':
32 %if r2p.user.username !='default':
33 <span style="color:#da4f49" class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${r2p.user.user_id}, 'user', '${'id%s'%id(r2p.user.username)}', '${r2p.user.username}')">
33 <span class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${r2p.user.user_id}, 'user', '${'id%s'%id(r2p.user.username)}', '${r2p.user.username}')">
34 <i class="icon-minus-circled"></i> ${_('Revoke')}
34 <i class="icon-minus-circled"></i> ${_('Revoke')}
35 </span>
35 </span>
36 %endif
36 %endif
@@ -67,7 +67,7 b''
67 %endif
67 %endif
68 </td>
68 </td>
69 <td>
69 <td>
70 <span style="color:#da4f49" class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${g2p.users_group.users_group_id}, 'user_group', '${'id%s'%id(g2p.users_group.users_group_name)}', '${g2p.users_group.users_group_name}')">
70 <span class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${g2p.users_group.users_group_id}, 'user_group', '${'id%s'%id(g2p.users_group.users_group_name)}', '${g2p.users_group.users_group_name}')">
71 <i class="icon-minus-circled"></i> ${_('Revoke')}
71 <i class="icon-minus-circled"></i> ${_('Revoke')}
72 </span>
72 </span>
73 </td>
73 </td>
@@ -77,7 +77,7 b''
77 <tr class="new_members last_new_member" id="add_perm_input"><td colspan="6"></td></tr>
77 <tr class="new_members last_new_member" id="add_perm_input"><td colspan="6"></td></tr>
78 <tr>
78 <tr>
79 <td colspan="6">
79 <td colspan="6">
80 <span id="add_perm" style="cursor: pointer;">
80 <span id="add_perm">
81 <i class="icon-plus"></i> ${_('Add new')}
81 <i class="icon-plus"></i> ${_('Add new')}
82 </span>
82 </span>
83 </td>
83 </td>
@@ -27,10 +27,10 b''
27 ${_('Repository "%(repo_name)s" is being created, you will be redirected when this process is finished.' % {'repo_name':c.repo_name})}
27 ${_('Repository "%(repo_name)s" is being created, you will be redirected when this process is finished.' % {'repo_name':c.repo_name})}
28 </h4>
28 </h4>
29
29
30 <div id="progress" style="width: 500px;margin-left: auto; margin-right: auto">
30 <div id="progress">
31 <div class="progress progress-striped active">
31 <div class="progress progress-striped active">
32 <div class="progress-bar progress-bar" role="progressbar"
32 <div class="progress-bar progress-bar" role="progressbar"
33 aria-valuenow="100" aria-valuemin="0" aria-valuemax="100" style="width: 100%">
33 aria-valuenow="100" aria-valuemin="0" aria-valuemax="100">
34 </div>
34 </div>
35 </div>
35 </div>
36 </div>
36 </div>
@@ -15,7 +15,7 b''
15 <td>${field.field_type}</td>
15 <td>${field.field_type}</td>
16 <td>
16 <td>
17 ${h.form(url('delete_repo_fields', repo_name=c.repo_info.repo_name, field_id=field.repo_field_id))}
17 ${h.form(url('delete_repo_fields', repo_name=c.repo_info.repo_name, field_id=field.repo_field_id))}
18 <i class="icon-minus-circled" style="color:#FF4444"></i>
18 <i class="icon-minus-circled"></i>
19 ${h.submit('remove_%s' % field.repo_field_id, _('Delete'), id="remove_field_%s" % field.repo_field_id,
19 ${h.submit('remove_%s' % field.repo_field_id, _('Delete'), id="remove_field_%s" % field.repo_field_id,
20 class_="btn btn-default btn-xs", onclick="return confirm('"+_('Confirm to delete this field: %s') % field.field_key+"');")}
20 class_="btn btn-default btn-xs", onclick="return confirm('"+_('Confirm to delete this field: %s') % field.field_key+"');")}
21 ${h.end_form()}
21 ${h.end_form()}
@@ -39,7 +39,7 b''
39 </td>
39 </td>
40 <td>
40 <td>
41 %if r2p.user.username !='default':
41 %if r2p.user.username !='default':
42 <span style="color:#da4f49" class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${r2p.user.user_id}, 'user', '${'id%s'%id(r2p.user.username)}', '${r2p.user.username}')">
42 <span class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${r2p.user.user_id}, 'user', '${'id%s'%id(r2p.user.username)}', '${r2p.user.username}')">
43 <i class="icon-minus-circled"></i> ${_('Revoke')}
43 <i class="icon-minus-circled"></i> ${_('Revoke')}
44 </span>
44 </span>
45 %endif
45 %endif
@@ -64,7 +64,7 b''
64 %endif
64 %endif
65 </td>
65 </td>
66 <td>
66 <td>
67 <span style="color:#da4f49" class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${g2p.users_group.users_group_id}, 'user_group', '${'id%s'%id(g2p.users_group.users_group_name)}', '${g2p.users_group.users_group_name}')">
67 <span class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${g2p.users_group.users_group_id}, 'user_group', '${'id%s'%id(g2p.users_group.users_group_name)}', '${g2p.users_group.users_group_name}')">
68 <i class="icon-minus-circled"></i> ${_('Revoke')}
68 <i class="icon-minus-circled"></i> ${_('Revoke')}
69 </span>
69 </span>
70 </td>
70 </td>
@@ -74,7 +74,7 b''
74 <tr class="new_members last_new_member" id="add_perm_input"><td colspan="6"></td></tr>
74 <tr class="new_members last_new_member" id="add_perm_input"><td colspan="6"></td></tr>
75 <tr>
75 <tr>
76 <td colspan="6">
76 <td colspan="6">
77 <span id="add_perm" style="cursor: pointer;">
77 <span id="add_perm">
78 <i class="icon-plus"></i> ${_('Add new')}
78 <i class="icon-plus"></i> ${_('Add new')}
79 </span>
79 </span>
80 </td>
80 </td>
@@ -5,7 +5,7 b''
5 % for hook in c.hooks:
5 % for hook in c.hooks:
6 <% input_id = hook.ui_key.replace('.', '_') %>
6 <% input_id = hook.ui_key.replace('.', '_') %>
7 <label class="control-label" for="${input_id}">${hook.ui_key}</label>
7 <label class="control-label" for="${input_id}">${hook.ui_key}</label>
8 <div style="margin-left:280px">
8 <div>
9 ${h.text(hook.ui_key,hook.ui_value,id=input_id,size=60,readonly="readonly",class_='form-control')}
9 ${h.text(hook.ui_key,hook.ui_value,id=input_id,size=60,readonly="readonly",class_='form-control')}
10 </div>
10 </div>
11 % endfor
11 % endfor
@@ -23,13 +23,13 b''
23 %for hook in c.custom_hooks:
23 %for hook in c.custom_hooks:
24 <% input_id = hook.ui_key.replace('.', '_') %>
24 <% input_id = hook.ui_key.replace('.', '_') %>
25 <label class="control-label" for="${input_id}">${hook.ui_key}</label>
25 <label class="control-label" for="${input_id}">${hook.ui_key}</label>
26 <div style="margin-left:280px">
26 <div>
27 ${h.hidden('hook_ui_key',hook.ui_key,id='hook_ui_key_'+input_id)}
27 ${h.hidden('hook_ui_key',hook.ui_key,id='hook_ui_key_'+input_id)}
28 ${h.hidden('hook_ui_value',hook.ui_value,id='hook_ui_value_'+input_id)}
28 ${h.hidden('hook_ui_value',hook.ui_value,id='hook_ui_value_'+input_id)}
29 ${h.text('hook_ui_value_new',hook.ui_value,id=input_id,size=60,class_='form-control')}
29 ${h.text('hook_ui_value_new',hook.ui_value,id=input_id,size=60,class_='form-control')}
30 <span class="btn btn-default btn-xs"
30 <span class="btn btn-default btn-xs"
31 onclick="delete_hook(${hook.ui_id},'${'id%s' % hook.ui_id }')">
31 onclick="delete_hook(${hook.ui_id},'${'id%s' % hook.ui_id }')">
32 <i class="icon-minus-circled" style="color:#FF4444"></i>
32 <i class="icon-minus-circled"></i>
33 ${_('Delete')}
33 ${_('Delete')}
34 </span>
34 </span>
35 </div>
35 </div>
@@ -40,12 +40,12 b''
40 <label>
40 <label>
41 ${h.text('new_hook_ui_key',size=15,class_='form-control')}
41 ${h.text('new_hook_ui_key',size=15,class_='form-control')}
42 </label>
42 </label>
43 <div style="margin-left:280px">
43 <div>
44 ${h.text('new_hook_ui_value',size=60,class_='form-control')}
44 ${h.text('new_hook_ui_value',size=60,class_='form-control')}
45 </div>
45 </div>
46 </div>
46 </div>
47 <div class="form-group">
47 <div class="form-group">
48 <div class="buttons" style="margin-left:280px">
48 <div class="buttons">
49 ${h.submit('save',_('Save'),class_="btn btn-default")}
49 ${h.submit('save',_('Save'),class_="btn btn-default")}
50 </div>
50 </div>
51 </div>
51 </div>
@@ -1,10 +1,10 b''
1 <div id="update_notice" style="display: none">
1 <div id="update_notice" style="display: none">
2 <div style="padding: 5px 0px 5px 0px; color: #000000; font-weight: bold">${_('Checking for updates...')}</div>
2 <div>${_('Checking for updates...')}</div>
3 </div>
3 </div>
4
4
5 <%
5 <%
6 elems = [
6 elems = [
7 (_('Kallithea version'), h.literal('%s <b><span style="display:none; color:#036185; text-decoration: underline;cursor: pointer" id="check_for_update" >%s</span></b>' % (c.kallithea_version, _('Check for updates'))), ''),
7 (_('Kallithea version'), h.literal('%s <b><span id="check_for_update" style="display:none">%s</span></b>' % (c.kallithea_version, _('Check for updates'))), ''),
8 (_('Kallithea configuration file'), c.ini['__file__'], ''),
8 (_('Kallithea configuration file'), c.ini['__file__'], ''),
9 (_('Python version'), c.py_version, ''),
9 (_('Python version'), c.py_version, ''),
10 (_('Platform'), c.platform, ''),
10 (_('Platform'), c.platform, ''),
@@ -15,21 +15,21 b''
15 %>
15 %>
16 <dl class="dl-horizontal">
16 <dl class="dl-horizontal">
17 %for dt, dd, tt in elems:
17 %for dt, dd, tt in elems:
18 <dt style="width:150px; text-align: left">${dt}:</dt>
18 <dt>${dt}:</dt>
19 <dd style="margin-left: 160px" title="${tt}">${dd}</dd>
19 <dd title="${tt}">${dd}</dd>
20 %endfor
20 %endfor
21 </dl>
21 </dl>
22
22
23 <h4>${_('Python Packages')}</h4>
23 <h4>${_('Python Packages')}</h4>
24 <table class="table" style="margin:0px 0px 0px 0px">
24 <table class="table">
25 <colgroup>
25 <colgroup>
26 <col style="width:180px">
26 <col>
27 <col>
27 <col>
28 </colgroup>
28 </colgroup>
29 <tbody>
29 <tbody>
30 %for key, value in c.modules:
30 %for key, value in c.modules:
31 <tr>
31 <tr>
32 <td style="padding-right:5px;">${key}</td>
32 <td>${key}</td>
33 <td>${value}</td>
33 <td>${value}</td>
34 </tr>
34 </tr>
35 %endfor
35 %endfor
@@ -2,8 +2,7 b''
2 ## upgrade block rendered afte on-click check
2 ## upgrade block rendered afte on-click check
3
3
4 <div class="alert ${'alert-warning' if c.should_upgrade else 'alert-success'}">
4 <div class="alert ${'alert-warning' if c.should_upgrade else 'alert-success'}">
5 <p style="padding: 2px 0px 5px 0px; margin: 0px">
5 <p>
6
7 %if c.should_upgrade:
6 %if c.should_upgrade:
8 A <b>new version</b> is available:
7 A <b>new version</b> is available:
9 %if c.latest_data.get('title'):
8 %if c.latest_data.get('title'):
@@ -9,8 +9,8 b''
9 ]
9 ]
10 %>
10 %>
11 %for dt, dd, tt in elems:
11 %for dt, dd, tt in elems:
12 <dt style="width:150px; text-align: left">${dt}:</dt>
12 <dt>${dt}:</dt>
13 <dd style="margin-left: 160px" title="${tt}">${dd}</dd>
13 <dd title="${tt}">${dd}</dd>
14 %endfor
14 %endfor
15 </dl>
15 </dl>
16
16
@@ -30,7 +30,7 b''
30 </td>
30 </td>
31 <td>
31 <td>
32 %if r2p.user.username !='default':
32 %if r2p.user.username !='default':
33 <span style="color:#da4f49" class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${r2p.user.user_id}, 'user', '${'id%s'%id(r2p.user.username)}', '${r2p.user.username}')">
33 <span class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${r2p.user.user_id}, 'user', '${'id%s'%id(r2p.user.username)}', '${r2p.user.username}')">
34 <i class="icon-minus-circled"></i> ${_('Revoke')}
34 <i class="icon-minus-circled"></i> ${_('Revoke')}
35 </span>
35 </span>
36 %endif
36 %endif
@@ -67,7 +67,7 b''
67 %endif
67 %endif
68 </td>
68 </td>
69 <td>
69 <td>
70 <span style="color:#da4f49" class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${g2p.user_group.users_group_id}, 'user_group', '${'id%s'%id(g2p.user_group.users_group_name)}', '${g2p.user_group.users_group_name}')">
70 <span class="btn btn-default btn-xs" onclick="ajaxActionRevoke(${g2p.user_group.users_group_id}, 'user_group', '${'id%s'%id(g2p.user_group.users_group_name)}', '${g2p.user_group.users_group_name}')">
71 <i class="icon-minus-circled"></i> ${_('Revoke')}
71 <i class="icon-minus-circled"></i> ${_('Revoke')}
72 </span>
72 </span>
73 </td>
73 </td>
@@ -23,21 +23,20 b''
23 <div class="form-group">
23 <div class="form-group">
24 <label class="control-label">${_('Members')}:</label>
24 <label class="control-label">${_('Members')}:</label>
25 <div>
25 <div>
26 <div style="float:left">
26 <div>
27 <div class="text" style="padding: 0px 0px 6px;">${_('Chosen group members')}</div>
27 <div class="text">${_('Chosen group members')}</div>
28 ${h.select('users_group_members',[],c.group_members,multiple=True,size=8,style="min-width:210px",class_='form-control')}
28 ${h.select('users_group_members',[],c.group_members,multiple=True,size=8,style="min-width:210px",class_='form-control')}
29 </div>
29 </div>
30 <div style="float:left;width:20px;padding-top:50px">
30 <div>
31 <i style="cursor:pointer; font-size: 16px" id="add_element" class="icon-left-open" title="Choose selected available"></i>
31 <i id="add_element" class="icon-left-open" title="Choose selected available"></i>
32 <div style="height:50px"></div>
32 <div></div>
33 <i style="cursor:pointer; font-size: 16px" id="remove_element" class="icon-right-open" title="Remove selected chosen"></i>
33 <i id="remove_element" class="icon-right-open" title="Remove selected chosen"></i>
34 </div>
34 </div>
35 <div style="float:left">
35 <div>
36 <div class="text" style="padding: 0px 0px 6px;">${_('Available members')}</div>
36 <div class="text">${_('Available members')}</div>
37 ${h.select('available_members',[],c.available_members,multiple=True,size=8,style="min-width:210px",class_='form-control')}
37 ${h.select('available_members',[],c.available_members,multiple=True,size=8,style="min-width:210px",class_='form-control')}
38 </div>
38 </div>
39 </div>
39 </div>
40 <div style="clear:both"></div>
41 </div>
40 </div>
42 <div class="form-group">
41 <div class="form-group">
43 <div class="buttons">
42 <div class="buttons">
@@ -11,8 +11,8 b''
11 ]
11 ]
12 %>
12 %>
13 %for dt, dd, tt in elems:
13 %for dt, dd, tt in elems:
14 <dt style="width:150px; text-align: left">${dt}:</dt>
14 <dt>${dt}:</dt>
15 <dd style="margin-left: 160px" title="${tt}">${dd}</dd>
15 <dd title="${tt}">${dd}</dd>
16 %endfor
16 %endfor
17 </dl>
17 </dl>
18
18
@@ -1,6 +1,6 b''
1 <table class="table">
1 <table class="table">
2 <tr>
2 <tr>
3 <td style="width: 450px"><div class="truncate autoexpand" style="width:120px;font-size:16px;font-family: monospace">${c.user.api_key}</div></td>
3 <td><div class="truncate autoexpand">${c.user.api_key}</div></td>
4 <td>
4 <td>
5 <span class="label label-success">${_('Built-in')}</span>
5 <span class="label label-success">${_('Built-in')}</span>
6 </td>
6 </td>
@@ -19,9 +19,9 b''
19 %if c.user_api_keys:
19 %if c.user_api_keys:
20 %for api_key in c.user_api_keys:
20 %for api_key in c.user_api_keys:
21 <tr class="${'expired' if api_key.is_expired else ''}">
21 <tr class="${'expired' if api_key.is_expired else ''}">
22 <td style="width: 450px"><div class="truncate autoexpand" style="width:120px;font-size:16px;font-family: monospace">${api_key.api_key}</div></td>
22 <td><div class="truncate autoexpand">${api_key.api_key}</div></td>
23 <td>${api_key.description}</td>
23 <td>${api_key.description}</td>
24 <td style="min-width: 80px">
24 <td>
25 %if api_key.expires == -1:
25 %if api_key.expires == -1:
26 ${_('Expires')}: ${_('Never')}
26 ${_('Expires')}: ${_('Never')}
27 %else:
27 %else:
@@ -19,7 +19,7 b''
19 <td>
19 <td>
20 ${h.form(url('edit_user_emails_delete', id=c.user.user_id))}
20 ${h.form(url('edit_user_emails_delete', id=c.user.user_id))}
21 ${h.hidden('del_email_id',em.email_id)}
21 ${h.hidden('del_email_id',em.email_id)}
22 <i class="icon-minus-circled" style="color:#FF4444"></i>
22 <i class="icon-minus-circled"></i>
23 ${h.submit('remove_',_('Delete'),id="remove_email_%s" % em.email_id,
23 ${h.submit('remove_',_('Delete'),id="remove_email_%s" % em.email_id,
24 class_="btn btn-default btn-xs", onclick="return confirm('"+_('Confirm to delete this email: %s') % em.email+"');")}
24 class_="btn btn-default btn-xs", onclick="return confirm('"+_('Confirm to delete this email: %s') % em.email+"');")}
25 ${h.end_form()}
25 ${h.end_form()}
@@ -17,9 +17,9 b''
17 <td>
17 <td>
18 ${h.form(url('edit_user_ips_delete', id=c.user.user_id))}
18 ${h.form(url('edit_user_ips_delete', id=c.user.user_id))}
19 ${h.hidden('del_ip_id',ip.ip_id)}
19 ${h.hidden('del_ip_id',ip.ip_id)}
20 <i class="icon-minus-circled" style="color:#FF4444"></i>
20 <i class="icon-minus-circled"></i>
21 ${h.submit('remove_',_('Delete'),id="remove_ip_%s" % ip.ip_id,
21 ${h.submit('remove_',_('Delete'),id="remove_ip_%s" % ip.ip_id,
22 class_="btn btn-default btn-xs", onclick="return confirm('"+_('Confirm to delete this IP address: %s') % ip.ip_addr+"');")}
22 class_="btn btn-default btn-xs", onclick="return confirm('"+_('Confirm to delete this IP address: %s') % ip.ip_addr+"');")}
23 ${h.end_form()}
23 ${h.end_form()}
24 </td>
24 </td>
25 </tr>
25 </tr>
@@ -99,14 +99,14 b''
99 ${h.gravatar(h.email_or_none(cs.author), size=16)}
99 ${h.gravatar(h.email_or_none(cs.author), size=16)}
100 <span data-toggle="tooltip" title="${cs.author}" class="user">${h.shorter(h.person(cs.author),22)}</span>
100 <span data-toggle="tooltip" title="${cs.author}" class="user">${h.shorter(h.person(cs.author),22)}</span>
101 </td>
101 </td>
102 <td class="hash" style="width:${len(h.show_id(cs))*6.5}px">
102 <td class="hash">
103 ${h.link_to(h.show_id(cs),h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id), class_='changeset_hash')}
103 ${h.link_to(h.show_id(cs),h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id), class_='changeset_hash')}
104 </td>
104 </td>
105 <td class="date">
105 <td class="date">
106 <div class="date" data-toggle="tooltip" title="${h.fmt_date(cs.date)}">${h.age(cs.date,True)}</div>
106 <div class="date" data-toggle="tooltip" title="${h.fmt_date(cs.date)}">${h.age(cs.date,True)}</div>
107 </td>
107 </td>
108 <td class="expand_commit" data-commit_id="${cs.raw_id}" title="${_('Expand commit message')}">
108 <td class="expand_commit" data-commit_id="${cs.raw_id}" title="${_('Expand commit message')}">
109 <i class="icon-align-left" style="color:#999"></i>
109 <i class="icon-align-left"></i>
110 </td>
110 </td>
111 <td class="mid">
111 <td class="mid">
112 <div class="message" id="C-${cs.raw_id}">${h.urlify_text(cs.message, c.repo_name,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}</div>
112 <div class="message" id="C-${cs.raw_id}">${h.urlify_text(cs.message, c.repo_name,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}</div>
@@ -82,7 +82,7 b''
82
82
83 %if h.HasRepoPermissionLevel('write')(c.repo_name):
83 %if h.HasRepoPermissionLevel('write')(c.repo_name):
84 <h4>${_('Add or upload files directly via Kallithea')}</h4>
84 <h4>${_('Add or upload files directly via Kallithea')}</h4>
85 <div style="margin: 20px 30px;">
85 <div>
86 <div id="add_node_id" class="add_node">
86 <div id="add_node_id" class="add_node">
87 <a class="btn btn-default btn-xs" href="${h.url('files_add_home',repo_name=c.repo_name,revision=0,f_path='', anchor='edit')}">${_('Add New File')}</a>
87 <a class="btn btn-default btn-xs" href="${h.url('files_add_home',repo_name=c.repo_name,revision=0,f_path='', anchor='edit')}">${_('Add New File')}</a>
88 </div>
88 </div>
@@ -241,12 +241,12 b''
241 $('#child_link').addClass('disabled');
241 $('#child_link').addClass('disabled');
242 $('#child_link').addClass('double');
242 $('#child_link').addClass('double');
243 var _html = '';
243 var _html = '';
244 _html +='<a title="__title__" href="__url__">__rev__</a> <i style="color:#036185" class="icon-right-open"></i>'
244 _html +='<a title="__title__" href="__url__">__rev__</a> <i class="icon-right-open"></i>'
245 .replace('__rev__','r{0}:{1}'.format(data.results[0].revision, data.results[0].raw_id.substr(0,6)))
245 .replace('__rev__','r{0}:{1}'.format(data.results[0].revision, data.results[0].raw_id.substr(0,6)))
246 .replace('__title__', data.results[0].message)
246 .replace('__title__', data.results[0].message)
247 .replace('__url__', pyroutes.url('changeset_home', {'repo_name': ${h.js(c.repo_name)},'revision': data.results[0].raw_id}));
247 .replace('__url__', pyroutes.url('changeset_home', {'repo_name': ${h.js(c.repo_name)},'revision': data.results[0].raw_id}));
248 _html +='<br/>'
248 _html +='<br/>'
249 _html +='<a title="__title__" href="__url__">__rev__</a> <i style="color:#036185" class="icon-right-open"></i>'
249 _html +='<a title="__title__" href="__url__">__rev__</a> <i class="icon-right-open"></i>'
250 .replace('__rev__','r{0}:{1}'.format(data.results[1].revision, data.results[1].raw_id.substr(0,6)))
250 .replace('__rev__','r{0}:{1}'.format(data.results[1].revision, data.results[1].raw_id.substr(0,6)))
251 .replace('__title__', data.results[1].message)
251 .replace('__title__', data.results[1].message)
252 .replace('__url__', pyroutes.url('changeset_home', {'repo_name': ${h.js(c.repo_name)},'revision': data.results[1].raw_id}));
252 .replace('__url__', pyroutes.url('changeset_home', {'repo_name': ${h.js(c.repo_name)},'revision': data.results[1].raw_id}));
@@ -278,12 +278,12 b''
278 $('#parent_link').addClass('disabled');
278 $('#parent_link').addClass('disabled');
279 $('#parent_link').addClass('double');
279 $('#parent_link').addClass('double');
280 var _html = '';
280 var _html = '';
281 _html +='<i style="color:#036185" class="icon-left-open"></i> <a title="__title__" href="__url__">__rev__</a>'
281 _html +='<i class="icon-left-open"></i> <a title="__title__" href="__url__">__rev__</a>'
282 .replace('__rev__','r{0}:{1}'.format(data.results[0].revision, data.results[0].raw_id.substr(0,6)))
282 .replace('__rev__','r{0}:{1}'.format(data.results[0].revision, data.results[0].raw_id.substr(0,6)))
283 .replace('__title__', data.results[0].message)
283 .replace('__title__', data.results[0].message)
284 .replace('__url__', pyroutes.url('changeset_home', {'repo_name': ${h.js(c.repo_name)},'revision': data.results[0].raw_id}));
284 .replace('__url__', pyroutes.url('changeset_home', {'repo_name': ${h.js(c.repo_name)},'revision': data.results[0].raw_id}));
285 _html +='<br/>'
285 _html +='<br/>'
286 _html +='<i style="color:#036185" class="icon-left-open"></i> <a title="__title__" href="__url__">__rev__</a>'
286 _html +='<i class="icon-left-open"></i> <a title="__title__" href="__url__">__rev__</a>'
287 .replace('__rev__','r{0}:{1}'.format(data.results[1].revision, data.results[1].raw_id.substr(0,6)))
287 .replace('__rev__','r{0}:{1}'.format(data.results[1].revision, data.results[1].raw_id.substr(0,6)))
288 .replace('__title__', data.results[1].message)
288 .replace('__title__', data.results[1].message)
289 .replace('__url__', pyroutes.url('changeset_home', {'repo_name': ${h.js(c.repo_name)},'revision': data.results[1].raw_id}));
289 .replace('__url__', pyroutes.url('changeset_home', {'repo_name': ${h.js(c.repo_name)},'revision': data.results[1].raw_id}));
@@ -26,7 +26,7 b''
26
26
27 %if co.author_id == request.authuser.user_id or h.HasRepoPermissionLevel('admin')(c.repo_name):
27 %if co.author_id == request.authuser.user_id or h.HasRepoPermissionLevel('admin')(c.repo_name):
28 %if co.deletable():
28 %if co.deletable():
29 <div onClick="confirm('${_('Delete comment?')}') && deleteComment(${co.comment_id})" class="buttons delete-comment btn btn-default btn-xs" style="margin:0 5px">${_('Delete')}</div>
29 <div onClick="confirm('${_('Delete comment?')}') && deleteComment(${co.comment_id})" class="buttons delete-comment btn btn-default btn-xs">${_('Delete')}</div>
30 %endif
30 %endif
31 %endif
31 %endif
32 </div>
32 </div>
@@ -25,7 +25,7 b''
25 ${h.safe_unicode(cs_filename)}
25 ${h.safe_unicode(cs_filename)}
26 </div>
26 </div>
27 <div class="pull-left diff-actions">
27 <div class="pull-left diff-actions">
28 <span style="margin: 0 10px">
28 <span>
29 %if op == 'A':
29 %if op == 'A':
30 <span class="no-file" data-toggle="tooltip" title="${_('No file before')}">
30 <span class="no-file" data-toggle="tooltip" title="${_('No file before')}">
31 <i class="icon-minus-circled"></i></span>
31 <i class="icon-minus-circled"></i></span>
@@ -7,10 +7,10 b''
7 %if c.ancestors:
7 %if c.ancestors:
8 <div class="ancestor">
8 <div class="ancestor">
9 %if len(c.ancestors) > 1:
9 %if len(c.ancestors) > 1:
10 <div style="color:red; font-weight: bold">
10 <div class="text-danger">
11 ${_('Criss cross merge situation with multiple merge ancestors detected!')}
11 ${_('Criss cross merge situation with multiple merge ancestors detected!')}
12 </div>
12 </div>
13 <div style="color:red">
13 <div>
14 ${_('Please merge the target branch to your branch before creating a pull request.')}
14 ${_('Please merge the target branch to your branch before creating a pull request.')}
15 </div>
15 </div>
16 %endif
16 %endif
@@ -24,15 +24,15 b''
24 %endif
24 %endif
25
25
26 <div id="graph_nodes">
26 <div id="graph_nodes">
27 <canvas id="graph_canvas" style="width:0"></canvas>
27 <canvas id="graph_canvas"></canvas>
28 </div>
28 </div>
29
29
30 <div id="graph_content_pr" style="margin-left: 100px;">
30 <div id="graph_content_pr">
31
31
32 <table class="table compare_view_commits">
32 <table class="table compare_view_commits">
33 %for cnt, cs in enumerate(reversed(c.cs_ranges)):
33 %for cnt, cs in enumerate(reversed(c.cs_ranges)):
34 <tr id="chg_${cnt+1}" class="${'mergerow' if len(cs.parents) > 1 else ''}">
34 <tr id="chg_${cnt+1}" class="${'mergerow' if len(cs.parents) > 1 else ''}">
35 <td style="width:50px">
35 <td>
36 %if cs.raw_id in c.statuses:
36 %if cs.raw_id in c.statuses:
37 <div title="${_('Changeset status: %s') % c.statuses[cs.raw_id][1]}" class="changeset-status-ico">
37 <div title="${_('Changeset status: %s') % c.statuses[cs.raw_id][1]}" class="changeset-status-ico">
38 <i class="icon-circle changeset-status-${c.statuses[cs.raw_id][0]}"></i>
38 <i class="icon-circle changeset-status-${c.statuses[cs.raw_id][0]}"></i>
@@ -64,7 +64,7 b''
64 ${index}
64 ${index}
65 </span>
65 </span>
66 </td>
66 </td>
67 <td style="width: 140px"><span data-toggle="tooltip" title="${h.age(cs.date)}">${cs.date}</span></td>
67 <td><span data-toggle="tooltip" title="${h.age(cs.date)}">${cs.date}</span></td>
68 <td class="author">
68 <td class="author">
69 ${h.gravatar(h.email_or_none(cs.author), size=16)}
69 ${h.gravatar(h.email_or_none(cs.author), size=16)}
70 <span data-toggle="tooltip" title="${cs.author}" class="user">${h.shorter(h.person(cs.author),22)}</span>
70 <span data-toggle="tooltip" title="${cs.author}" class="user">${h.shorter(h.person(cs.author),22)}</span>
@@ -76,10 +76,10 b''
76 %endif
76 %endif
77 </td>
77 </td>
78 <td class="expand_commit" data-commit_id="${cs.raw_id}" title="${_('Expand commit message')}">
78 <td class="expand_commit" data-commit_id="${cs.raw_id}" title="${_('Expand commit message')}">
79 <i class="icon-align-left" style="color:#999"></i>
79 <i class="icon-align-left"></i>
80 </td>
80 </td>
81 <td class="mid">
81 <td class="mid">
82 <div class="pull-right" style="margin-top: -4px;">
82 <div class="pull-right">
83 %for tag in cs.tags:
83 %for tag in cs.tags:
84 <span class="tagtag" title="${_('Tag %s') % tag}">
84 <span class="tagtag" title="${_('Tag %s') % tag}">
85 ${h.link_to(tag,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}
85 ${h.link_to(tag,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}
@@ -109,7 +109,7 b''
109 %endif
109 %endif
110 %if c.cs_ranges_org is not None:
110 %if c.cs_ranges_org is not None:
111 ## TODO: list actual changesets?
111 ## TODO: list actual changesets?
112 <div style="font-size:1.1em;font-weight: bold;clear:both;padding-top:10px">
112 <div>
113 ${h.link_to_ref(c.cs_repo.repo_name, c.cs_ref_type, c.cs_ref_name, c.cs_rev)}
113 ${h.link_to_ref(c.cs_repo.repo_name, c.cs_ref_type, c.cs_ref_name, c.cs_rev)}
114 ${_('is')}
114 ${_('is')}
115 <a href="${c.swap_url}">${_('%s changesets') % (len(c.cs_ranges_org))}</a>
115 <a href="${c.swap_url}">${_('%s changesets') % (len(c.cs_ranges_org))}</a>
@@ -24,8 +24,6 b''
24 <i class="icon-keyhole-circled" title="${_('Private repository')}"></i>
24 <i class="icon-keyhole-circled" title="${_('Private repository')}"></i>
25 %elif not private and c.visual.show_public_icon:
25 %elif not private and c.visual.show_public_icon:
26 <i class="icon-globe" title="${_('Public repository')}"></i>
26 <i class="icon-globe" title="${_('Public repository')}"></i>
27 %else:
28 <span style="margin: 0px 8px 0px 8px"></span>
29 %endif
27 %endif
30 <span class="dt_repo_name">${get_name(name)}</span>
28 <span class="dt_repo_name">${get_name(name)}</span>
31 </a>
29 </a>
@@ -77,7 +75,7 b''
77 </div>
75 </div>
78 <div class="grid_delete pull-left">
76 <div class="grid_delete pull-left">
79 ${h.form(h.url('delete_repo', repo_name=repo_name))}
77 ${h.form(h.url('delete_repo', repo_name=repo_name))}
80 <i class="icon-minus-circled" style="color:#FF4444"></i>
78 <i class="icon-minus-circled"></i>
81 ${h.submit('remove_%s' % repo_name,_('Delete'),class_="btn btn-default btn-xs",
79 ${h.submit('remove_%s' % repo_name,_('Delete'),class_="btn btn-default btn-xs",
82 onclick="return confirm('"+_('Confirm to delete this repository: %s') % repo_name+"');")}
80 onclick="return confirm('"+_('Confirm to delete this repository: %s') % repo_name+"');")}
83 ${h.end_form()}
81 ${h.end_form()}
@@ -105,7 +103,7 b''
105 </div>
103 </div>
106 <div class="grid_delete pull-left">
104 <div class="grid_delete pull-left">
107 ${h.form(h.url('delete_user', id=user_id))}
105 ${h.form(h.url('delete_user', id=user_id))}
108 <i class="icon-minus-circled" style="color:#FF4444"></i>
106 <i class="icon-minus-circled"></i>
109 ${h.submit('remove_',_('Delete'),id="remove_user_%s" % user_id, class_="btn btn-default btn-xs",
107 ${h.submit('remove_',_('Delete'),id="remove_user_%s" % user_id, class_="btn btn-default btn-xs",
110 onclick="return confirm('"+_('Confirm to delete this user: %s') % username+"');")}
108 onclick="return confirm('"+_('Confirm to delete this user: %s') % username+"');")}
111 ${h.end_form()}
109 ${h.end_form()}
@@ -120,7 +118,7 b''
120 </div>
118 </div>
121 <div class="grid_delete pull-left">
119 <div class="grid_delete pull-left">
122 ${h.form(h.url('delete_users_group', id=user_group_id))}
120 ${h.form(h.url('delete_users_group', id=user_group_id))}
123 <i class="icon-minus-circled" style="color:#FF4444"></i>
121 <i class="icon-minus-circled"></i>
124 ${h.submit('remove_',_('Delete'),id="remove_group_%s" % user_group_id, class_="btn btn-default btn-xs",
122 ${h.submit('remove_',_('Delete'),id="remove_group_%s" % user_group_id, class_="btn btn-default btn-xs",
125 onclick="return confirm('"+_('Confirm to delete this user group: %s') % user_group_name+"');")}
123 onclick="return confirm('"+_('Confirm to delete this user group: %s') % user_group_name+"');")}
126 ${h.end_form()}
124 ${h.end_form()}
@@ -135,7 +133,7 b''
135 </div>
133 </div>
136 <div class="grid_delete pull-left">
134 <div class="grid_delete pull-left">
137 ${h.form(h.url('delete_repos_group', group_name=repo_group_name))}
135 ${h.form(h.url('delete_repos_group', group_name=repo_group_name))}
138 <i class="icon-minus-circled" style="color:#FF4444"></i>
136 <i class="icon-minus-circled"></i>
139 ${h.submit('remove_%s' % repo_group_name,_('Delete'),class_="btn btn-default btn-xs",
137 ${h.submit('remove_%s' % repo_group_name,_('Delete'),class_="btn btn-default btn-xs",
140 onclick="return confirm('"+ungettext('Confirm to delete this group: %s with %s repository','Confirm to delete this group: %s with %s repositories',gr_count) % (repo_group_name, gr_count)+"');")}
138 onclick="return confirm('"+ungettext('Confirm to delete this group: %s with %s repository','Confirm to delete this group: %s with %s repositories',gr_count) % (repo_group_name, gr_count)+"');")}
141 ${h.end_form()}
139 ${h.end_form()}
@@ -1,4 +1,4 b''
1 <div class="file_author" style="clear:both">
1 <div class="file_author">
2 <div class="item">${h.literal(ungettext(u'%s author',u'%s authors',len(c.authors)) % ('<b>%s</b>' % len(c.authors))) }</div>
2 <div class="item">${h.literal(ungettext(u'%s author',u'%s authors',len(c.authors)) % ('<b>%s</b>' % len(c.authors))) }</div>
3 %for email, user in c.authors:
3 %for email, user in c.authors:
4 <div class="contributor pull-left" data-toggle="tooltip" title="${user}">
4 <div class="contributor pull-left" data-toggle="tooltip" title="${user}">
@@ -1,4 +1,4 b''
1 <div id="node_history" class="clearfix" style="padding: 0px 0px 10px 0px">
1 <div id="node_history" class="clearfix">
2 <div class="pull-left">
2 <div class="pull-left">
3 ${h.form(h.url('files_diff_home',repo_name=c.repo_name,f_path=c.f_path),method='get')}
3 ${h.form(h.url('files_diff_home',repo_name=c.repo_name,f_path=c.f_path),method='get')}
4 ${h.hidden('diff2',c.changeset.raw_id)}
4 ${h.hidden('diff2',c.changeset.raw_id)}
@@ -10,7 +10,7 b''
10 ${h.link_to(_('Show Authors'),'#',class_="btn btn-default btn-sm" ,id="show_authors")}
10 ${h.link_to(_('Show Authors'),'#',class_="btn btn-default btn-sm" ,id="show_authors")}
11 ${h.end_form()}
11 ${h.end_form()}
12 </div>
12 </div>
13 <div id="file_authors" class="file_author" style="clear:both; display: none"></div>
13 <div id="file_authors" class="file_author" style="display: none"></div>
14 </div>
14 </div>
15
15
16 <div id="body" class="panel panel-default">
16 <div id="body" class="panel panel-default">
@@ -8,7 +8,7 b''
8 % if h.HasRepoPermissionLevel('write')(c.repo_name):
8 % if h.HasRepoPermissionLevel('write')(c.repo_name):
9 / <span title="${_('Add New File')}">
9 / <span title="${_('Add New File')}">
10 <a href="${h.url('files_add_home',repo_name=c.repo_name,revision=c.changeset.raw_id,f_path=c.f_path, anchor='edit')}">
10 <a href="${h.url('files_add_home',repo_name=c.repo_name,revision=c.changeset.raw_id,f_path=c.f_path, anchor='edit')}">
11 <i class="icon-plus-circled" style="color:#5bb75b; font-size: 16px"></i></a>
11 <i class="icon-plus-circled"></i></a>
12 </span>
12 </span>
13 % endif
13 % endif
14 %endif
14 %endif
@@ -4,12 +4,12 b''
4 <div>
4 <div>
5 <div class="follower_user">
5 <div class="follower_user">
6 ${h.gravatar_div(f.user.email, size=24)}
6 ${h.gravatar_div(f.user.email, size=24)}
7 <span style="font-size: 20px"> <b>${f.user.username}</b> (${f.user.name} ${f.user.lastname})</span>
7 <span> <b>${f.user.username}</b> (${f.user.name} ${f.user.lastname})</span>
8 </div>
8 </div>
9 <div style="clear:both;padding-top: 10px"></div>
9 <div></div>
10 <div class="follower_date">${_('Started following -')}
10 <div class="follower_date">${_('Started following -')}
11 <span data-toggle="tooltip" title="${f.follows_from}"> ${h.age(f.follows_from)}</span></div>
11 <span data-toggle="tooltip" title="${f.follows_from}"> ${h.age(f.follows_from)}</span></div>
12 <div style="border-bottom: 1px solid #DDD;margin:10px 0px 10px 0px"></div>
12 <div></div>
13 </div>
13 </div>
14 % endfor
14 % endfor
15
15
@@ -5,20 +5,19 b''
5 <div>
5 <div>
6 <div class="fork_user">
6 <div class="fork_user">
7 ${h.gravatar_div(f.owner.email, size=24)}
7 ${h.gravatar_div(f.owner.email, size=24)}
8 <span style="font-size: 20px">
8 <span>
9 <b>${f.owner.username}</b> (${f.owner.name} ${f.owner.lastname}) /
9 <b>${f.owner.username}</b> (${f.owner.name} ${f.owner.lastname}) /
10 ${h.link_to(f.repo_name,h.url('summary_home',repo_name=f.repo_name))}
10 ${h.link_to(f.repo_name,h.url('summary_home',repo_name=f.repo_name))}
11 </span>
11 </span>
12 <div style="padding:5px 3px 3px 42px;">${f.description}</div>
12 <div>${f.description}</div>
13 </div>
13 </div>
14 <div style="clear:both;padding-top: 10px"></div>
14 <div></div>
15 <div class="follower_date">${_('Forked')} -
15 <div class="follower_date">${_('Forked')} -
16 <span data-toggle="tooltip" title="${h.fmt_date(f.created_on)}"> ${h.age(f.created_on)}</span>
16 <span data-toggle="tooltip" title="${h.fmt_date(f.created_on)}"> ${h.age(f.created_on)}</span>
17 <a title="${_('Compare fork with %s') % c.repo_name}"
17 <a title="${_('Compare fork with %s') % c.repo_name}"
18 href="${h.url('compare_url',repo_name=c.repo_name, org_ref_type=c.db_repo.landing_rev[0],org_ref_name=c.db_repo.landing_rev[1],other_repo=f.repo_name,other_ref_type=c.db_repo.landing_rev[0],other_ref_name=c.db_repo.landing_rev[1], merge=1)}"
18 href="${h.url('compare_url',repo_name=c.repo_name, org_ref_type=c.db_repo.landing_rev[0],org_ref_name=c.db_repo.landing_rev[1],other_repo=f.repo_name,other_ref_type=c.db_repo.landing_rev[0],other_ref_name=c.db_repo.landing_rev[1], merge=1)}"
19 class="btn btn-default btn-sm"><i class="icon-git-compare"></i> ${_('Compare Fork')}</a>
19 class="btn btn-default btn-sm"><i class="icon-git-compare"></i> ${_('Compare Fork')}</a>
20 </div>
20 </div>
21 <div style="border-bottom: 1px solid #DDD;margin:10px 0px 10px 0px"></div>
22 </div>
21 </div>
23 % endfor
22 % endfor
24 <ul class="pagination">
23 <ul class="pagination">
@@ -43,7 +43,7 b''
43 ${c.journal_pager.pager()}
43 ${c.journal_pager.pager()}
44 </ul>
44 </ul>
45 %else:
45 %else:
46 <div style="padding:5px 0px 10px 10px;">
46 <div>
47 ${_('No entries yet')}
47 ${_('No entries yet')}
48 </div>
48 </div>
49 %endif
49 %endif
@@ -44,29 +44,29 b''
44 ##ORG
44 ##ORG
45 <div>
45 <div>
46 <div>
46 <div>
47 <div style="padding:5px 3px 3px 3px;">
47 <div>
48 <b>${_('Origin repository')}:</b> <span id="org_repo_desc">${c.db_repo.description.split('\n')[0]}</span>
48 <b>${_('Origin repository')}:</b> <span id="org_repo_desc">${c.db_repo.description.split('\n')[0]}</span>
49 </div>
49 </div>
50 <div>
50 <div>
51 ${h.select('org_repo','',c.cs_repos,class_='refs')}:${h.select('org_ref',c.default_cs_ref,c.cs_refs,class_='refs')}
51 ${h.select('org_repo','',c.cs_repos,class_='refs')}:${h.select('org_ref',c.default_cs_ref,c.cs_refs,class_='refs')}
52 </div>
52 </div>
53 <div style="padding:5px 3px 3px 3px;">
53 <div>
54 <b>${_('Revision')}:</b> <span id="org_rev_span">-</span>
54 <b>${_('Revision')}:</b> <span id="org_rev_span">-</span>
55 </div>
55 </div>
56 </div>
56 </div>
57 </div>
57 </div>
58
58
59 ##OTHER, most Probably the PARENT OF THIS FORK
59 ##OTHER, most Probably the PARENT OF THIS FORK
60 <div style="border-top: 1px solid #EEE; margin: 5px 0px 0px 0px">
60 <div>
61 <div>
61 <div>
62 ## filled with JS
62 ## filled with JS
63 <div style="padding:5px 3px 3px 3px;">
63 <div>
64 <b>${_('Destination repository')}:</b> <span id="other_repo_desc">${c.a_repo.description.split('\n')[0]}</span>
64 <b>${_('Destination repository')}:</b> <span id="other_repo_desc">${c.a_repo.description.split('\n')[0]}</span>
65 </div>
65 </div>
66 <div>
66 <div>
67 ${h.select('other_repo',c.a_repo.repo_name,c.a_repos,class_='refs')}:${h.select('other_ref',c.default_a_ref,c.a_refs,class_='refs')}
67 ${h.select('other_repo',c.a_repo.repo_name,c.a_repos,class_='refs')}:${h.select('other_ref',c.default_a_ref,c.a_refs,class_='refs')}
68 </div>
68 </div>
69 <div style="padding:5px 3px 3px 3px;">
69 <div>
70 <b>${_('Revision')}:</b> <span id="other_rev_span">-</span>
70 <b>${_('Revision')}:</b> <span id="other_rev_span">-</span>
71 </div>
71 </div>
72 </div>
72 </div>
@@ -58,9 +58,9 b''
58 ${pr.other_repo.repo_name}#${other_ref_name}
58 ${pr.other_repo.repo_name}#${other_ref_name}
59 </a>
59 </a>
60 </td>
60 </td>
61 <td style="text-align:right">
61 <td>
62 %if pr.owner_id == request.authuser.user_id:
62 %if pr.owner_id == request.authuser.user_id:
63 ${h.form(url('pullrequest_delete', repo_name=pr.other_repo.repo_name, pull_request_id=pr.pull_request_id), style="display:inline-block")}
63 ${h.form(url('pullrequest_delete', repo_name=pr.other_repo.repo_name, pull_request_id=pr.pull_request_id))}
64 <button class="btn btn-default btn-xs"
64 <button class="btn btn-default btn-xs"
65 id="remove_${pr.pull_request_id}"
65 id="remove_${pr.pull_request_id}"
66 name="remove_${pr.pull_request_id}"
66 name="remove_${pr.pull_request_id}"
@@ -34,7 +34,7 b''
34 </div>
34 </div>
35 <div id="pr-summary" class="form-horizontal">
35 <div id="pr-summary" class="form-horizontal">
36
36
37 <div class="pr-not-edit form-group" style="min-height:47px">
37 <div class="pr-not-edit form-group">
38 <label>${_('Description')}:</label>
38 <label>${_('Description')}:</label>
39 %if editable:
39 %if editable:
40 <div id="pr-edit-btn">
40 <div id="pr-edit-btn">
@@ -67,7 +67,7 b''
67 <div>
67 <div>
68 <div class="changeset-status-container">
68 <div class="changeset-status-container">
69 %if c.current_voting_result:
69 %if c.current_voting_result:
70 <span class="changeset-status-ico" style="padding:0px 4px 0px 0px">
70 <span class="changeset-status-ico">
71 <i class="icon-circle changeset-status-${c.current_voting_result}" title="${_('Pull request status calculated from votes')}"></i></span>
71 <i class="icon-circle changeset-status-${c.current_voting_result}" title="${_('Pull request status calculated from votes')}"></i></span>
72 <span class="changeset-status-lbl" data-toggle="tooltip" title="${_('Pull request status calculated from votes')}">
72 <span class="changeset-status-lbl" data-toggle="tooltip" title="${_('Pull request status calculated from votes')}">
73 %if c.pull_request.is_closed():
73 %if c.pull_request.is_closed():
@@ -120,9 +120,9 b''
120 <div>
120 <div>
121 ## TODO: use cs_ranges[-1] or org_ref_parts[1] in both cases?
121 ## TODO: use cs_ranges[-1] or org_ref_parts[1] in both cases?
122 %if h.is_hg(c.pull_request.org_repo):
122 %if h.is_hg(c.pull_request.org_repo):
123 <span style="font-family: monospace">hg pull ${c.pull_request.org_repo.clone_url()} -r ${h.short_id(c.cs_ranges[-1].raw_id)}</span>
123 <span>hg pull ${c.pull_request.org_repo.clone_url()} -r ${h.short_id(c.cs_ranges[-1].raw_id)}</span>
124 %elif h.is_git(c.pull_request.org_repo):
124 %elif h.is_git(c.pull_request.org_repo):
125 <span style="font-family: monospace">git pull ${c.pull_request.org_repo.clone_url()} ${c.pull_request.org_ref_parts[1]}</span>
125 <span>git pull ${c.pull_request.org_repo.clone_url()} ${c.pull_request.org_ref_parts[1]}</span>
126 %endif
126 %endif
127 </div>
127 </div>
128 %endif
128 %endif
@@ -152,11 +152,11 b''
152 <div>
152 <div>
153 <div class="msg-div">${c.update_msg}</div>
153 <div class="msg-div">${c.update_msg}</div>
154 %if c.avail_revs:
154 %if c.avail_revs:
155 <div id="updaterevs" class="clearfix" style="max-height:200px; overflow-y:auto; overflow-x:hidden; margin-bottom: 10px; padding: 1px 0">
155 <div id="updaterevs" class="clearfix">
156 <div style="height:0;width:40px">
156 <div>
157 <canvas id="avail_graph_canvas" style="width:0"></canvas>
157 <canvas id="avail_graph_canvas"></canvas>
158 </div>
158 </div>
159 <table class="table" id="updaterevs-table" style="padding-left:50px">
159 <table class="table" id="updaterevs-table">
160 %for cnt, cs in enumerate(c.avail_cs):
160 %for cnt, cs in enumerate(c.avail_cs):
161 <tr id="chg_available_${cnt+1}" class="${'mergerow' if len(cs.parents) > 1 and not (editable and cs.revision in c.avail_revs) else ''}">
161 <tr id="chg_available_${cnt+1}" class="${'mergerow' if len(cs.parents) > 1 and not (editable and cs.revision in c.avail_revs) else ''}">
162 %if c.cs_ranges and cs.revision == c.cs_ranges[-1].revision:
162 %if c.cs_ranges and cs.revision == c.cs_ranges[-1].revision:
@@ -172,17 +172,17 b''
172 ${h.radio(name='updaterev', value=cs.raw_id, style=None if cs.revision in c.avail_revs else 'visibility: hidden')}
172 ${h.radio(name='updaterev', value=cs.raw_id, style=None if cs.revision in c.avail_revs else 'visibility: hidden')}
173 </td>
173 </td>
174 %endif
174 %endif
175 <td style="width: 120px"><span data-toggle="tooltip" title="${h.age(cs.date)}">${cs.date}</span></td>
175 <td><span data-toggle="tooltip" title="${h.age(cs.date)}">${cs.date}</span></td>
176 <td>${h.link_to(h.show_id(cs),h.url('changeset_home',repo_name=c.cs_repo.repo_name,revision=cs.raw_id), class_='changeset_hash')}</td>
176 <td>${h.link_to(h.show_id(cs),h.url('changeset_home',repo_name=c.cs_repo.repo_name,revision=cs.raw_id), class_='changeset_hash')}</td>
177 <td>
177 <td>
178 <div class="pull-right" style="margin-top: -4px;">
178 <div class="pull-right">
179 %for tag in cs.tags:
179 %for tag in cs.tags:
180 <span class="tagtag" title="${_('Tag %s') % tag}">
180 <span class="tagtag" title="${_('Tag %s') % tag}">
181 ${h.link_to(tag,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}
181 ${h.link_to(tag,h.url('changeset_home',repo_name=c.repo_name,revision=cs.raw_id))}
182 </span>
182 </span>
183 %endfor
183 %endfor
184 </div>
184 </div>
185 <div class="message" style="white-space:normal; height:1.1em; max-width: 500px; padding:0">${h.urlify_text(cs.message, c.repo_name)}</div>
185 <div class="message">${h.urlify_text(cs.message, c.repo_name)}</div>
186 </td>
186 </td>
187 %endif
187 %endif
188 </tr>
188 </tr>
@@ -208,7 +208,7 b''
208 ## REVIEWERS
208 ## REVIEWERS
209 <div class="pull-left">
209 <div class="pull-left">
210 <h4 class="pr-details-title">${_('Pull Request Reviewers')}</h4>
210 <h4 class="pr-details-title">${_('Pull Request Reviewers')}</h4>
211 <div id="reviewers" style="padding:0px 0px 5px 10px">
211 <div id="reviewers">
212 ## members goes here !
212 ## members goes here !
213 <div>
213 <div>
214 %for member,status in c.pull_request_reviewers:
214 %for member,status in c.pull_request_reviewers:
@@ -254,7 +254,7 b''
254
254
255 %if not c.pull_request_reviewers:
255 %if not c.pull_request_reviewers:
256 <h4>${_('Potential Reviewers')}</h4>
256 <h4>${_('Potential Reviewers')}</h4>
257 <div style="margin: 10px 0 10px 10px; max-width: 250px">
257 <div>
258 <div>
258 <div>
259 ${_('Click to add the repository owner as reviewer:')}
259 ${_('Click to add the repository owner as reviewer:')}
260 </div>
260 </div>
@@ -276,8 +276,6 b''
276 </div>
276 </div>
277 %endif
277 %endif
278 </div>
278 </div>
279 <div style="clear:both">
280 </div>
281 ${h.end_form()}
279 ${h.end_form()}
282 </div>
280 </div>
283
281
@@ -71,7 +71,7 b''
71
71
72 <div class="form-group">
72 <div class="form-group">
73 ## <label>${_('Status')}:</label>
73 ## <label>${_('Status')}:</label>
74 <div style="font-weight: bold;clear:both">${c.runtime}</div>
74 <div>${c.runtime}</div>
75 </div>
75 </div>
76 </div>
76 </div>
77 ${h.end_form()}
77 ${h.end_form()}
@@ -25,7 +25,7 b''
25 </div>
25 </div>
26
26
27 <div class="graph panel-body">
27 <div class="graph panel-body">
28 <div style="padding:0 10px 10px 17px;">
28 <div>
29 %if c.no_data:
29 %if c.no_data:
30 ${c.no_data_msg}
30 ${c.no_data_msg}
31 %if h.HasPermissionAny('hg.admin')('enable stats on from summary'):
31 %if h.HasPermissionAny('hg.admin')('enable stats on from summary'):
@@ -35,17 +35,16 b''
35 ${_('Stats gathered: ')} ${c.stats_percentage}%
35 ${_('Stats gathered: ')} ${c.stats_percentage}%
36 %endif
36 %endif
37 </div>
37 </div>
38 <div id="commit_history" style="width:450px;height:300px;float:left"></div>
38 <div id="commit_history" class="pull-left"></div>
39
39
40 <div id="legend_data" style="float: left;">
40 <div id="legend_data" class="pull-left">
41 <div id="legend_container"></div>
41 <div id="legend_container"></div>
42 <div id="legend_choices">
42 <div id="legend_choices">
43 <table class="table" id="legend_choices_tables" style="font-size:smaller;color:#545454"></table>
43 <table class="table" id="legend_choices_tables"></table>
44 </div>
44 </div>
45 </div>
45 </div>
46
46
47 <div style="clear: both; height: 10px;"></div>
47 <div id="overview"></div>
48 <div id="overview" style="width: 450px; height: 100px; float: left;"></div>
49 </div>
48 </div>
50 </div>
49 </div>
51
50
@@ -112,7 +112,7 b''
112 <a class="btn btn-default btn-sm" href="${h.url('files_archive_home',repo_name=c.db_repo.repo_name,fname='tip.zip')}"><i class="icon-file-zip"></i> ${_('Download as zip')}</a>
112 <a class="btn btn-default btn-sm" href="${h.url('files_archive_home',repo_name=c.db_repo.repo_name,fname='tip.zip')}"><i class="icon-file-zip"></i> ${_('Download as zip')}</a>
113 </span>
113 </span>
114 ${h.hidden('download_options')}
114 ${h.hidden('download_options')}
115 <span style="vertical-align: bottom">
115 <span>
116 <label data-toggle="tooltip" title="${_('Check this to download archive with subrepos')}">
116 <label data-toggle="tooltip" title="${_('Check this to download archive with subrepos')}">
117 <input id="archive_subrepos" type="checkbox" name="subrepos" />
117 <input id="archive_subrepos" type="checkbox" name="subrepos" />
118 ${_('With subrepos')}
118 ${_('With subrepos')}
@@ -244,7 +244,7 b' class _BaseTestCase(TestController):'
244 response = self.app.get(url(controller='forks', action='forks',
244 response = self.app.get(url(controller='forks', action='forks',
245 repo_name=repo_name))
245 repo_name=repo_name))
246
246
247 response.mustcontain('<div style="padding:5px 3px 3px 42px;">fork of vcs test</div>')
247 response.mustcontain('<div>fork of vcs test</div>')
248
248
249 def test_zzz_fork_permission_page(self):
249 def test_zzz_fork_permission_page(self):
250 usr = self.log_user(self.username, self.password)['user_id']
250 usr = self.log_user(self.username, self.password)['user_id']
General Comments 0
You need to be logged in to leave comments. Login now