Show More
@@ -256,7 +256,7 b' issue_prefix = #' | |||
|
256 | 256 | instance_id = |
|
257 | 257 | |
|
258 | 258 | ## alternative return HTTP header for failed authentication. Default HTTP |
|
259 |
## response is 401 HTTPUnauthorized. Currently |
|
|
259 | ## response is 401 HTTPUnauthorized. Currently Mercurial clients have trouble with | |
|
260 | 260 | ## handling that. Set this variable to 403 to return HTTPForbidden |
|
261 | 261 | auth_ret_code = |
|
262 | 262 |
@@ -253,7 +253,7 b' issue_prefix = #' | |||
|
253 | 253 | instance_id = |
|
254 | 254 | |
|
255 | 255 | <%text>## alternative return HTTP header for failed authentication. Default HTTP</%text> |
|
256 |
<%text>## response is 401 HTTPUnauthorized. Currently |
|
|
256 | <%text>## response is 401 HTTPUnauthorized. Currently Mercurial clients have trouble with</%text> | |
|
257 | 257 | <%text>## handling that. Set this variable to 403 to return HTTPForbidden</%text> |
|
258 | 258 | auth_ret_code = |
|
259 | 259 |
@@ -250,7 +250,7 b' issue_prefix = #' | |||
|
250 | 250 | instance_id = |
|
251 | 251 | |
|
252 | 252 | ## alternative return HTTP header for failed authentication. Default HTTP |
|
253 |
## response is 401 HTTPUnauthorized. Currently |
|
|
253 | ## response is 401 HTTPUnauthorized. Currently Mercurial clients have trouble with | |
|
254 | 254 | ## handling that. Set this variable to 403 to return HTTPForbidden |
|
255 | 255 | auth_ret_code = |
|
256 | 256 |
@@ -141,7 +141,7 b' class SearchController(BaseRepoControlle' | |||
|
141 | 141 | 'Please run whoosh indexer') |
|
142 | 142 | except (Exception): |
|
143 | 143 | log.error(traceback.format_exc()) |
|
144 |
c.runtime = _('An error occurred during |
|
|
144 | c.runtime = _('An error occurred during search operation.') | |
|
145 | 145 | |
|
146 | 146 | # Return a rendered template |
|
147 | 147 | return render('/search/search.html') |
@@ -55,7 +55,7 b" GIT_PROTO_PAT = re.compile(r'^/(.+)/(inf" | |||
|
55 | 55 | def is_git(environ): |
|
56 | 56 | path_info = environ['PATH_INFO'] |
|
57 | 57 | isgit_path = GIT_PROTO_PAT.match(path_info) |
|
58 |
log.debug('pathinfo: %s detected as G |
|
|
58 | log.debug('pathinfo: %s detected as Git %s' % ( | |
|
59 | 59 | path_info, isgit_path is not None) |
|
60 | 60 | ) |
|
61 | 61 | return isgit_path |
@@ -200,7 +200,7 b' class SimpleGit(BaseVCSController):' | |||
|
200 | 200 | |
|
201 | 201 | try: |
|
202 | 202 | self._handle_githooks(repo_name, action, baseui, environ) |
|
203 |
log.info('%s action on G |
|
|
203 | log.info('%s action on Git repo "%s" by "%s" from %s' % | |
|
204 | 204 | (action, str_repo_name, safe_str(username), ip_addr)) |
|
205 | 205 | app = self.__make_app(repo_name, repo_path, extras) |
|
206 | 206 | return app(environ, start_response) |
@@ -15,7 +15,7 b'' | |||
|
15 | 15 | kallithea.lib.middleware.simplehg |
|
16 | 16 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
|
17 | 17 | |
|
18 |
SimpleH |
|
|
18 | SimpleHg middleware for handling mercurial protocol request | |
|
19 | 19 | (push/clone etc.). It's implemented with basic auth function |
|
20 | 20 | |
|
21 | 21 | This file was forked by the Kallithea project in July 2014. |
@@ -60,7 +60,7 b' def is_mercurial(environ):' | |||
|
60 | 60 | else: |
|
61 | 61 | ishg_path = False |
|
62 | 62 | |
|
63 |
log.debug('pathinfo: %s detected as |
|
|
63 | log.debug('pathinfo: %s detected as Mercurial %s' % ( | |
|
64 | 64 | path_info, ishg_path) |
|
65 | 65 | ) |
|
66 | 66 | return ishg_path |
@@ -202,7 +202,7 b' class SimpleHg(BaseVCSController):' | |||
|
202 | 202 | self.__inject_extras(repo_path, baseui, extras) |
|
203 | 203 | |
|
204 | 204 | try: |
|
205 |
log.info('%s action on |
|
|
205 | log.info('%s action on Mercurial repo "%s" by "%s" from %s' % | |
|
206 | 206 | (action, str_repo_name, safe_str(username), ip_addr)) |
|
207 | 207 | app = self.__make_app(repo_path, baseui, extras) |
|
208 | 208 | return app(environ, start_response) |
@@ -825,7 +825,7 b' def check_git_version():' | |||
|
825 | 825 | to_old_git = True |
|
826 | 826 | |
|
827 | 827 | if 'git' in BACKENDS: |
|
828 |
log.debug('G |
|
|
828 | log.debug('Git executable: "%s" version detected: %s' | |
|
829 | 829 | % (settings.GIT_EXECUTABLE_PATH, stdout)) |
|
830 | 830 | if stderr: |
|
831 | 831 | log.warning('Unable to detect git version, org error was: %r' % stderr) |
@@ -4840,6 +4840,7 b' span.pr-closed-tag {' | |||
|
4840 | 4840 | padding: 10px 10px 10px 0px; |
|
4841 | 4841 | font-size: 16px; |
|
4842 | 4842 | font-weight: bold; |
|
4843 | text-transform: capitalize; | |
|
4843 | 4844 | } |
|
4844 | 4845 | |
|
4845 | 4846 | #perms .perm_tag { |
@@ -773,7 +773,7 b' var _placeAddButton = function($line_tr)' | |||
|
773 | 773 | $tr = $tr.next(); |
|
774 | 774 | } |
|
775 | 775 | $tr.find('.add-comment').remove(); |
|
776 |
var label = TRANSLATION_MAP['Add |
|
|
776 | var label = TRANSLATION_MAP['Add Another Comment']; | |
|
777 | 777 | var $html_el = $('<div class="add-comment"><span class="btn btn-mini">{0}</span></div>'.format(label)); |
|
778 | 778 | $html_el.click(function(e) { |
|
779 | 779 | injectInlineForm($line_tr); |
@@ -2168,11 +2168,11 b' var YUI_datatable = function(data, field' | |||
|
2168 | 2168 | var $target = $('#' + $button.attr('target')); |
|
2169 | 2169 | if($target.hasClass('hidden')){ |
|
2170 | 2170 | $target.removeClass('hidden'); |
|
2171 |
$button.html("↑ {0} ↑".format(_TM['Collapse |
|
|
2171 | $button.html("↑ {0} ↑".format(_TM['Collapse Diff'])); | |
|
2172 | 2172 | } |
|
2173 | 2173 | else if(!$target.hasClass('hidden')){ |
|
2174 | 2174 | $target.addClass('hidden'); |
|
2175 |
$button.html("↓ {0} ↓".format(_TM['Expand |
|
|
2175 | $button.html("↓ {0} ↓".format(_TM['Expand Diff'])); | |
|
2176 | 2176 | } |
|
2177 | 2177 | }); |
|
2178 | 2178 | }); |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('Admin |
|
|
5 | ${_('Admin Journal')} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -12,8 +12,8 b'' | |||
|
12 | 12 | <form id="filter_form"> |
|
13 | 13 | <input class="q_filter_box ${'' if c.search_term else 'initial'}" id="j_filter" size="15" type="text" name="filter" value="${c.search_term or _('journal filter...')}"/> |
|
14 | 14 | <span class="tooltip" title="${h.tooltip(h.journal_filter_help())}">?</span> |
|
15 |
<input type='submit' value="${_(' |
|
|
16 |
${_('Admin |
|
|
15 | <input type='submit' value="${_('Filter')}" class="btn btn-mini" style="padding:0px 2px 0px 2px;margin:0px"/> | |
|
16 | ${_('Admin Journal')} - ${ungettext('%s Entry', '%s Entries', c.users_log.item_count) % (c.users_log.item_count)} | |
|
17 | 17 | </form> |
|
18 | 18 | ${h.end_form()} |
|
19 | 19 | </%def> |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('Repositor |
|
|
5 | ${_('Repository Defaults')} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -25,7 +25,7 b'' | |||
|
25 | 25 | ${self.breadcrumbs()} |
|
26 | 26 | </div> |
|
27 | 27 | |
|
28 |
<h3>${_('Repositor |
|
|
28 | <h3>${_('Repository Defaults')}</h3> | |
|
29 | 29 | |
|
30 | 30 | ${h.form(url('default', id='defaults'),method='put')} |
|
31 | 31 | <div class="form"> |
@@ -3,9 +3,9 b'' | |||
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 | 5 | %if c.show_private: |
|
6 |
${_('Private Gists for |
|
|
6 | ${_('Private Gists for User %s') % c.authuser.username} | |
|
7 | 7 | %elif c.show_public: |
|
8 |
${_('Public Gists for |
|
|
8 | ${_('Public Gists for User %s') % c.authuser.username} | |
|
9 | 9 | %else: |
|
10 | 10 | ${_('Public Gists')} |
|
11 | 11 | %endif |
@@ -16,9 +16,9 b'' | |||
|
16 | 16 | |
|
17 | 17 | <%def name="breadcrumbs_links()"> |
|
18 | 18 | %if c.show_private: |
|
19 |
${_('Private Gists for |
|
|
19 | ${_('Private Gists for User %s') % c.authuser.username} | |
|
20 | 20 | %elif c.show_public: |
|
21 |
${_('Public Gists for |
|
|
21 | ${_('Public Gists for User %s') % c.authuser.username} | |
|
22 | 22 | %else: |
|
23 | 23 | ${_('Public Gists')} |
|
24 | 24 | %endif |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('My |
|
|
5 | ${_('My Account')} ${c.authuser.username} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -37,11 +37,11 b'' | |||
|
37 | 37 | </li> |
|
38 | 38 | <li class="${'active' if c.active=='profile' else ''}"><a href="${h.url('my_account')}">${_('Profile')}</a></li> |
|
39 | 39 | <li class="${'active' if c.active=='password' else ''}"><a href="${h.url('my_account_password')}">${_('Password')}</a></li> |
|
40 |
<li class="${'active' if c.active=='api_keys' else ''}"><a href="${h.url('my_account_api_keys')}">${_('API |
|
|
40 | <li class="${'active' if c.active=='api_keys' else ''}"><a href="${h.url('my_account_api_keys')}">${_('API Keys')}</a></li> | |
|
41 | 41 | <li class="${'active' if c.active=='emails' else ''}"><a href="${h.url('my_account_emails')}">${_('My Emails')}</a></li> |
|
42 | 42 | <li class="${'active' if c.active=='repos' else ''}"><a href="${h.url('my_account_repos')}">${_('My Repositories')}</a></li> |
|
43 | 43 | <li class="${'active' if c.active=='watched' else ''}"><a href="${h.url('my_account_watched')}">${_('Watched')}</a></li> |
|
44 |
<li class="${'active' if c.active=='perms' else ''}"><a href="${h.url('my_account_perms')}">${_('My |
|
|
44 | <li class="${'active' if c.active=='perms' else ''}"><a href="${h.url('my_account_perms')}">${_('My Permissions')}</a></li> | |
|
45 | 45 | </ul> |
|
46 | 46 | </div> |
|
47 | 47 |
@@ -23,7 +23,7 b'' | |||
|
23 | 23 | </tr> |
|
24 | 24 | %endfor |
|
25 | 25 | %else: |
|
26 | <tr><td><div class="ip">${_('No additional emails specified')}</div></td></tr> | |
|
26 | <tr><td><div class="ip">${_('No additional emails specified.')}</div></td></tr> | |
|
27 | 27 | %endif |
|
28 | 28 | </table> |
|
29 | 29 | </div> |
@@ -1,4 +1,4 b'' | |||
|
1 |
<div style="font-size: 20px; color: #666666; padding: 0px 0px 10px 0px">${_('Change |
|
|
1 | <div style="font-size: 20px; color: #666666; padding: 0px 0px 10px 0px">${_('Change Your Account Password')}</div> | |
|
2 | 2 | ${h.form(url('my_account_password'), method='post')} |
|
3 | 3 | <div class="form"> |
|
4 | 4 | <div class="fields"> |
@@ -1,4 +1,4 b'' | |||
|
1 |
<div style="font-size: 20px; color: #666666; padding: 0px 0px 10px 0px">${_('Repositories |
|
|
1 | <div style="font-size: 20px; color: #666666; padding: 0px 0px 10px 0px">${_('Repositories You Own')}</div> | |
|
2 | 2 | <input class="q_filter_box" id="q_filter" size="15" type="text" name="filter" |
|
3 | 3 | placeholder="${_('quick filter...')}" value=""/> |
|
4 | 4 |
@@ -1,4 +1,4 b'' | |||
|
1 |
<div style="font-size: 20px; color: #666666; padding: 0px 0px 10px 0px">${_('Repositories |
|
|
1 | <div style="font-size: 20px; color: #666666; padding: 0px 0px 10px 0px">${_('Repositories You are Watching')}</div> | |
|
2 | 2 | <input class="q_filter_box" id="q_filter" size="15" type="text" name="filter" |
|
3 | 3 | placeholder="${_('quick filter...')}" value=""/> |
|
4 | 4 |
@@ -30,7 +30,7 b'' | |||
|
30 | 30 | </div> |
|
31 | 31 | %if c.notifications: |
|
32 | 32 | <div style="padding:14px 18px;text-align: right;float:right"> |
|
33 |
<span id='mark_all_read' class="btn btn-mini">${_('Mark |
|
|
33 | <span id='mark_all_read' class="btn btn-mini">${_('Mark All Read')}</span> | |
|
34 | 34 | </div> |
|
35 | 35 | %endif |
|
36 | 36 | <div id='notification_data'> |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('Show |
|
|
5 | ${_('Show Notification')} ${c.authuser.username} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -11,7 +11,7 b'' | |||
|
11 | 11 | <%def name="breadcrumbs_links()"> |
|
12 | 12 | ${h.link_to(_('Notifications'),h.url('notifications'))} |
|
13 | 13 | » |
|
14 |
${_('Show |
|
|
14 | ${_('Show Notification')} | |
|
15 | 15 | </%def> |
|
16 | 16 | |
|
17 | 17 | <%def name="page_nav()"> |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('Permissions |
|
|
5 | ${_('Permissions Administration')} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -39,7 +39,7 b'' | |||
|
39 | 39 | </div> |
|
40 | 40 | </li> |
|
41 | 41 | <li class="${'active' if c.active=='globals' else ''}"><a href="${h.url('admin_permissions')}">${_('Global')}</a></li> |
|
42 |
<li class="${'active' if c.active=='ips' else ''}"><a href="${h.url('admin_permissions_ips')}">${_('IP |
|
|
42 | <li class="${'active' if c.active=='ips' else ''}"><a href="${h.url('admin_permissions_ips')}">${_('IP Whitelist')}</a></li> | |
|
43 | 43 | <li class="${'active' if c.active=='perms' else ''}"><a href="${h.url('admin_permissions_perms')}">${_('Overview')}</a></li> |
|
44 | 44 | </ul> |
|
45 | 45 | </div> |
@@ -10,7 +10,7 b'' | |||
|
10 | 10 | <div class="checkbox"> |
|
11 | 11 | ${h.checkbox('anonymous',True)} |
|
12 | 12 | </div> |
|
13 | <span class="help-block">${h.literal(_('Allow access to Kallithea without need to log in. Anonymous users use %s user permissions' % (h.link_to('*default*',h.url('admin_permissions_perms')))))}</span> | |
|
13 | <span class="help-block">${h.literal(_('Allow access to Kallithea without needing to log in. Anonymous users use %s user permissions.' % (h.link_to('*default*',h.url('admin_permissions_perms')))))}</span> | |
|
14 | 14 | </div> |
|
15 | 15 | </div> |
|
16 | 16 | <div class="field"> |
@@ -69,7 +69,7 b'' | |||
|
69 | 69 | </div> |
|
70 | 70 | <div class="select"> |
|
71 | 71 | ${h.select('create_on_write','',c.repo_create_on_write_choices)} |
|
72 |
<span class="help-block">${_('Write permission to repository group |
|
|
72 | <span class="help-block">${_('Write permission to a repository group allows creating repositories inside that group.')}</span> | |
|
73 | 73 | </div> |
|
74 | 74 | </div> |
|
75 | 75 | <div class="field"> |
@@ -1,4 +1,4 b'' | |||
|
1 |
<h4>${_('Default |
|
|
1 | <h4>${_('Default IP Whitelist for All Users')}</h4> | |
|
2 | 2 | |
|
3 | 3 | <div class="ips_wrap"> |
|
4 | 4 | <table class="noborder"> |
@@ -18,7 +18,7 b'' | |||
|
18 | 18 | </tr> |
|
19 | 19 | %endfor |
|
20 | 20 | %else: |
|
21 | <tr><td><div class="ip">${_('All IP addresses are allowed')}</div></td></tr> | |
|
21 | <tr><td><div class="ip">${_('All IP addresses are allowed.')}</div></td></tr> | |
|
22 | 22 | %endif |
|
23 | 23 | </table> |
|
24 | 24 | </div> |
@@ -1,4 +1,4 b'' | |||
|
1 |
<h4>${_('Default |
|
|
1 | <h4>${_('Default User Permissions Overview')}</h4> | |
|
2 | 2 | |
|
3 | 3 | ## permissions overview |
|
4 | 4 | <%namespace name="p" file="/base/perms_summary.html"/> |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('Add |
|
|
5 | ${_('Add Repository Group')} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -11,7 +11,7 b'' | |||
|
11 | 11 | <%def name="breadcrumbs_links()"> |
|
12 | 12 | ${h.link_to(_('Admin'),h.url('admin_home'))} |
|
13 | 13 | » |
|
14 |
${h.link_to(_('Repository |
|
|
14 | ${h.link_to(_('Repository Groups'),h.url('repos_groups'))} | |
|
15 | 15 | » |
|
16 | 16 | ${_('Add Repository Group')} |
|
17 | 17 | </%def> |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('%s Repository |
|
|
5 | ${_('%s Repository Group Settings') % c.repo_group.name} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('Repository |
|
|
5 | ${_('Repository Groups Administration')} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -10,7 +10,7 b'' | |||
|
10 | 10 | |
|
11 | 11 | <%def name="breadcrumbs_links()"> |
|
12 | 12 | <input class="q_filter_box" id="q_filter" size="15" type="text" name="filter" placeholder="${_('quick filter...')}" value=""/> |
|
13 |
${h.link_to(_('Admin'),h.url('admin_home'))} » <span id="repo_group_count">0</span> ${_(' |
|
|
13 | ${h.link_to(_('Admin'),h.url('admin_home'))} » <span id="repo_group_count">0</span> ${_('Repository Groups')} | |
|
14 | 14 | </%def> |
|
15 | 15 | |
|
16 | 16 | |
@@ -48,7 +48,7 b'' | |||
|
48 | 48 | var column_defs = [ |
|
49 | 49 | {key:"group_name",label:"${_('Name')}",sortable:true, sortOptions: { sortFunction: nameSort }}, |
|
50 | 50 | {key:"desc",label:"${_('Description')}",sortable:true}, |
|
51 |
{key:"repos",label:"${_('Number of |
|
|
51 | {key:"repos",label:"${_('Number of Top-level Repositories')}",sortable:true}, | |
|
52 | 52 | {key:"owner",label:"${_('Owner')}",sortable:true}, |
|
53 | 53 | {key:"action",label:"${_('Action')}",sortable:false} |
|
54 | 54 | ]; |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('Add |
|
|
5 | ${_('Add Repository')} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -42,7 +42,7 b'' | |||
|
42 | 42 | </div> |
|
43 | 43 | <div class="input"> |
|
44 | 44 | ${h.select('repo_group',request.GET.get('parent_group'),c.repo_groups,class_="medium")} |
|
45 | <span class="help-block">${_('Optionaly select a group to put this repository into.')}</span> | |
|
45 | <span class="help-block">${_('Optionally select a group to put this repository into.')}</span> | |
|
46 | 46 | </div> |
|
47 | 47 | </div> |
|
48 | 48 | <div id="copy_perms" class="field"> |
@@ -6,7 +6,7 b'' | |||
|
6 | 6 | </%def> |
|
7 | 7 | |
|
8 | 8 | <%def name="title()"> |
|
9 |
${_('%s Creating |
|
|
9 | ${_('%s Creating Repository') % c.repo_name} | |
|
10 | 10 | %if c.site_name: |
|
11 | 11 | · ${c.site_name} |
|
12 | 12 | %endif |
@@ -5,7 +5,7 b'' | |||
|
5 | 5 | <%inherit file="/base/base.html"/> |
|
6 | 6 | |
|
7 | 7 | <%def name="title()"> |
|
8 |
${_('%s |
|
|
8 | ${_('%s Repository Settings') % c.repo_info.repo_name} | |
|
9 | 9 | %if c.site_name: |
|
10 | 10 | · ${c.site_name} |
|
11 | 11 | %endif |
@@ -49,7 +49,7 b'' | |||
|
49 | 49 | <a href="${h.url('edit_repo_advanced', repo_name=c.repo_name)}">${_('Advanced')}</a> |
|
50 | 50 | </li> |
|
51 | 51 | <li class="${'active' if c.active=='fields' else ''}"> |
|
52 |
<a href="${h.url('edit_repo_fields', repo_name=c.repo_name)}">${_('Extra |
|
|
52 | <a href="${h.url('edit_repo_fields', repo_name=c.repo_name)}">${_('Extra Fields')}</a> | |
|
53 | 53 | </li> |
|
54 | 54 | <li class="${'active' if c.active=='caches' else ''}"> |
|
55 | 55 | <a href="${h.url('edit_repo_caches', repo_name=c.repo_name)}">${_('Caches')}</a> |
@@ -1,4 +1,4 b'' | |||
|
1 |
<h3>${_(' |
|
|
1 | <h3>${_('Parent')}</h3> | |
|
2 | 2 | ${h.form(url('edit_repo_advanced_fork', repo_name=c.repo_info.repo_name), method='put')} |
|
3 | 3 | <div class="form"> |
|
4 | 4 | <div class="fields"> |
@@ -7,7 +7,7 b'' | |||
|
7 | 7 | </div> |
|
8 | 8 | <div class="field" style="border:none;color:#888"> |
|
9 | 9 | <ul> |
|
10 | <li>${_('''Manually set this repository as a fork of another from the list''')}</li> | |
|
10 | <li>${_('''Manually set this repository as a fork of another from the list.''')}</li> | |
|
11 | 11 | </ul> |
|
12 | 12 | </div> |
|
13 | 13 | </div> |
@@ -21,7 +21,7 b'' | |||
|
21 | 21 | }) |
|
22 | 22 | </script> |
|
23 | 23 | |
|
24 |
<h3>${_('Public |
|
|
24 | <h3>${_('Public Journal Visibility')}</h3> | |
|
25 | 25 | ${h.form(url('edit_repo_advanced_journal', repo_name=c.repo_info.repo_name), method='put')} |
|
26 | 26 | <div class="form"> |
|
27 | 27 | ${h.hidden('auth_token',str(h.get_token()))} |
@@ -34,43 +34,43 b'' | |||
|
34 | 34 | %else: |
|
35 | 35 | <button class="btn btn-small" type="submit"> |
|
36 | 36 | <i class="icon-plus"></i> |
|
37 |
${_('Add to |
|
|
37 | ${_('Add to Public Journal')} | |
|
38 | 38 | </button> |
|
39 | 39 | %endif |
|
40 | 40 | </div> |
|
41 | 41 | <div class="field" style="border:none;color:#888"> |
|
42 | 42 | <ul> |
|
43 |
<li>${_('All actions |
|
|
43 | <li>${_('All actions done in this repository will be visible to everyone in the public journal.')}</li> | |
|
44 | 44 | </ul> |
|
45 | 45 | </div> |
|
46 | 46 | </div> |
|
47 | 47 | ${h.end_form()} |
|
48 | 48 | |
|
49 |
<h3>${_('Change |
|
|
49 | <h3>${_('Change Locking')}</h3> | |
|
50 | 50 | ${h.form(url('edit_repo_advanced_locking', repo_name=c.repo_info.repo_name), method='put')} |
|
51 | 51 | <div class="form"> |
|
52 | 52 | <div class="fields"> |
|
53 | 53 | %if c.repo_info.locked[0]: |
|
54 | 54 | ${h.hidden('set_unlock', '1')} |
|
55 | 55 | <button class="btn btn-small" type="submit" |
|
56 | onclick="return confirm('${_('Confirm to unlock repository')}');"> | |
|
56 | onclick="return confirm('${_('Confirm to unlock repository.')}');"> | |
|
57 | 57 | <i class="icon-unlock"></i> |
|
58 |
${_('Unlock |
|
|
58 | ${_('Unlock Repository')} | |
|
59 | 59 | </button> |
|
60 | 60 | ${'Locked by %s on %s' % (h.person_by_id(c.repo_info.locked[0]),h.fmt_date(h.time_to_datetime(c.repo_info.locked[1])))} |
|
61 | 61 | %else: |
|
62 | 62 | ${h.hidden('set_lock', '1')} |
|
63 | 63 | <button class="btn btn-small" type="submit" |
|
64 | onclick="return confirm('${_('Confirm to lock repository')}');"> | |
|
64 | onclick="return confirm('${_('Confirm to lock repository.')}');"> | |
|
65 | 65 | <i class="icon-lock"></i> |
|
66 |
${_('Lock |
|
|
66 | ${_('Lock Repository')} | |
|
67 | 67 | </button> |
|
68 | 68 | ${_('Repository is not locked')} |
|
69 | 69 | %endif |
|
70 | 70 | </div> |
|
71 | 71 | <div class="field" style="border:none;color:#888"> |
|
72 | 72 | <ul> |
|
73 | <li>${_('Force locking on repository. Works only when anonymous access is disabled. Trigering a pull locks repository by user who pulled, only the same user can unlock by doing a push')} | |
|
73 | <li>${_('Force locking on the repository. Works only when anonymous access is disabled. Triggering a pull locks the repository. The user who is pulling locks the repository; only the user who pulled and locked it can unlock it by doing a push.')} | |
|
74 | 74 | </li> |
|
75 | 75 | </ul> |
|
76 | 76 | </div> |
@@ -82,16 +82,16 b'' | |||
|
82 | 82 | <button class="btn btn-small btn-danger" type="submit" |
|
83 | 83 | onclick="return confirm('${_('Confirm to delete this repository: %s') % c.repo_name}');"> |
|
84 | 84 | <i class="icon-remove-sign"></i> |
|
85 |
${_('Delete this |
|
|
85 | ${_('Delete this Repository')} | |
|
86 | 86 | </button> |
|
87 | 87 | %if c.repo_info.forks.count(): |
|
88 |
${ungettext(' |
|
|
88 | ${ungettext('This repository has %s fork', 'This repository has %s forks', c.repo_info.forks.count()) % c.repo_info.forks.count()} | |
|
89 | 89 | <input type="radio" name="forks" value="detach_forks" checked="checked"/> <label for="forks">${_('Detach forks')}</label> |
|
90 | 90 | <input type="radio" name="forks" value="delete_forks" /> <label for="forks">${_('Delete forks')}</label> |
|
91 | 91 | %endif |
|
92 | 92 | <div class="field" style="border:none;color:#888"> |
|
93 | 93 | <ul> |
|
94 | <li>${_('This repository will be renamed in a special way in order to be unaccesible for Kallithea and VCS systems. If you need to fully delete it from file system please do it manually')}</li> | |
|
94 | <li>${_('The deleted repository will be moved away and hidden until the administrator expires it. The administrator can both permanently delete it or restore it.')}</li> | |
|
95 | 95 | </ul> |
|
96 | 96 | </div> |
|
97 | 97 | ${h.end_form()} |
@@ -1,15 +1,15 b'' | |||
|
1 | 1 | ${h.form(url('edit_repo_caches', repo_name=c.repo_name), method='put')} |
|
2 | 2 | <div class="form"> |
|
3 | 3 | <div class="fields"> |
|
4 |
${h.submit('reset_cache_%s' % c.repo_info.repo_name,_('Invalidate |
|
|
4 | ${h.submit('reset_cache_%s' % c.repo_info.repo_name,_('Invalidate Repository Cache'),class_="btn btn-small",onclick="return confirm('"+_('Confirm to invalidate repository cache.')+"');")} | |
|
5 | 5 | <div class="field" style="border:none;color:#888"> |
|
6 | 6 | <ul> |
|
7 | <li>${_('Manually invalidate cache for this repository. On first access repository will be cached again')} | |
|
7 | <li>${_('Manually invalidate cache for this repository. On first access, the repository will be cached again.')} | |
|
8 | 8 | </li> |
|
9 | 9 | </ul> |
|
10 | 10 | </div> |
|
11 | 11 | <div class="field" style="border:none;"> |
|
12 |
${_('List of |
|
|
12 | ${_('List of Cached Values')} | |
|
13 | 13 | <table> |
|
14 | 14 | <tr> |
|
15 | 15 | <th>${_('Prefix')}</th> |
@@ -63,6 +63,6 b'' | |||
|
63 | 63 | ${h.end_form()} |
|
64 | 64 | %else: |
|
65 | 65 | <div style="font-size: 20px"> |
|
66 | ${_('Extra fields are disabled')} | |
|
66 | ${_('Extra fields are disabled.')} | |
|
67 | 67 | </div> |
|
68 | 68 | %endif |
@@ -6,7 +6,7 b'' | |||
|
6 | 6 | </div> |
|
7 | 7 | <div class="field" style="border:none;color:#888"> |
|
8 | 8 | <ul> |
|
9 | <li>${_('''Manually set this repository as a fork of another from the list''')}</li> | |
|
9 | <li>${_('''Manually set this repository as a fork of another from the list.''')}</li> | |
|
10 | 10 | </ul> |
|
11 | 11 | </div> |
|
12 | 12 | </div> |
@@ -5,12 +5,12 b'' | |||
|
5 | 5 | ${h.form(url('edit_repo_remote', repo_name=c.repo_name), method='put')} |
|
6 | 6 | <div class="form"> |
|
7 | 7 | <div class="fields"> |
|
8 |
${h.submit('remote_pull_%s' % c.repo_info.repo_name,_('Pull |
|
|
8 | ${h.submit('remote_pull_%s' % c.repo_info.repo_name,_('Pull Changes from Remote Location'),class_="btn btn-small",onclick="return confirm('"+_('Confirm to pull changes from remote side.')+"');")} | |
|
9 | 9 | </div> |
|
10 | 10 | </div> |
|
11 | 11 | ${h.end_form()} |
|
12 | 12 | %else: |
|
13 | 13 | <div style="font-size: 20px"> |
|
14 |
${_('This repository does not have a |
|
|
14 | ${_('This repository does not have a remote url set.')} | |
|
15 | 15 | </div> |
|
16 | 16 | %endif |
@@ -8,11 +8,11 b'' | |||
|
8 | 8 | </div> |
|
9 | 9 | <div class="input"> |
|
10 | 10 | ${h.text('repo_name',class_="medium")} |
|
11 |
<span class="help-block">${_('Non-changeable id')}: `_${c.repo_info.repo_id}` <span><a id="show_more_clone_id" href="#">${_(' |
|
|
11 | <span class="help-block">${_('Non-changeable id')}: `_${c.repo_info.repo_id}` <span><a id="show_more_clone_id" href="#">${_('What is that?')}</a></span></span> | |
|
12 | 12 | <span id="clone_id" class="help-block" style="display: none"> |
|
13 | 13 | ${_('URL by id')}: `${c.repo_info.clone_url(with_id=True)}` </br> |
|
14 | 14 | ${_('''In case this repository is renamed or moved into another group the repository url changes. |
|
15 | Using above url guarantees that this repository will allways be accessible under such url. | |
|
15 | Using the above url guarantees that this repository will allways be accessible under such url. | |
|
16 | 16 | Usefull for CI systems, or any other cases that you need to hardcode the url into 3rd party service.''')}</span> |
|
17 | 17 | </div> |
|
18 | 18 | </div> |
@@ -43,7 +43,7 b'' | |||
|
43 | 43 | </div> |
|
44 | 44 | <div class="input"> |
|
45 | 45 | ${h.select('repo_group','',c.repo_groups,class_="medium")} |
|
46 | <span class="help-block">${_('Optional select a group to put this repository into.')}</span> | |
|
46 | <span class="help-block">${_('Optionally select a group to put this repository into.')}</span> | |
|
47 | 47 | </div> |
|
48 | 48 | </div> |
|
49 | 49 | <div class="field"> |
@@ -7,7 +7,7 b'' | |||
|
7 | 7 | <li>${_('Processed progress')}: ${c.stats_percentage}%</li> |
|
8 | 8 | </ul> |
|
9 | 9 | </div> |
|
10 |
${h.submit('reset_stats_%s' % c.repo_info.repo_name,_('Reset |
|
|
10 | ${h.submit('reset_stats_%s' % c.repo_info.repo_name,_('Reset Statistics'),class_="btn btn-small",onclick="return confirm('"+_('Confirm to remove current statistics.')+"');")} | |
|
11 | 11 | </div> |
|
12 | 12 | </div> |
|
13 | 13 | ${h.end_form()} |
@@ -2,14 +2,14 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('Repositories |
|
|
5 | ${_('Repositories Administration')} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
|
9 | 9 | </%def> |
|
10 | 10 | |
|
11 | 11 | <%def name="breadcrumbs_links()"> |
|
12 |
<input class="q_filter_box" id="q_filter" size="15" type="text" name="filter" placeholder="${_('quick filter...')}" value=""/> ${h.link_to(_('Admin'),h.url('admin_home'))} » <span id="repo_count">0</span> ${_(' |
|
|
12 | <input class="q_filter_box" id="q_filter" size="15" type="text" name="filter" placeholder="${_('quick filter...')}" value=""/> ${h.link_to(_('Admin'),h.url('admin_home'))} » <span id="repo_count">0</span> ${_('Repositories')} | |
|
13 | 13 | </%def> |
|
14 | 14 | <%def name="page_nav()"> |
|
15 | 15 | ${self.menu('admin')} |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('Settings |
|
|
5 | ${_('Settings Administration')} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -38,12 +38,12 b'' | |||
|
38 | 38 | </div> |
|
39 | 39 | </li> |
|
40 | 40 | <li class="${'active' if c.active=='vcs' else ''}"><a href="${h.url('admin_settings')}">${_('VCS')}</a></li> |
|
41 |
<li class="${'active' if c.active=='mapping' else ''}"><a href="${h.url('admin_settings_mapping')}">${_('Remap and |
|
|
41 | <li class="${'active' if c.active=='mapping' else ''}"><a href="${h.url('admin_settings_mapping')}">${_('Remap and Rescan')}</a></li> | |
|
42 | 42 | <li class="${'active' if c.active=='global' else ''}"><a href="${h.url('admin_settings_global')}">${_('Global')}</a></li> |
|
43 | 43 | <li class="${'active' if c.active=='visual' else ''}"><a href="${h.url('admin_settings_visual')}">${_('Visual')}</a></li> |
|
44 | 44 | <li class="${'active' if c.active=='email' else ''}"><a href="${h.url('admin_settings_email')}">${_('Email')}</a></li> |
|
45 | 45 | <li class="${'active' if c.active=='hooks' else ''}"><a href="${h.url('admin_settings_hooks')}">${_('Hooks')}</a></li> |
|
46 |
<li class="${'active' if c.active=='search' else ''}"><a href="${h.url('admin_settings_search')}">${_('Full |
|
|
46 | <li class="${'active' if c.active=='search' else ''}"><a href="${h.url('admin_settings_search')}">${_('Full Text Search')}</a></li> | |
|
47 | 47 | <li class="${'active' if c.active=='system' else ''}"><a href="${h.url('admin_settings_system')}">${_('System Info')}</a></li> |
|
48 | 48 | </ul> |
|
49 | 49 | </div> |
@@ -48,12 +48,12 b'' | |||
|
48 | 48 | </div> |
|
49 | 49 | <div class="input"> |
|
50 | 50 | ${h.text('captcha_private_key',size=60)} |
|
51 | <span class="help-block">${_('Private key for reCaptcha system. Setting this value will enable captcha on registration')}</span> | |
|
51 | <span class="help-block">${_('Private key for reCaptcha system. Setting this value will enable captcha on registration.')}</span> | |
|
52 | 52 | </div> |
|
53 | 53 | </div> |
|
54 | 54 | |
|
55 | 55 | <div class="buttons"> |
|
56 |
${h.submit('save',_('Save |
|
|
56 | ${h.submit('save',_('Save Settings'),class_="btn")} | |
|
57 | 57 | ${h.reset('reset',_('Reset'),class_="btn")} |
|
58 | 58 | </div> |
|
59 | 59 | </div> |
@@ -1,4 +1,4 b'' | |||
|
1 |
<h4>${_('Built |
|
|
1 | <h4>${_('Built-in Mercurial Hooks (Read-Only)')}</h4> | |
|
2 | 2 | <div class="form"> |
|
3 | 3 | <div class="fields"> |
|
4 | 4 | % for hook in c.hooks: |
@@ -16,7 +16,7 b'' | |||
|
16 | 16 | </div> |
|
17 | 17 | |
|
18 | 18 | % if c.visual.allow_custom_hooks_settings: |
|
19 |
<h4>${_('Custom |
|
|
19 | <h4>${_('Custom Hooks')}</h4> | |
|
20 | 20 | ${h.form(url('admin_settings_hooks'), method='post')} |
|
21 | 21 | <div class="form"> |
|
22 | 22 | <div class="fields"> |
@@ -10,19 +10,19 b'' | |||
|
10 | 10 | ${h.checkbox('destroy',True)} |
|
11 | 11 | <label for="destroy">${_('Destroy old data')}</label> |
|
12 | 12 | </div> |
|
13 | <span class="help-block">${_('In case a repository was deleted from filesystem and it still exists in the database check this option to scan obsolete data in database and remove it.')}</span> | |
|
13 | <span class="help-block">${_('Check this option to remove references to repositories that no longer exist in on the filesystem.')}</span> | |
|
14 | 14 | |
|
15 | 15 | <div class="checkbox"> |
|
16 | 16 | ${h.checkbox('invalidate',True)} |
|
17 | 17 | <label for="invalidate"> ${_('Invalidate cache for all repositories')}</label> |
|
18 | 18 | </div> |
|
19 |
<span class="help-block">${_(' |
|
|
19 | <span class="help-block">${_('Check this to reload data and clear cache keys for all repositories.')}</span> | |
|
20 | 20 | |
|
21 | 21 | <div class="checkbox"> |
|
22 | 22 | ${h.checkbox('hooks',True)} |
|
23 |
<label for="hooks"> ${_('Install G |
|
|
23 | <label for="hooks"> ${_('Install Git hooks')} </label> | |
|
24 | 24 | </div> |
|
25 |
<span class="help-block">${_( |
|
|
25 | <span class="help-block">${_("Verify if Kallithea's Git hooks are installed for each repository. Current hooks will be updated to the latest version.")}</span> | |
|
26 | 26 | </div> |
|
27 | 27 | |
|
28 | 28 | </div> |
@@ -12,7 +12,7 b'' | |||
|
12 | 12 | <label for="full_index">${_('Build from scratch')}</label> |
|
13 | 13 | |
|
14 | 14 | </div> |
|
15 |
<span class="help-block">${_('This option completely reindex |
|
|
15 | <span class="help-block">${_('This option completely reindexes all of the repositories for proper fulltext search capabilities.')}</span> | |
|
16 | 16 | |
|
17 | 17 | </div> |
|
18 | 18 | </div> |
@@ -4,8 +4,8 b'' | |||
|
4 | 4 | (_('Kallithea version'), h.literal('%s <b><span style="color:#036185; text-decoration: underline;cursor: pointer" id="check_for_update" >%s</span></b>' % (c.kallithea_version, _('check for updates'))), ''), |
|
5 | 5 | (_('Python version'), c.py_version, ''), |
|
6 | 6 | (_('Platform'), c.platform, ''), |
|
7 |
(_('G |
|
|
8 |
(_('G |
|
|
7 | (_('Git version'), c.git_version, ''), | |
|
8 | (_('Git path'), c.ini.get('git_path'), ''), | |
|
9 | 9 | (_('Upgrade info endpoint'), h.literal('%s <br/><span style="color:#999999">%s.</span>' % (c.update_url, _('Note: please make sure this server can access this url'))), '') |
|
10 | 10 | ] |
|
11 | 11 | %> |
@@ -19,7 +19,7 b'' | |||
|
19 | 19 | %endfor |
|
20 | 20 | </dl> |
|
21 | 21 | |
|
22 |
<h4>${_('Python |
|
|
22 | <h4>${_('Python Packages')}</h4> | |
|
23 | 23 | <table class="table" style="margin:0px 0px 0px 0px"> |
|
24 | 24 | <colgroup> |
|
25 | 25 | <col style="width:180px"> |
@@ -10,7 +10,7 b'' | |||
|
10 | 10 | ${h.checkbox('web_push_ssl', 'True')} |
|
11 | 11 | <label for="web_push_ssl">${_('Require SSL for vcs operations')}</label> |
|
12 | 12 | </div> |
|
13 |
<span class="help-block">${_('Activate to |
|
|
13 | <span class="help-block">${_('Activate to require SSL both pushing and pulling. If SSL certificate is missing, it will return a HTTP Error 406: Not Acceptable.')}</span> | |
|
14 | 14 | </div> |
|
15 | 15 | </div> |
|
16 | 16 | |
@@ -39,7 +39,7 b'' | |||
|
39 | 39 | </div> |
|
40 | 40 | <div class="field"> |
|
41 | 41 | <div class="label label-checkbox"> |
|
42 |
<label>${_('Mercurial |
|
|
42 | <label>${_('Mercurial extensions')}:</label> | |
|
43 | 43 | </div> |
|
44 | 44 | <div class="checkboxes"> |
|
45 | 45 | <div class="checkbox"> |
@@ -50,18 +50,18 b'' | |||
|
50 | 50 | ${h.checkbox('extensions_hgsubversion','True')} |
|
51 | 51 | <label for="extensions_hgsubversion">${_('Enable hgsubversion extension')}</label> |
|
52 | 52 | </div> |
|
53 |
<span class="help-block">${_('Requires hgsubversion library to be installed. |
|
|
53 | <span class="help-block">${_('Requires hgsubversion library to be installed. Enables cloning of remote Subversion repositories while converting them to Mercurial.')}</span> | |
|
54 | 54 | ##<div class="checkbox"> |
|
55 | 55 | ## ${h.checkbox('extensions_hggit','True')} |
|
56 | 56 | ## <label for="extensions_hggit">${_('Enable hg-git extension')}</label> |
|
57 | 57 | ##</div> |
|
58 |
##<span class="help-block">${_('Requires hg-git library to be installed. |
|
|
58 | ##<span class="help-block">${_('Requires hg-git library to be installed. Enables cloning of remote Git repositories while converting them to Mercurial.')}</span> | |
|
59 | 59 | </div> |
|
60 | 60 | </div> |
|
61 | 61 | %if c.visual.allow_repo_location_change: |
|
62 | 62 | <div class="field"> |
|
63 | 63 | <div class="label"> |
|
64 |
<label for="paths_root_path">${_(' |
|
|
64 | <label for="paths_root_path">${_('Location of repositories')}:</label> | |
|
65 | 65 | </div> |
|
66 | 66 | <div class="input"> |
|
67 | 67 | ${h.text('paths_root_path',size=60,readonly="readonly", class_="disabled")} |
@@ -69,7 +69,7 b'' | |||
|
69 | 69 | title="${h.tooltip(_('Click to unlock. You must restart Kallithea in order to make this setting take effect.'))}"> |
|
70 | 70 | <div class="btn btn-small"><i id="path_unlock_icon" class="icon-lock"></i></div> |
|
71 | 71 | </span> |
|
72 |
<span class="help-block">${_('Filesystem location where repositories |
|
|
72 | <span class="help-block">${_('Filesystem location where repositories are stored. After changing this value, a restart and rescan of the repository folder are both required.')}</span> | |
|
73 | 73 | </div> |
|
74 | 74 | </div> |
|
75 | 75 | %else: |
@@ -77,7 +77,7 b'' | |||
|
77 | 77 | ${h.hidden('paths_root_path',size=30,readonly="readonly", class_="disabled")} |
|
78 | 78 | %endif |
|
79 | 79 | <div class="buttons"> |
|
80 |
${h.submit('save',_('Save |
|
|
80 | ${h.submit('save',_('Save Settings'),class_="btn")} | |
|
81 | 81 | ${h.reset('reset',_('Reset'),class_="btn")} |
|
82 | 82 | </div> |
|
83 | 83 | </div> |
@@ -27,8 +27,8 b'' | |||
|
27 | 27 | <div class="field"> |
|
28 | 28 | <div class="input"> |
|
29 | 29 | ${h.text('gravatar_url', size=80)} |
|
30 | <span class="help-block">${_('''Gravatar url allows you to use other avatar server application. | |
|
31 |
|
|
|
30 | <span class="help-block">${_('''Gravatar url allows you to use another avatar server application. | |
|
31 | The following variables of the url will be replaced accordingly. | |
|
32 | 32 | {scheme} 'http' or 'https' sent from running Kallithea server, |
|
33 | 33 | {email} user email, |
|
34 | 34 | {md5email} md5 hash of the user email (like at gravatar.com), |
@@ -39,7 +39,8 b'' | |||
|
39 | 39 | <div class="field"> |
|
40 | 40 | <div class="input"> |
|
41 | 41 | ${h.text('clone_uri_tmpl', size=80)} |
|
42 |
<span class="help-block">${_('''Schema of clone url construction eg. '{scheme}://{user}@{netloc}/{repo}' |
|
|
42 | <span class="help-block">${_('''Schema of clone url construction eg. '{scheme}://{user}@{netloc}/{repo}'. | |
|
43 | The following variables are available: | |
|
43 | 44 | {scheme} 'http' or 'https' sent from running Kallithea server, |
|
44 | 45 | {user} current user username, |
|
45 | 46 | {netloc} network location/server host of running Kallithea server, |
@@ -82,7 +83,7 b'' | |||
|
82 | 83 | ${h.checkbox('show_private_icon','True')} |
|
83 | 84 | <label for="show_private_icon">${_('Show private repo icon on repositories')}</label> |
|
84 | 85 | </div> |
|
85 |
<span class="help-block">${_('Show public/private icons next to repositor |
|
|
86 | <span class="help-block">${_('Show public/private icons next to repository names.')}</span> | |
|
86 | 87 | </div> |
|
87 | 88 | </div> |
|
88 | 89 | |
@@ -107,12 +108,12 b'' | |||
|
107 | 108 | <li>[see => URI] <span class="metatag" tag="see">see => <a href="#">URI</a> </span></li> |
|
108 | 109 | </ul> |
|
109 | 110 | </div> |
|
110 | <span class="help-block">${_('Parses meta tags from repository description field and turns them into colored tags.')}</span> | |
|
111 | <span class="help-block">${_('Parses meta tags from the repository description field and turns them into colored tags.')}</span> | |
|
111 | 112 | </div> |
|
112 | 113 | </div> |
|
113 | 114 | |
|
114 | 115 | <div class="buttons"> |
|
115 |
${h.submit('save',_('Save |
|
|
116 | ${h.submit('save',_('Save Settings'),class_="btn")} | |
|
116 | 117 | ${h.reset('reset',_('Reset'),class_="btn")} |
|
117 | 118 | </div> |
|
118 | 119 |
@@ -10,7 +10,7 b'' | |||
|
10 | 10 | <%def name="breadcrumbs_links()"> |
|
11 | 11 | ${h.link_to(_('Admin'),h.url('admin_home'))} |
|
12 | 12 | » |
|
13 |
${h.link_to(_('User |
|
|
13 | ${h.link_to(_('User Groups'),h.url('users_groups'))} | |
|
14 | 14 | » |
|
15 | 15 | ${_('Add User Group')} |
|
16 | 16 | </%def> |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('User |
|
|
5 | ${_('User Groups Administration')} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -40,11 +40,11 b'' | |||
|
40 | 40 | </div> |
|
41 | 41 | </li> |
|
42 | 42 | <li class="${'active' if c.active=='profile' else ''}"><a href="${h.url('edit_user', id=c.user.user_id)}">${_('Profile')}</a></li> |
|
43 |
<li class="${'active' if c.active=='api_keys' else ''}"><a href="${h.url('edit_user_api_keys', id=c.user.user_id)}">${_('API |
|
|
43 | <li class="${'active' if c.active=='api_keys' else ''}"><a href="${h.url('edit_user_api_keys', id=c.user.user_id)}">${_('API Keys')}</a></li> | |
|
44 | 44 | <li class="${'active' if c.active=='advanced' else ''}"><a href="${h.url('edit_user_advanced', id=c.user.user_id)}">${_('Advanced')}</a></li> |
|
45 |
<li class="${'active' if c.active=='perms' else ''}"><a href="${h.url('edit_user_perms', id=c.user.user_id)}">${_('Default |
|
|
45 | <li class="${'active' if c.active=='perms' else ''}"><a href="${h.url('edit_user_perms', id=c.user.user_id)}">${_('Default Permissions')}</a></li> | |
|
46 | 46 | <li class="${'active' if c.active=='emails' else ''}"><a href="${h.url('edit_user_emails', id=c.user.user_id)}">${_('Emails')}</a></li> |
|
47 |
<li class="${'active' if c.active=='ips' else ''}"><a href="${h.url('edit_user_ips', id=c.user.user_id)}">${_('I |
|
|
47 | <li class="${'active' if c.active=='ips' else ''}"><a href="${h.url('edit_user_ips', id=c.user.user_id)}">${_('IP Whitelist')}</a></li> | |
|
48 | 48 | </ul> |
|
49 | 49 | </div> |
|
50 | 50 |
@@ -23,7 +23,7 b'' | |||
|
23 | 23 | </tr> |
|
24 | 24 | %endfor |
|
25 | 25 | %else: |
|
26 | <tr><td><div class="ip">${_('No additional emails specified')}</div></td></tr> | |
|
26 | <tr><td><div class="ip">${_('No additional emails specified.')}</div></td></tr> | |
|
27 | 27 | %endif |
|
28 | 28 | </table> |
|
29 | 29 | </div> |
@@ -27,7 +27,7 b'' | |||
|
27 | 27 | %endfor |
|
28 | 28 | %endif |
|
29 | 29 | %if not c.default_user_ip_map and not c.user_ip_map: |
|
30 | <tr><td><div class="ip">${_('All IP addresses are allowed')}</div></td></tr> | |
|
30 | <tr><td><div class="ip">${_('All IP addresses are allowed.')}</div></td></tr> | |
|
31 | 31 | %endif |
|
32 | 32 | </table> |
|
33 | 33 | </div> |
@@ -2,7 +2,7 b'' | |||
|
2 | 2 | <%inherit file="/base/base.html"/> |
|
3 | 3 | |
|
4 | 4 | <%def name="title()"> |
|
5 |
${_('Users |
|
|
5 | ${_('Users Administration')} | |
|
6 | 6 | %if c.site_name: |
|
7 | 7 | · ${c.site_name} |
|
8 | 8 | %endif |
@@ -10,7 +10,7 b'' | |||
|
10 | 10 | |
|
11 | 11 | <%def name="breadcrumbs_links()"> |
|
12 | 12 | <input class="q_filter_box" id="q_filter" size="15" type="text" name="filter" placeholder="${_('quick filter...')}" value=""/> |
|
13 |
${h.link_to(_('Admin'),h.url('admin_home'))} » <span id="user_count">0</span> ${_(' |
|
|
13 | ${h.link_to(_('Admin'),h.url('admin_home'))} » <span id="user_count">0</span> ${_('Users')} | |
|
14 | 14 | </%def> |
|
15 | 15 | |
|
16 | 16 | <%def name="page_nav()"> |
@@ -51,12 +51,12 b'' | |||
|
51 | 51 | var column_defs = [ |
|
52 | 52 | {key:"gravatar",label:"",sortable:false}, |
|
53 | 53 | {key:"username",label:"${_('Username')}",sortable:true}, |
|
54 |
{key:"firstname",label:"${_('First |
|
|
55 |
{key:"lastname",label:"${_('Last |
|
|
56 |
{key:"last_login",label:"${_('Last |
|
|
54 | {key:"firstname",label:"${_('First Name')}",sortable:true}, | |
|
55 | {key:"lastname",label:"${_('Last Name')}",sortable:true}, | |
|
56 | {key:"last_login",label:"${_('Last Login')}",sortable:true, sortOptions: { sortFunction: lastLoginSort }}, | |
|
57 | 57 | {key:"active",label:"${_('Active')}",sortable:true}, |
|
58 | 58 | {key:"admin",label:"${_('Admin')}",sortable:true}, |
|
59 |
{key:"extern_type",label:"${_('Auth |
|
|
59 | {key:"extern_type",label:"${_('Auth Type')}",sortable:true}, | |
|
60 | 60 | {key:"action",label:"${_('Action')}",sortable:false} |
|
61 | 61 | ]; |
|
62 | 62 | var counter = YUD.get('user_count'); |
@@ -71,11 +71,11 b'' | |||
|
71 | 71 | |
|
72 | 72 | <%def name="admin_menu()"> |
|
73 | 73 | <ul class="admin_menu"> |
|
74 |
<li><a href="${h.url('admin_home')}"><i class="icon-book"></i> ${_('Admin |
|
|
74 | <li><a href="${h.url('admin_home')}"><i class="icon-book"></i> ${_('Admin Journal')}</a></li> | |
|
75 | 75 | <li><a href="${h.url('repos')}"><i class="icon-archive"></i> ${_('Repositories')}</a></li> |
|
76 |
<li><a href="${h.url('repos_groups')}"><i class="icon-folder-close"></i> ${_('Repository |
|
|
76 | <li><a href="${h.url('repos_groups')}"><i class="icon-folder-close"></i> ${_('Repository Groups')}</a></li> | |
|
77 | 77 | <li><a href="${h.url('users')}"><i class="icon-user"></i> ${_('Users')}</a></li> |
|
78 |
<li><a href="${h.url('users_groups')}"><i class="icon-group"></i> ${_('User |
|
|
78 | <li><a href="${h.url('users_groups')}"><i class="icon-group"></i> ${_('User Groups')}</a></li> | |
|
79 | 79 | <li><a href="${h.url('admin_permissions')}"><i class="icon-ban-circle"></i> ${_('Permissions')}</a></li> |
|
80 | 80 | <li><a href="${h.url('auth_home')}"><i class="icon-key"></i> ${_('Authentication')}</a></li> |
|
81 | 81 | <li><a href="${h.url('defaults')}"><i class="icon-wrench"></i> ${_('Defaults')}</a></li> |
@@ -92,10 +92,10 b'' | |||
|
92 | 92 | <li><a href="${h.url('repos')}"><i class="icon-archive"></i> ${_('Repositories')}</a></li> |
|
93 | 93 | %endif |
|
94 | 94 | %if repository_groups: |
|
95 |
<li><a href="${h.url('repos_groups')}"><i class="icon-folder-close"></i> ${_('Repository |
|
|
95 | <li><a href="${h.url('repos_groups')}"><i class="icon-folder-close"></i> ${_('Repository Groups')}</a></li> | |
|
96 | 96 | %endif |
|
97 | 97 | %if user_groups: |
|
98 |
<li><a href="${h.url('users_groups')}"><i class="icon-group"></i> ${_('User |
|
|
98 | <li><a href="${h.url('users_groups')}"><i class="icon-group"></i> ${_('User Groups')}</a></li> | |
|
99 | 99 | %endif |
|
100 | 100 | </ul> |
|
101 | 101 | </%def> |
@@ -134,7 +134,7 b'' | |||
|
134 | 134 | ${h.repo_link(c.db_repo.groups_and_repo)} |
|
135 | 135 | |
|
136 | 136 | %if current == 'createfork': |
|
137 |
- ${_('Create |
|
|
137 | - ${_('Create Fork')} | |
|
138 | 138 | %endif |
|
139 | 139 | </h2> |
|
140 | 140 | <!-- |
@@ -170,7 +170,7 b'' | |||
|
170 | 170 | %endif |
|
171 | 171 | %if c.db_repo.fork: |
|
172 | 172 | <li><a href="${h.url('compare_url',repo_name=c.db_repo.fork.repo_name,org_ref_type=c.db_repo.landing_rev[0],org_ref_name=c.db_repo.landing_rev[1], other_repo=c.repo_name,other_ref_type='branch' if request.GET.get('branch') else c.db_repo.landing_rev[0],other_ref_name=request.GET.get('branch') or c.db_repo.landing_rev[1], merge=1)}"> |
|
173 |
<i class="icon-loop"></i> ${_('Compare |
|
|
173 | <i class="icon-loop"></i> ${_('Compare Fork')}</a></li> | |
|
174 | 174 | %endif |
|
175 | 175 | <li><a href="${h.url('compare_home',repo_name=c.repo_name)}"><i class="icon-loop"></i> ${_('Compare')}</a></li> |
|
176 | 176 | |
@@ -252,11 +252,11 b'' | |||
|
252 | 252 | <i class="icon-file-2"></i> ${_('Gists')} |
|
253 | 253 | </a> |
|
254 | 254 | <ul class="admin_menu"> |
|
255 |
<li><a href="${h.url('new_gist', public=1)}"><i class="icon-file-alt"></i> ${_('Create |
|
|
256 |
<li><a href="${h.url('gists')}"><i class="icon-copy"></i> ${_('All |
|
|
255 | <li><a href="${h.url('new_gist', public=1)}"><i class="icon-file-alt"></i> ${_('Create New Gist')}</a></li> | |
|
256 | <li><a href="${h.url('gists')}"><i class="icon-copy"></i> ${_('All Public Gists')}</a></li> | |
|
257 | 257 | %if c.authuser.username != 'default': |
|
258 |
<li><a href="${h.url('gists', public=1)}"><i class="icon-copy"></i> ${_('My |
|
|
259 |
<li><a href="${h.url('gists', private=1)}"><i class="icon-file-text"></i> ${_('My |
|
|
258 | <li><a href="${h.url('gists', public=1)}"><i class="icon-copy"></i> ${_('My Public Gists')}</a></li> | |
|
259 | <li><a href="${h.url('gists', private=1)}"><i class="icon-file-text"></i> ${_('My Private Gists')}</a></li> | |
|
260 | 260 | %endif |
|
261 | 261 | </ul> |
|
262 | 262 | </li> |
@@ -304,14 +304,14 b'' | |||
|
304 | 304 | <span class="menu_link_notifications">${c.unread_notifications}</span> |
|
305 | 305 | %endif |
|
306 | 306 | %else: |
|
307 |
<span>${_('Not |
|
|
307 | <span>${_('Not Logged In')}</span> | |
|
308 | 308 | %endif |
|
309 | 309 | </a> |
|
310 | 310 | |
|
311 | 311 | <div class="user-menu"> |
|
312 | 312 | <div id="quick_login"> |
|
313 | 313 | %if c.authuser.username == 'default' or c.authuser.user_id is None: |
|
314 |
<h4>${_('Login to |
|
|
314 | <h4>${_('Login to Your Account')}</h4> | |
|
315 | 315 | ${h.form(h.url('login_home',came_from=h.url.current()))} |
|
316 | 316 | <div class="form"> |
|
317 | 317 | <div class="fields"> |
@@ -356,7 +356,7 b'' | |||
|
356 | 356 | <div class="links_right"> |
|
357 | 357 | <ol class="links"> |
|
358 | 358 | <li><a href="${h.url('notifications')}">${_('Notifications')}: ${c.unread_notifications}</a></li> |
|
359 |
<li>${h.link_to(_(u'My |
|
|
359 | <li>${h.link_to(_(u'My Account'),h.url('my_account'))}</li> | |
|
360 | 360 | <li class="logout">${h.link_to(_(u'Log Out'),h.url('logout_home'))}</li> |
|
361 | 361 | </ol> |
|
362 | 362 | </div> |
@@ -27,7 +27,7 b'' | |||
|
27 | 27 | <script type="text/javascript"> |
|
28 | 28 | //JS translations map |
|
29 | 29 | var TRANSLATION_MAP = { |
|
30 |
'Add |
|
|
30 | 'Add Another Comment':'${_("Add Another Comment")}', | |
|
31 | 31 | 'Stop following this repository':"${_('Stop following this repository')}", |
|
32 | 32 | 'Start following this repository':"${_('Start following this repository')}", |
|
33 | 33 | 'Group':"${_('Group')}", |
@@ -36,13 +36,13 b'' | |||
|
36 | 36 | 'loading ...':"${_('loading ...')}", |
|
37 | 37 | 'Search truncated': "${_('Search truncated')}", |
|
38 | 38 | 'No matching files': "${_('No matching files')}", |
|
39 |
'Open |
|
|
40 |
'Open |
|
|
41 |
'Show |
|
|
42 |
'Show |
|
|
43 |
'Selection |
|
|
44 |
'Collapse |
|
|
45 |
'Expand |
|
|
39 | 'Open New Pull Request': "${_('Open New Pull Request')}", | |
|
40 | 'Open New Pull Request for Selected Changesets': "${_('Open New Pull Request for Selected Changesets')}", | |
|
41 | 'Show Selected Changesets __S → __E': "${h.literal(_('Show Selected Changesets __S → __E'))}", | |
|
42 | 'Show Selected Changeset __S': "${_('Show Selected Changeset __S')}", | |
|
43 | 'Selection Link': "${_('Selection Link')}", | |
|
44 | 'Collapse Diff': "${_('Collapse Diff')}", | |
|
45 | 'Expand Diff': "${_('Expand Diff')}", | |
|
46 | 46 | 'Failed to revoke permission': "${_('Failed to revoke permission')}", |
|
47 | 47 | 'Confirm to revoke permission for {0}: {1} ?': "${_('confirm to revoke permission for {0}: {1} ?')}", |
|
48 | 48 | 'enabled': "${_('enabled')}", |
@@ -186,9 +186,9 b'' | |||
|
186 | 186 | } else { |
|
187 | 187 | YUD.setStyle('open_new_pr','display',''); |
|
188 | 188 | if(checked_checkboxes.length>0){ |
|
189 |
YUD.get('open_new_pr').innerHTML = _TM['Open |
|
|
189 | YUD.get('open_new_pr').innerHTML = _TM['Open New Pull Request for Selected Changesets']; | |
|
190 | 190 | }else{ |
|
191 |
YUD.get('open_new_pr').innerHTML = _TM['Open |
|
|
191 | YUD.get('open_new_pr').innerHTML = _TM['Open New Pull Request']; | |
|
192 | 192 | } |
|
193 | 193 | } |
|
194 | 194 | } |
@@ -200,8 +200,8 b'' | |||
|
200 | 200 | 'revision': rev_start+'...'+rev_end}); |
|
201 | 201 | |
|
202 | 202 | var link = (rev_start == rev_end) |
|
203 |
? _TM['Show |
|
|
204 |
: _TM['Show |
|
|
203 | ? _TM['Show Selected Changeset __S'] | |
|
204 | : _TM['Show Selected Changesets __S → __E']; | |
|
205 | 205 | |
|
206 | 206 | link = link.replace('__S',rev_start.substr(0,6)); |
|
207 | 207 | link = link.replace('__E',rev_end.substr(0,6)); |
@@ -3,7 +3,7 b'' | |||
|
3 | 3 | <table class="table_disp"> |
|
4 | 4 | <tr> |
|
5 | 5 | <th class="left">${_('Revision')}</th> |
|
6 |
<th class="left">${_('Commit |
|
|
6 | <th class="left">${_('Commit Message')}</th> | |
|
7 | 7 | <th class="left">${_('Age')}</th> |
|
8 | 8 | <th class="left">${_('Author')}</th> |
|
9 | 9 | <th class="left">${_('Refs')}</th> |
@@ -5,7 +5,7 b'' | |||
|
5 | 5 | ## |
|
6 | 6 | <%def name="diff_block(change)"> |
|
7 | 7 | <div class="diff-collapse"> |
|
8 |
<span target="${'diff-container-%s' % (id(change))}" class="diff-collapse-button">↑ ${_('Collapse |
|
|
8 | <span target="${'diff-container-%s' % (id(change))}" class="diff-collapse-button">↑ ${_('Collapse Diff')} ↑</span> | |
|
9 | 9 | </div> |
|
10 | 10 | <div class="diff-container" id="${'diff-container-%s' % (id(change))}"> |
|
11 | 11 | %for FID,(cs1, cs2, change, path, diff, stats) in change.iteritems(): |
@@ -13,7 +13,7 b'' | |||
|
13 | 13 | </%def> |
|
14 | 14 | |
|
15 | 15 | <%def name="breadcrumbs_links()"> |
|
16 |
${_('Compare |
|
|
16 | ${_('Compare Revisions')} | |
|
17 | 17 | </%def> |
|
18 | 18 | |
|
19 | 19 | <%def name="page_nav()"> |
@@ -42,7 +42,7 b'' | |||
|
42 | 42 | |
|
43 | 43 | %if c.compare_home: |
|
44 | 44 | <div id="changeset_compare_view_content"> |
|
45 | <div style="color:#999;font-size: 18px">${_('Compare revisions, branches, bookmarks or tags.')}</div> | |
|
45 | <div style="color:#999;font-size: 18px">${_('Compare revisions, branches, bookmarks, or tags.')}</div> | |
|
46 | 46 | </div> |
|
47 | 47 | %else: |
|
48 | 48 | <div id="changeset_compare_view_content"> |
@@ -22,7 +22,7 b'' | |||
|
22 | 22 | </%def> |
|
23 | 23 | |
|
24 | 24 | <%def name="breadcrumbs_links()"> |
|
25 |
${_('Add |
|
|
25 | ${_('Add New File')} @ ${h.show_id(c.cs)} | |
|
26 | 26 | </%def> |
|
27 | 27 | |
|
28 | 28 | <%def name="main()"> |
@@ -61,11 +61,11 b'' | |||
|
61 | 61 | <pre id="editor_pre"></pre> |
|
62 | 62 | <textarea id="editor" name="content" style="display:none"></textarea> |
|
63 | 63 | </div> |
|
64 |
<div style="padding: 10px;color:#666666">${_('Commit |
|
|
64 | <div style="padding: 10px;color:#666666">${_('Commit Message')}</div> | |
|
65 | 65 | <textarea id="commit" name="message" style="height: 100px;width: 99%;margin-left:4px" placeholder="${c.default_message}"></textarea> |
|
66 | 66 | </div> |
|
67 | 67 | <div style="text-align: left;padding-top: 5px"> |
|
68 |
${h.submit('commit',_('Commit |
|
|
68 | ${h.submit('commit',_('Commit Changes'),class_="btn btn-small btn-success")} | |
|
69 | 69 | ${h.reset('reset',_('Reset'),class_="btn btn-small")} |
|
70 | 70 | </div> |
|
71 | 71 | ${h.end_form()} |
@@ -42,8 +42,8 b'' | |||
|
42 | 42 | <th>${_('Size')}</th> |
|
43 | 43 | <th>${_('Mimetype')}</th> |
|
44 | 44 | <th>${_('Last Revision')}</th> |
|
45 |
<th>${_('Last |
|
|
46 |
<th>${_('Last |
|
|
45 | <th>${_('Last Modified')}</th> | |
|
46 | <th>${_('Last Committer')}</th> | |
|
47 | 47 | </tr> |
|
48 | 48 | </thead> |
|
49 | 49 |
@@ -49,11 +49,11 b'' | |||
|
49 | 49 | <pre id="editor_pre"></pre> |
|
50 | 50 | <textarea id="editor" name="content" style="display:none"></textarea> |
|
51 | 51 | </div> |
|
52 |
<div style="padding: 10px;color:#666666">${_('Commit |
|
|
52 | <div style="padding: 10px;color:#666666">${_('Commit Message')}</div> | |
|
53 | 53 | <textarea id="commit" name="message" style="height: 100px;width: 99%;margin-left:4px" placeholder="${c.default_message}"></textarea> |
|
54 | 54 | </div> |
|
55 | 55 | <div style="text-align: left;padding-top: 5px"> |
|
56 |
${h.submit('commit',_('Commit |
|
|
56 | ${h.submit('commit',_('Commit Changes'),class_="btn btn-small btn-success")} | |
|
57 | 57 | ${h.reset('reset',_('Reset'),class_="btn btn-small")} |
|
58 | 58 | </div> |
|
59 | 59 | ${h.end_form()} |
@@ -68,7 +68,7 b'' | |||
|
68 | 68 | <textarea id="commit" name="message" style="height: 60px;width: 99%;margin-left:4px" placeholder="${c.default_message}"></textarea> |
|
69 | 69 | </div> |
|
70 | 70 | <div style="text-align: left;padding-top: 5px"> |
|
71 |
${h.submit('commit',_('Commit |
|
|
71 | ${h.submit('commit',_('Commit Changes'),class_="btn btn-small btn-success")} | |
|
72 | 72 | ${h.reset('reset',_('Reset'),class_="btn btn-small")} |
|
73 | 73 | </div> |
|
74 | 74 | ${h.end_form()} |
@@ -52,7 +52,7 b'' | |||
|
52 | 52 | </div> |
|
53 | 53 | <div class="input"> |
|
54 | 54 | ${h.select('repo_group','',c.repo_groups,class_="medium")} |
|
55 | <span class="help-block">${_('Optionaly select a group to put this repository into.')}</span> | |
|
55 | <span class="help-block">${_('Optionally select a group to put this repository into.')}</span> | |
|
56 | 56 | </div> |
|
57 | 57 | </div> |
|
58 | 58 | |
@@ -62,7 +62,7 b'' | |||
|
62 | 62 | </div> |
|
63 | 63 | <div class="input"> |
|
64 | 64 | ${h.select('landing_rev','',c.landing_revs,class_="medium")} |
|
65 | <span class="help-block">${_('Default revision for files page, downloads, whoosh and readme')}</span> | |
|
65 | <span class="help-block">${_('Default revision for files page, downloads, whoosh, and readme.')}</span> | |
|
66 | 66 | </div> |
|
67 | 67 | </div> |
|
68 | 68 |
@@ -18,7 +18,7 b'' | |||
|
18 | 18 | <span class="tooltip" title="${h.tooltip(h.fmt_date(f.created_on))}"> ${h.age(f.created_on)}</span> |
|
19 | 19 | <a title="${_('Compare fork with %s' % c.repo_name)}" |
|
20 | 20 | 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)}" |
|
21 |
class="btn btn-small"><i class="icon-loop"></i> ${_('Compare |
|
|
21 | class="btn btn-small"><i class="icon-loop"></i> ${_('Compare Fork')}</a> | |
|
22 | 22 | </div> |
|
23 | 23 | <div style="border-bottom: 1px solid #DDD;margin:10px 0px 10px 0px"></div> |
|
24 | 24 | </div> |
@@ -11,8 +11,8 b'' | |||
|
11 | 11 | <form id="filter_form"> |
|
12 | 12 | <input class="q_filter_box ${'' if c.search_term else 'initial'}" id="j_filter" size="15" type="text" name="filter" value="${c.search_term or _('quick filter...')}"/> |
|
13 | 13 | <span class="tooltip" title="${h.tooltip(h.journal_filter_help())}">?</span> |
|
14 |
<input type='submit' value="${_(' |
|
|
15 |
${_(' |
|
|
14 | <input type='submit' value="${_('Filter')}" class="btn btn-small" style="padding:0px 2px 0px 2px;margin:0px"/> | |
|
15 | ${_('Journal')} - ${ungettext('%s Entry', '%s Entries', c.journal_pager.item_count) % (c.journal_pager.item_count)} | |
|
16 | 16 | </form> |
|
17 | 17 | ${h.end_form()} |
|
18 | 18 | </h5> |
@@ -54,7 +54,7 b'' | |||
|
54 | 54 | <a id="show_watched" href="#watched"><i class="icon-eye-open"></i> ${_('Watched')}</a> |
|
55 | 55 | </li> |
|
56 | 56 | <li id="show_my_li"> |
|
57 |
<a id="show_my" href="#my"><i class="icon-archive"></i> ${_('My |
|
|
57 | <a id="show_my" href="#my"><i class="icon-archive"></i> ${_('My Repos')}</a> | |
|
58 | 58 | </li> |
|
59 | 59 | </ul> |
|
60 | 60 | </div> |
@@ -28,9 +28,9 b'' | |||
|
28 | 28 | <%include file="/base/flash_msg.html"/> |
|
29 | 29 | <div class="title withlogo"> |
|
30 | 30 | %if c.site_name: |
|
31 |
<h5>${_('Reset |
|
|
31 | <h5>${_('Reset Your Password to %s') % c.site_name}</h5> | |
|
32 | 32 | %else: |
|
33 |
<h5>${_('Reset |
|
|
33 | <h5>${_('Reset Your Password')}</h5> | |
|
34 | 34 | %endif |
|
35 | 35 | </div> |
|
36 | 36 | <div class="inner"> |
@@ -62,8 +62,8 b'' | |||
|
62 | 62 | |
|
63 | 63 | <div class="buttons"> |
|
64 | 64 | <div class="nohighlight"> |
|
65 |
${h.submit('send',_('Send |
|
|
66 |
<div class="activation_msg">${_('Password reset link will be sen |
|
|
65 | ${h.submit('send',_('Send Password Reset Email'),class_="btn")} | |
|
66 | <div class="activation_msg">${_('Password reset link will be sent to the email address matching your username.')}</div> | |
|
67 | 67 | </div> |
|
68 | 68 | </div> |
|
69 | 69 | </div> |
@@ -1,11 +1,11 b'' | |||
|
1 | 1 | <%inherit file="/base/base.html"/> |
|
2 | 2 | |
|
3 | 3 | <%def name="title()"> |
|
4 |
${c.repo_name} ${_('New |
|
|
4 | ${c.repo_name} ${_('New Pull Request')} | |
|
5 | 5 | </%def> |
|
6 | 6 | |
|
7 | 7 | <%def name="breadcrumbs_links()"> |
|
8 |
${_('New |
|
|
8 | ${_('New Pull Request')} | |
|
9 | 9 | </%def> |
|
10 | 10 | |
|
11 | 11 | <%def name="page_nav()"> |
@@ -94,7 +94,7 b'' | |||
|
94 | 94 | |
|
95 | 95 | ## Reviewers |
|
96 | 96 | <div style="float:left; border-left:1px dashed #eee"> |
|
97 |
<div class="pr-details-title">${_('Pull |
|
|
97 | <div class="pr-details-title">${_('Pull Request Reviewers')}</div> | |
|
98 | 98 | <div id="reviewers" style="padding:0px 0px 0px 15px"> |
|
99 | 99 | ## members goes here ! |
|
100 | 100 | <div> |
@@ -196,7 +196,7 b'' | |||
|
196 | 196 | </div> |
|
197 | 197 | %if c.available and not c.pull_request.is_closed(): |
|
198 | 198 | <div class="buttons"> |
|
199 |
${h.submit('copy_update',_('Create |
|
|
199 | ${h.submit('copy_update',_('Create Pull Request Update'),class_="btn btn-small")} | |
|
200 | 200 | </div> |
|
201 | 201 | %endif |
|
202 | 202 | </div> |
@@ -206,7 +206,7 b'' | |||
|
206 | 206 | </div> |
|
207 | 207 | ## REVIEWERS |
|
208 | 208 | <div style="float:left; border-left:1px dashed #eee"> |
|
209 |
<div class="pr-details-title">${_('Pull |
|
|
209 | <div class="pr-details-title">${_('Pull Request Reviewers')}</div> | |
|
210 | 210 | <div id="reviewers" style="padding:0px 0px 5px 10px"> |
|
211 | 211 | ## members goes here ! |
|
212 | 212 | <div> |
@@ -251,7 +251,7 b'' | |||
|
251 | 251 | <div class="table" style="float:left;clear:none"> |
|
252 | 252 | <div class="diffblock"> |
|
253 | 253 | <div style="padding:5px"> |
|
254 |
${_('Compare |
|
|
254 | ${_('Compare View')} | |
|
255 | 255 | </div> |
|
256 | 256 | </div> |
|
257 | 257 | <div id="changeset_compare_view_content"> |
@@ -9,9 +9,9 b'' | |||
|
9 | 9 | |
|
10 | 10 | <%def name="breadcrumbs_links()"> |
|
11 | 11 | %if c.from_: |
|
12 |
${_( |
|
|
12 | ${_("Pull Requests from %s'") % c.repo_name} | |
|
13 | 13 | %else: |
|
14 |
${_( |
|
|
14 | ${_("Pull Requests to '%s'") % c.repo_name} | |
|
15 | 15 | %endif |
|
16 | 16 | </%def> |
|
17 | 17 | |
@@ -30,14 +30,14 b'' | |||
|
30 | 30 | <li> |
|
31 | 31 | %if c.authuser.username != 'default': |
|
32 | 32 | <span> |
|
33 |
<a id="open_new_pr" class="btn btn-small btn-success" href="${h.url('pullrequest_home',repo_name=c.repo_name)}"><i class="icon-plus"></i> ${_('Open |
|
|
33 | <a id="open_new_pr" class="btn btn-small btn-success" href="${h.url('pullrequest_home',repo_name=c.repo_name)}"><i class="icon-plus"></i> ${_('Open New Pull Request')}</a> | |
|
34 | 34 | </span> |
|
35 | 35 | %endif |
|
36 | 36 | <span> |
|
37 | 37 | %if c.from_: |
|
38 |
<a class="btn btn-small" href="${h.url('pullrequest_show_all',repo_name=c.repo_name,closed=c.closed)}"><i class="icon-loop-2"></i> ${_('Show |
|
|
38 | <a class="btn btn-small" href="${h.url('pullrequest_show_all',repo_name=c.repo_name,closed=c.closed)}"><i class="icon-loop-2"></i> ${_('Show Pull Requests to %s') % c.repo_name}</a> | |
|
39 | 39 | %else: |
|
40 |
<a class="btn btn-small" href="${h.url('pullrequest_show_all',repo_name=c.repo_name,closed=c.closed,from_=1)}"><i class="icon-loop-2"></i> ${_( |
|
|
40 | <a class="btn btn-small" href="${h.url('pullrequest_show_all',repo_name=c.repo_name,closed=c.closed,from_=1)}"><i class="icon-loop-2"></i> ${_("Show Pull Requests from '%s'") % c.repo_name}</a> | |
|
41 | 41 | %endif |
|
42 | 42 | </span> |
|
43 | 43 | </li> |
@@ -47,9 +47,9 b'' | |||
|
47 | 47 | <div style="margin: 0 20px"> |
|
48 | 48 | <div> |
|
49 | 49 | %if c.closed: |
|
50 | ${h.link_to(_('Hide closed pull requests'), h.url('pullrequest_show_all',repo_name=c.repo_name,from_=c.from_))} | |
|
50 | ${h.link_to(_('Hide closed pull requests (only show open pull requests)'), h.url('pullrequest_show_all',repo_name=c.repo_name,from_=c.from_))} | |
|
51 | 51 | %else: |
|
52 | ${h.link_to(_('Show closed pull requests too'), h.url('pullrequest_show_all',repo_name=c.repo_name,from_=c.from_,closed=1))} | |
|
52 | ${h.link_to(_('Show closed pull requests (in addition to open pull requests)'), h.url('pullrequest_show_all',repo_name=c.repo_name,from_=c.from_,closed=1))} | |
|
53 | 53 | %endif |
|
54 | 54 | </div> |
|
55 | 55 | </div> |
@@ -1,5 +1,5 b'' | |||
|
1 | ${h.checkbox('show_closed',checked="checked" if c.show_closed else "", label=_('Show closed pull requests too'))} | |
|
2 |
<div class="pullrequests_section_head">${_(' |
|
|
1 | ${h.checkbox('show_closed',checked="checked" if c.show_closed else "", label=_('Show closed pull requests (in addition to open pull requests)'))} | |
|
2 | <div class="pullrequests_section_head">${_('Pull Requests Created by Me')}</div> | |
|
3 | 3 | <ul> |
|
4 | 4 | %if c.my_pull_requests: |
|
5 | 5 | %for pull_request in c.my_pull_requests: |
@@ -13,7 +13,7 b'' | |||
|
13 | 13 | <a href="${pull_request.url()}"> |
|
14 | 14 | ${pull_request.title or _("(no title)")} |
|
15 | 15 | </a> |
|
16 |
${_(' |
|
|
16 | ${_('created on %s from') % (h.fmt_date(pull_request.created_on))} | |
|
17 | 17 | <% org_ref_name=pull_request.org_ref.rsplit(':', 2)[-2] %> |
|
18 | 18 | <a href="${h.url('summary_home', repo_name=pull_request.org_repo.repo_name, anchor=org_ref_name)}"> |
|
19 | 19 | ${pull_request.org_repo.repo_name}#${org_ref_name} |
@@ -32,7 +32,7 b'' | |||
|
32 | 32 | %endif |
|
33 | 33 | </ul> |
|
34 | 34 | |
|
35 |
<div class="pullrequests_section_head" style="clear:both">${_(' |
|
|
35 | <div class="pullrequests_section_head" style="clear:both">${_('Pull Requests I Participate In')}</div> | |
|
36 | 36 | <ul> |
|
37 | 37 | %if c.participate_in_pull_requests: |
|
38 | 38 | %for pull_request in c.participate_in_pull_requests: |
@@ -51,7 +51,7 b'' | |||
|
51 | 51 | <a href="${h.url('summary_home', repo_name=pull_request.org_repo.repo_name, anchor=org_ref_name)}"> |
|
52 | 52 | ${pull_request.org_repo.repo_name}#${org_ref_name} |
|
53 | 53 | </a> |
|
54 |
${_(' |
|
|
54 | ${_('created on %s') % (h.fmt_date(pull_request.created_on))} | |
|
55 | 55 | %if pull_request.is_closed(): |
|
56 | 56 | (${_('Closed')}) |
|
57 | 57 | %endif |
@@ -107,9 +107,9 b'' | |||
|
107 | 107 | <div class="nohighlight"> |
|
108 | 108 | ${h.submit('sign_up',_('Sign Up'),class_="btn")} |
|
109 | 109 | %if c.auto_active: |
|
110 |
<div class="activation_msg">${_(' |
|
|
110 | <div class="activation_msg">${_('Registered accounts are ready to use and need no further action.')}</div> | |
|
111 | 111 | %else: |
|
112 |
<div class="activation_msg">${_(' |
|
|
112 | <div class="activation_msg">${_('Please wait for an administrator to activate your account.')}</div> | |
|
113 | 113 | %endif |
|
114 | 114 | </div> |
|
115 | 115 | </div> |
@@ -5,7 +5,7 b'' | |||
|
5 | 5 | %if c.repo_name: |
|
6 | 6 | ${_('%s Search') % c.repo_name} |
|
7 | 7 | %else: |
|
8 |
${_('Search in |
|
|
8 | ${_('Search in All Repositories')} | |
|
9 | 9 | %endif |
|
10 | 10 | %if c.site_name: |
|
11 | 11 | · ${c.site_name} |
@@ -16,7 +16,7 b'' | |||
|
16 | 16 | %if c.repo_name: |
|
17 | 17 | ${_('Search')} |
|
18 | 18 | %else: |
|
19 |
${_('Search in |
|
|
19 | ${_('Search in All Repositories')} | |
|
20 | 20 | %endif |
|
21 | 21 | %if c.cur_query: |
|
22 | 22 | » |
@@ -50,7 +50,7 b'' | |||
|
50 | 50 | <div class="fields"> |
|
51 | 51 | <div class="field field-first field-noborder"> |
|
52 | 52 | <div class="label"> |
|
53 | <label for="q">${_('Search term')}</label> | |
|
53 | <label for="q">${_('Search term')}:</label> | |
|
54 | 54 | </div> |
|
55 | 55 | <div class="input">${h.text('q',c.cur_query,class_="small")} |
|
56 | 56 | <div class="button highlight"> |
@@ -62,7 +62,7 b'' | |||
|
62 | 62 | |
|
63 | 63 | <div class="field"> |
|
64 | 64 | <div class="label"> |
|
65 | <label for="type">${_('Search in')}</label> | |
|
65 | <label for="type">${_('Search in')}:</label> | |
|
66 | 66 | </div> |
|
67 | 67 | <div class="select"> |
|
68 | 68 | ${h.select('type',c.cur_type,[('content',_('File contents')), |
@@ -190,9 +190,9 b" summary = lambda n:{False:'summary-short" | |||
|
190 | 190 | <div class="title"> |
|
191 | 191 | <div class="breadcrumbs"> |
|
192 | 192 | %if c.repo_changesets: |
|
193 |
${h.link_to(_('Latest |
|
|
193 | ${h.link_to(_('Latest Changes'),h.url('changelog_home',repo_name=c.repo_name))} | |
|
194 | 194 | %else: |
|
195 |
${_('Quick |
|
|
195 | ${_('Quick Start')} | |
|
196 | 196 | %endif |
|
197 | 197 | </div> |
|
198 | 198 | </div> |
@@ -26,7 +26,7 b'' | |||
|
26 | 26 | </div> |
|
27 | 27 | <!-- end box / title --> |
|
28 | 28 | %if c.repo_tags: |
|
29 |
<div class="info_box" id="compare_tags" style="clear: both;padding: 10px 19px;text-align: right;"><a href="#" class="btn btn-small">${_('Compare |
|
|
29 | <div class="info_box" id="compare_tags" style="clear: both;padding: 10px 19px;text-align: right;"><a href="#" class="btn btn-small">${_('Compare Tags')}</a></div> | |
|
30 | 30 | %endif |
|
31 | 31 | <div class="table"> |
|
32 | 32 | <%include file='tags_data.html'/> |
@@ -52,7 +52,7 b' class TestAdminController(TestController' | |||
|
52 | 52 | def test_index(self): |
|
53 | 53 | self.log_user() |
|
54 | 54 | response = self.app.get(url(controller='admin/admin', action='index')) |
|
55 |
response.mustcontain('Admin |
|
|
55 | response.mustcontain('Admin Journal') | |
|
56 | 56 | |
|
57 | 57 | def test_filter_all_entries(self): |
|
58 | 58 | self.log_user() |
@@ -315,7 +315,7 b' removed extra unicode conversion in diff' | |||
|
315 | 315 | ) |
|
316 | 316 | response.mustcontain("vcs/web/simplevcs/views/repository.py") |
|
317 | 317 | |
|
318 |
# |
|
|
318 | # Hg - ADD FILE | |
|
319 | 319 | def test_add_file_view_hg(self): |
|
320 | 320 | self.log_user() |
|
321 | 321 | response = self.app.get(url('files_add_home', |
@@ -388,7 +388,7 b' removed extra unicode conversion in diff' | |||
|
388 | 388 | finally: |
|
389 | 389 | fixture.destroy_repo(repo.repo_name) |
|
390 | 390 | |
|
391 | ##GIT - ADD FILE | |
|
391 | # Git - add file | |
|
392 | 392 | def test_add_file_view_git(self): |
|
393 | 393 | self.log_user() |
|
394 | 394 | response = self.app.get(url('files_add_home', |
@@ -460,7 +460,7 b' removed extra unicode conversion in diff' | |||
|
460 | 460 | finally: |
|
461 | 461 | fixture.destroy_repo(repo.repo_name) |
|
462 | 462 | |
|
463 |
# |
|
|
463 | # Hg - EDIT | |
|
464 | 464 | def test_edit_file_view_hg(self): |
|
465 | 465 | self.log_user() |
|
466 | 466 | response = self.app.get(url('files_edit_home', |
@@ -531,7 +531,7 b' removed extra unicode conversion in diff' | |||
|
531 | 531 | finally: |
|
532 | 532 | fixture.destroy_repo(repo.repo_name) |
|
533 | 533 | |
|
534 | #GIT - EDIT | |
|
534 | # Git - edit | |
|
535 | 535 | def test_edit_file_view_git(self): |
|
536 | 536 | self.log_user() |
|
537 | 537 | response = self.app.get(url('files_edit_home', |
@@ -602,7 +602,7 b' removed extra unicode conversion in diff' | |||
|
602 | 602 | finally: |
|
603 | 603 | fixture.destroy_repo(repo.repo_name) |
|
604 | 604 | |
|
605 |
# H |
|
|
605 | # Hg - delete | |
|
606 | 606 | def test_delete_file_view_hg(self): |
|
607 | 607 | self.log_user() |
|
608 | 608 | response = self.app.get(url('files_delete_home', |
@@ -672,7 +672,7 b' removed extra unicode conversion in diff' | |||
|
672 | 672 | finally: |
|
673 | 673 | fixture.destroy_repo(repo.repo_name) |
|
674 | 674 | |
|
675 |
# G |
|
|
675 | # Git - delete | |
|
676 | 676 | def test_delete_file_view_git(self): |
|
677 | 677 | self.log_user() |
|
678 | 678 | response = self.app.get(url('files_delete_home', |
@@ -59,7 +59,7 b' class TestLoginController(TestController' | |||
|
59 | 59 | response = response.follow() |
|
60 | 60 | |
|
61 | 61 | self.assertEqual(response.status, '200 OK') |
|
62 |
response.mustcontain('Users |
|
|
62 | response.mustcontain('Users Administration') | |
|
63 | 63 | |
|
64 | 64 | @parameterized.expand([ |
|
65 | 65 | ('data:text/html,<script>window.alert("xss")</script>',), |
@@ -92,9 +92,9 b' class TestSearchController(TestControlle' | |||
|
92 | 92 | 'type': 'commit'}) |
|
93 | 93 | |
|
94 | 94 | response.mustcontain('2 results') |
|
95 |
# |
|
|
95 | # Hg | |
|
96 | 96 | response.mustcontain('3803844fdbd3b711175fc3da9bdacfcd6d29a6fb') |
|
97 |
# |
|
|
97 | # Git | |
|
98 | 98 | response.mustcontain('ff7ca51e58c505fec0dd2491de52c622bb7a806b') |
|
99 | 99 | |
|
100 | 100 | def test_search_author(self): |
@@ -155,7 +155,7 b' def set_anonymous_access(enable=True):' | |||
|
155 | 155 | |
|
156 | 156 | |
|
157 | 157 | def _check_proper_git_push(stdout, stderr): |
|
158 |
#WTF G |
|
|
158 | #WTF Git stderr is output ?! | |
|
159 | 159 | assert 'fatal' not in stderr |
|
160 | 160 | assert 'rejected' not in stderr |
|
161 | 161 | assert 'Pushing to' in stderr |
@@ -427,7 +427,7 b' class TestVCSOperations(BaseTestCase):' | |||
|
427 | 427 | err = 'Repository `%s` locked by user `%s`' % (GIT_REPO, TEST_USER_ADMIN_LOGIN) |
|
428 | 428 | assert err in stderr |
|
429 | 429 | |
|
430 |
#TODO: fix this somehow later on G |
|
|
430 | #TODO: fix this somehow later on Git, Git is stupid and even if we throw | |
|
431 | 431 | #back 423 to it, it makes ANOTHER request and we fail there with 405 :/ |
|
432 | 432 | |
|
433 | 433 | msg = ("""abort: HTTP Error 423: Repository `%s` locked by user `%s`""" |
@@ -459,7 +459,7 b' class TestVCSOperations(BaseTestCase):' | |||
|
459 | 459 | r = Repository.get_by_repo_name(HG_REPO) |
|
460 | 460 | assert r.locked == [None, None] |
|
461 | 461 | |
|
462 |
#TODO: fix me ! somehow during tests hooks don't get called on G |
|
|
462 | #TODO: fix me ! somehow during tests hooks don't get called on Git | |
|
463 | 463 | def test_push_unlocks_repository_git(self): |
|
464 | 464 | # enable locking |
|
465 | 465 | r = Repository.get_by_repo_name(GIT_REPO) |
@@ -254,7 +254,7 b' issue_prefix = #' | |||
|
254 | 254 | instance_id = |
|
255 | 255 | |
|
256 | 256 | ## alternative return HTTP header for failed authentication. Default HTTP |
|
257 |
## response is 401 HTTPUnauthorized. Currently |
|
|
257 | ## response is 401 HTTPUnauthorized. Currently Mercurial clients have trouble with | |
|
258 | 258 | ## handling that. Set this variable to 403 to return HTTPForbidden |
|
259 | 259 | auth_ret_code = |
|
260 | 260 |
@@ -256,7 +256,7 b' issue_prefix = #' | |||
|
256 | 256 | instance_id = |
|
257 | 257 | |
|
258 | 258 | ## alternative return HTTP header for failed authentication. Default HTTP |
|
259 |
## response is 401 HTTPUnauthorized. Currently |
|
|
259 | ## response is 401 HTTPUnauthorized. Currently Mercurial clients have trouble with | |
|
260 | 260 | ## handling that. Set this variable to 403 to return HTTPForbidden |
|
261 | 261 | auth_ret_code = |
|
262 | 262 |
General Comments 0
You need to be logged in to leave comments.
Login now