##// END OF EJS Templates
consistently capitalize initial letter in flash messages
Mads Kiilerich -
r3565:a8f2d78d beta
parent child Browse files
Show More

The requested changes are too big and content was truncated. Show full diff

@@ -1,130 +1,130 b''
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 rhodecode.controllers.admin.defaults
4 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 5
6 6 default settings controller for Rhodecode
7 7
8 8 :created_on: Apr 27, 2010
9 9 :author: marcink
10 10 :copyright: (C) 2010-2012 Marcin Kuzminski <marcin@python-works.com>
11 11 :license: GPLv3, see COPYING for more details.
12 12 """
13 13 # This program is free software: you can redistribute it and/or modify
14 14 # it under the terms of the GNU General Public License as published by
15 15 # the Free Software Foundation, either version 3 of the License, or
16 16 # (at your option) any later version.
17 17 #
18 18 # This program is distributed in the hope that it will be useful,
19 19 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 21 # GNU General Public License for more details.
22 22 #
23 23 # You should have received a copy of the GNU General Public License
24 24 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25
26 26 import logging
27 27 import traceback
28 28 import formencode
29 29 from formencode import htmlfill
30 30
31 31 from pylons import request, session, tmpl_context as c, url
32 32 from pylons.controllers.util import abort, redirect
33 33 from pylons.i18n.translation import _
34 34
35 35 from rhodecode.lib import helpers as h
36 36 from rhodecode.lib.auth import LoginRequired, HasPermissionAllDecorator
37 37 from rhodecode.lib.base import BaseController, render
38 38 from rhodecode.model.forms import DefaultsForm
39 39 from rhodecode.model.meta import Session
40 40 from rhodecode import BACKENDS
41 41 from rhodecode.model.db import RhodeCodeSetting
42 42
43 43 log = logging.getLogger(__name__)
44 44
45 45
46 46 class DefaultsController(BaseController):
47 47 """REST Controller styled on the Atom Publishing Protocol"""
48 48 # To properly map this controller, ensure your config/routing.py
49 49 # file has a resource setup:
50 50 # map.resource('default', 'defaults')
51 51
52 52 @LoginRequired()
53 53 @HasPermissionAllDecorator('hg.admin')
54 54 def __before__(self):
55 55 super(DefaultsController, self).__before__()
56 56
57 57 def index(self, format='html'):
58 58 """GET /defaults: All items in the collection"""
59 59 # url('defaults')
60 60 c.backends = BACKENDS.keys()
61 61 defaults = RhodeCodeSetting.get_default_repo_settings()
62 62
63 63 return htmlfill.render(
64 64 render('admin/defaults/defaults.html'),
65 65 defaults=defaults,
66 66 encoding="UTF-8",
67 67 force_defaults=False
68 68 )
69 69
70 70 def create(self):
71 71 """POST /defaults: Create a new item"""
72 72 # url('defaults')
73 73
74 74 def new(self, format='html'):
75 75 """GET /defaults/new: Form to create a new item"""
76 76 # url('new_default')
77 77
78 78 def update(self, id):
79 79 """PUT /defaults/id: Update an existing item"""
80 80 # Forms posted to this method should contain a hidden field:
81 81 # <input type="hidden" name="_method" value="PUT" />
82 82 # Or using helpers:
83 83 # h.form(url('default', id=ID),
84 84 # method='put')
85 85 # url('default', id=ID)
86 86
87 87 _form = DefaultsForm()()
88 88
89 89 try:
90 90 form_result = _form.to_python(dict(request.POST))
91 91 for k, v in form_result.iteritems():
92 92 setting = RhodeCodeSetting.get_by_name_or_create(k)
93 93 setting.app_settings_value = v
94 94 Session().add(setting)
95 95 Session().commit()
96 96 h.flash(_('Default settings updated successfully'),
97 97 category='success')
98 98
99 99 except formencode.Invalid, errors:
100 100 defaults = errors.value
101 101
102 102 return htmlfill.render(
103 103 render('admin/defaults/defaults.html'),
104 104 defaults=defaults,
105 105 errors=errors.error_dict or {},
106 106 prefix_error=False,
107 107 encoding="UTF-8")
108 108 except Exception:
109 109 log.error(traceback.format_exc())
110 h.flash(_('error occurred during update of defaults'),
110 h.flash(_('Error occurred during update of defaults'),
111 111 category='error')
112 112
113 113 return redirect(url('defaults'))
114 114
115 115 def delete(self, id):
116 116 """DELETE /defaults/id: Delete an existing item"""
117 117 # Forms posted to this method should contain a hidden field:
118 118 # <input type="hidden" name="_method" value="DELETE" />
119 119 # Or using helpers:
120 120 # h.form(url('default', id=ID),
121 121 # method='delete')
122 122 # url('default', id=ID)
123 123
124 124 def show(self, id, format='html'):
125 125 """GET /defaults/id: Show a specific item"""
126 126 # url('default', id=ID)
127 127
128 128 def edit(self, id, format='html'):
129 129 """GET /defaults/id/edit: Form to edit an existing item"""
130 130 # url('edit_default', id=ID)
@@ -1,150 +1,150 b''
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 rhodecode.controllers.admin.ldap_settings
4 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 5
6 6 ldap controller for RhodeCode
7 7
8 8 :created_on: Nov 26, 2010
9 9 :author: marcink
10 10 :copyright: (C) 2010-2012 Marcin Kuzminski <marcin@python-works.com>
11 11 :license: GPLv3, see COPYING for more details.
12 12 """
13 13 # This program is free software: you can redistribute it and/or modify
14 14 # it under the terms of the GNU General Public License as published by
15 15 # the Free Software Foundation, either version 3 of the License, or
16 16 # (at your option) any later version.
17 17 #
18 18 # This program is distributed in the hope that it will be useful,
19 19 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 21 # GNU General Public License for more details.
22 22 #
23 23 # You should have received a copy of the GNU General Public License
24 24 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25 import logging
26 26 import formencode
27 27 import traceback
28 28
29 29 from formencode import htmlfill
30 30
31 31 from pylons import request, response, session, tmpl_context as c, url
32 32 from pylons.controllers.util import abort, redirect
33 33 from pylons.i18n.translation import _
34 34
35 35 from sqlalchemy.exc import DatabaseError
36 36
37 37 from rhodecode.lib.base import BaseController, render
38 38 from rhodecode.lib import helpers as h
39 39 from rhodecode.lib.auth import LoginRequired, HasPermissionAllDecorator
40 40 from rhodecode.lib.exceptions import LdapImportError
41 41 from rhodecode.model.forms import LdapSettingsForm
42 42 from rhodecode.model.db import RhodeCodeSetting
43 43 from rhodecode.model.meta import Session
44 44
45 45 log = logging.getLogger(__name__)
46 46
47 47
48 48 class LdapSettingsController(BaseController):
49 49
50 50 search_scope_choices = [('BASE', _('BASE'),),
51 51 ('ONELEVEL', _('ONELEVEL'),),
52 52 ('SUBTREE', _('SUBTREE'),),
53 53 ]
54 54 search_scope_default = 'SUBTREE'
55 55
56 56 tls_reqcert_choices = [('NEVER', _('NEVER'),),
57 57 ('ALLOW', _('ALLOW'),),
58 58 ('TRY', _('TRY'),),
59 59 ('DEMAND', _('DEMAND'),),
60 60 ('HARD', _('HARD'),),
61 61 ]
62 62 tls_reqcert_default = 'DEMAND'
63 63
64 64 tls_kind_choices = [('PLAIN', _('No encryption'),),
65 65 ('LDAPS', _('LDAPS connection'),),
66 66 ('START_TLS', _('START_TLS on LDAP connection'),)
67 67 ]
68 68
69 69 tls_kind_default = 'PLAIN'
70 70
71 71 @LoginRequired()
72 72 @HasPermissionAllDecorator('hg.admin')
73 73 def __before__(self):
74 74 c.admin_user = session.get('admin_user')
75 75 c.admin_username = session.get('admin_username')
76 76 c.search_scope_choices = self.search_scope_choices
77 77 c.tls_reqcert_choices = self.tls_reqcert_choices
78 78 c.tls_kind_choices = self.tls_kind_choices
79 79
80 80 c.search_scope_cur = self.search_scope_default
81 81 c.tls_reqcert_cur = self.tls_reqcert_default
82 82 c.tls_kind_cur = self.tls_kind_default
83 83
84 84 super(LdapSettingsController, self).__before__()
85 85
86 86 def index(self):
87 87 defaults = RhodeCodeSetting.get_ldap_settings()
88 88 c.search_scope_cur = defaults.get('ldap_search_scope')
89 89 c.tls_reqcert_cur = defaults.get('ldap_tls_reqcert')
90 90 c.tls_kind_cur = defaults.get('ldap_tls_kind')
91 91
92 92 return htmlfill.render(
93 93 render('admin/ldap/ldap.html'),
94 94 defaults=defaults,
95 95 encoding="UTF-8",
96 96 force_defaults=True,)
97 97
98 98 def ldap_settings(self):
99 99 """POST ldap create and store ldap settings"""
100 100
101 101 _form = LdapSettingsForm([x[0] for x in self.tls_reqcert_choices],
102 102 [x[0] for x in self.search_scope_choices],
103 103 [x[0] for x in self.tls_kind_choices])()
104 104 # check the ldap lib
105 105 ldap_active = False
106 106 try:
107 107 import ldap
108 108 ldap_active = True
109 109 except ImportError:
110 110 pass
111 111
112 112 try:
113 113 form_result = _form.to_python(dict(request.POST))
114 114
115 115 try:
116 116
117 117 for k, v in form_result.items():
118 118 if k.startswith('ldap_'):
119 119 if k == 'ldap_active':
120 120 v = ldap_active
121 121 setting = RhodeCodeSetting.get_by_name(k)
122 122 setting.app_settings_value = v
123 123 Session().add(setting)
124 124
125 125 Session().commit()
126 h.flash(_('Ldap settings updated successfully'),
126 h.flash(_('LDAP settings updated successfully'),
127 127 category='success')
128 128 if not ldap_active:
129 129 #if ldap is missing send an info to user
130 130 h.flash(_('Unable to activate ldap. The "python-ldap" library '
131 131 'is missing.'), category='warning')
132 132
133 133 except (DatabaseError,):
134 134 raise
135 135
136 136 except formencode.Invalid, errors:
137 137 e = errors.error_dict or {}
138 138
139 139 return htmlfill.render(
140 140 render('admin/ldap/ldap.html'),
141 141 defaults=errors.value,
142 142 errors=e,
143 143 prefix_error=False,
144 144 encoding="UTF-8")
145 145 except Exception:
146 146 log.error(traceback.format_exc())
147 h.flash(_('error occurred during update of ldap settings'),
147 h.flash(_('Error occurred during update of ldap settings'),
148 148 category='error')
149 149
150 150 return redirect(url('ldap_home'))
@@ -1,194 +1,194 b''
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 rhodecode.controllers.admin.permissions
4 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 5
6 6 permissions controller for Rhodecode
7 7
8 8 :created_on: Apr 27, 2010
9 9 :author: marcink
10 10 :copyright: (C) 2010-2012 Marcin Kuzminski <marcin@python-works.com>
11 11 :license: GPLv3, see COPYING for more details.
12 12 """
13 13 # This program is free software: you can redistribute it and/or modify
14 14 # it under the terms of the GNU General Public License as published by
15 15 # the Free Software Foundation, either version 3 of the License, or
16 16 # (at your option) any later version.
17 17 #
18 18 # This program is distributed in the hope that it will be useful,
19 19 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 21 # GNU General Public License for more details.
22 22 #
23 23 # You should have received a copy of the GNU General Public License
24 24 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25
26 26 import logging
27 27 import traceback
28 28 import formencode
29 29 from formencode import htmlfill
30 30
31 31 from pylons import request, session, tmpl_context as c, url
32 32 from pylons.controllers.util import abort, redirect
33 33 from pylons.i18n.translation import _
34 34
35 35 from rhodecode.lib import helpers as h
36 36 from rhodecode.lib.auth import LoginRequired, HasPermissionAllDecorator,\
37 37 AuthUser
38 38 from rhodecode.lib.base import BaseController, render
39 39 from rhodecode.model.forms import DefaultPermissionsForm
40 40 from rhodecode.model.permission import PermissionModel
41 41 from rhodecode.model.db import User, UserIpMap
42 42 from rhodecode.model.meta import Session
43 43
44 44 log = logging.getLogger(__name__)
45 45
46 46
47 47 class PermissionsController(BaseController):
48 48 """REST Controller styled on the Atom Publishing Protocol"""
49 49 # To properly map this controller, ensure your config/routing.py
50 50 # file has a resource setup:
51 51 # map.resource('permission', 'permissions')
52 52
53 53 @LoginRequired()
54 54 @HasPermissionAllDecorator('hg.admin')
55 55 def __before__(self):
56 56 c.admin_user = session.get('admin_user')
57 57 c.admin_username = session.get('admin_username')
58 58 super(PermissionsController, self).__before__()
59 59
60 60 self.repo_perms_choices = [('repository.none', _('None'),),
61 61 ('repository.read', _('Read'),),
62 62 ('repository.write', _('Write'),),
63 63 ('repository.admin', _('Admin'),)]
64 64 self.group_perms_choices = [('group.none', _('None'),),
65 65 ('group.read', _('Read'),),
66 66 ('group.write', _('Write'),),
67 67 ('group.admin', _('Admin'),)]
68 68 self.register_choices = [
69 69 ('hg.register.none',
70 70 _('disabled')),
71 71 ('hg.register.manual_activate',
72 72 _('allowed with manual account activation')),
73 73 ('hg.register.auto_activate',
74 74 _('allowed with automatic account activation')), ]
75 75
76 76 self.create_choices = [('hg.create.none', _('Disabled')),
77 77 ('hg.create.repository', _('Enabled'))]
78 78
79 79 self.fork_choices = [('hg.fork.none', _('Disabled')),
80 80 ('hg.fork.repository', _('Enabled'))]
81 81
82 82 # set the global template variables
83 83 c.repo_perms_choices = self.repo_perms_choices
84 84 c.group_perms_choices = self.group_perms_choices
85 85 c.register_choices = self.register_choices
86 86 c.create_choices = self.create_choices
87 87 c.fork_choices = self.fork_choices
88 88
89 89 def index(self, format='html'):
90 90 """GET /permissions: All items in the collection"""
91 91 # url('permissions')
92 92
93 93 def create(self):
94 94 """POST /permissions: Create a new item"""
95 95 # url('permissions')
96 96
97 97 def new(self, format='html'):
98 98 """GET /permissions/new: Form to create a new item"""
99 99 # url('new_permission')
100 100
101 101 def update(self, id):
102 102 """PUT /permissions/id: Update an existing item"""
103 103 # Forms posted to this method should contain a hidden field:
104 104 # <input type="hidden" name="_method" value="PUT" />
105 105 # Or using helpers:
106 106 # h.form(url('permission', id=ID),
107 107 # method='put')
108 108 # url('permission', id=ID)
109 109 if id == 'default':
110 110 c.user = default_user = User.get_by_username('default')
111 111 c.perm_user = AuthUser(user_id=default_user.user_id)
112 112 c.user_ip_map = UserIpMap.query()\
113 113 .filter(UserIpMap.user == default_user).all()
114 114 permission_model = PermissionModel()
115 115
116 116 _form = DefaultPermissionsForm(
117 117 [x[0] for x in self.repo_perms_choices],
118 118 [x[0] for x in self.group_perms_choices],
119 119 [x[0] for x in self.register_choices],
120 120 [x[0] for x in self.create_choices],
121 121 [x[0] for x in self.fork_choices])()
122 122
123 123 try:
124 124 form_result = _form.to_python(dict(request.POST))
125 125 form_result.update({'perm_user_name': id})
126 126 permission_model.update(form_result)
127 127 Session().commit()
128 128 h.flash(_('Default permissions updated successfully'),
129 129 category='success')
130 130
131 131 except formencode.Invalid, errors:
132 132 defaults = errors.value
133 133
134 134 return htmlfill.render(
135 135 render('admin/permissions/permissions.html'),
136 136 defaults=defaults,
137 137 errors=errors.error_dict or {},
138 138 prefix_error=False,
139 139 encoding="UTF-8")
140 140 except Exception:
141 141 log.error(traceback.format_exc())
142 h.flash(_('error occurred during update of permissions'),
142 h.flash(_('Error occurred during update of permissions'),
143 143 category='error')
144 144
145 145 return redirect(url('edit_permission', id=id))
146 146
147 147 def delete(self, id):
148 148 """DELETE /permissions/id: Delete an existing item"""
149 149 # Forms posted to this method should contain a hidden field:
150 150 # <input type="hidden" name="_method" value="DELETE" />
151 151 # Or using helpers:
152 152 # h.form(url('permission', id=ID),
153 153 # method='delete')
154 154 # url('permission', id=ID)
155 155
156 156 def show(self, id, format='html'):
157 157 """GET /permissions/id: Show a specific item"""
158 158 # url('permission', id=ID)
159 159
160 160 def edit(self, id, format='html'):
161 161 """GET /permissions/id/edit: Form to edit an existing item"""
162 162 #url('edit_permission', id=ID)
163 163
164 164 #this form can only edit default user permissions
165 165 if id == 'default':
166 166 c.user = default_user = User.get_by_username('default')
167 167 defaults = {'anonymous': default_user.active}
168 168 c.perm_user = AuthUser(user_id=default_user.user_id)
169 169 c.user_ip_map = UserIpMap.query()\
170 170 .filter(UserIpMap.user == default_user).all()
171 171 for p in default_user.user_perms:
172 172 if p.permission.permission_name.startswith('repository.'):
173 173 defaults['default_repo_perm'] = p.permission.permission_name
174 174
175 175 if p.permission.permission_name.startswith('group.'):
176 176 defaults['default_group_perm'] = p.permission.permission_name
177 177
178 178 if p.permission.permission_name.startswith('hg.register.'):
179 179 defaults['default_register'] = p.permission.permission_name
180 180
181 181 if p.permission.permission_name.startswith('hg.create.'):
182 182 defaults['default_create'] = p.permission.permission_name
183 183
184 184 if p.permission.permission_name.startswith('hg.fork.'):
185 185 defaults['default_fork'] = p.permission.permission_name
186 186
187 187 return htmlfill.render(
188 188 render('admin/permissions/permissions.html'),
189 189 defaults=defaults,
190 190 encoding="UTF-8",
191 191 force_defaults=False
192 192 )
193 193 else:
194 194 return redirect(url('admin_home'))
@@ -1,540 +1,540 b''
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 rhodecode.controllers.admin.repos
4 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 5
6 6 Repositories controller for RhodeCode
7 7
8 8 :created_on: Apr 7, 2010
9 9 :author: marcink
10 10 :copyright: (C) 2010-2012 Marcin Kuzminski <marcin@python-works.com>
11 11 :license: GPLv3, see COPYING for more details.
12 12 """
13 13 # This program is free software: you can redistribute it and/or modify
14 14 # it under the terms of the GNU General Public License as published by
15 15 # the Free Software Foundation, either version 3 of the License, or
16 16 # (at your option) any later version.
17 17 #
18 18 # This program is distributed in the hope that it will be useful,
19 19 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 21 # GNU General Public License for more details.
22 22 #
23 23 # You should have received a copy of the GNU General Public License
24 24 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25
26 26 import logging
27 27 import traceback
28 28 import formencode
29 29 from formencode import htmlfill
30 30
31 31 from webob.exc import HTTPInternalServerError, HTTPForbidden
32 32 from pylons import request, session, tmpl_context as c, url
33 33 from pylons.controllers.util import redirect
34 34 from pylons.i18n.translation import _
35 35 from sqlalchemy.exc import IntegrityError
36 36
37 37 import rhodecode
38 38 from rhodecode.lib import helpers as h
39 39 from rhodecode.lib.auth import LoginRequired, HasPermissionAllDecorator, \
40 40 HasPermissionAnyDecorator, HasRepoPermissionAllDecorator, NotAnonymous,\
41 41 HasPermissionAny, HasReposGroupPermissionAny
42 42 from rhodecode.lib.base import BaseRepoController, render
43 43 from rhodecode.lib.utils import invalidate_cache, action_logger, repo_name_slug
44 44 from rhodecode.lib.helpers import get_token
45 45 from rhodecode.model.meta import Session
46 46 from rhodecode.model.db import User, Repository, UserFollowing, RepoGroup,\
47 47 RhodeCodeSetting, RepositoryField
48 48 from rhodecode.model.forms import RepoForm, RepoFieldForm
49 49 from rhodecode.model.scm import ScmModel, GroupList
50 50 from rhodecode.model.repo import RepoModel
51 51 from rhodecode.lib.compat import json
52 52 from sqlalchemy.sql.expression import func
53 53
54 54 log = logging.getLogger(__name__)
55 55
56 56
57 57 class ReposController(BaseRepoController):
58 58 """
59 59 REST Controller styled on the Atom Publishing Protocol"""
60 60 # To properly map this controller, ensure your config/routing.py
61 61 # file has a resource setup:
62 62 # map.resource('repo', 'repos')
63 63
64 64 @LoginRequired()
65 65 def __before__(self):
66 66 c.admin_user = session.get('admin_user')
67 67 c.admin_username = session.get('admin_username')
68 68 super(ReposController, self).__before__()
69 69
70 70 def __load_defaults(self):
71 71 acl_groups = GroupList(RepoGroup.query().all(),
72 72 perm_set=['group.write', 'group.admin'])
73 73 c.repo_groups = RepoGroup.groups_choices(groups=acl_groups)
74 74 c.repo_groups_choices = map(lambda k: unicode(k[0]), c.repo_groups)
75 75
76 76 repo_model = RepoModel()
77 77 c.users_array = repo_model.get_users_js()
78 78 c.users_groups_array = repo_model.get_users_groups_js()
79 79 choices, c.landing_revs = ScmModel().get_repo_landing_revs()
80 80 c.landing_revs_choices = choices
81 81
82 82 def __load_data(self, repo_name=None):
83 83 """
84 84 Load defaults settings for edit, and update
85 85
86 86 :param repo_name:
87 87 """
88 88 self.__load_defaults()
89 89
90 90 c.repo_info = db_repo = Repository.get_by_repo_name(repo_name)
91 91 repo = db_repo.scm_instance
92 92
93 93 if c.repo_info is None:
94 94 h.not_mapped_error(repo_name)
95 95 return redirect(url('repos'))
96 96
97 97 ##override defaults for exact repo info here git/hg etc
98 98 choices, c.landing_revs = ScmModel().get_repo_landing_revs(c.repo_info)
99 99 c.landing_revs_choices = choices
100 100
101 101 c.default_user_id = User.get_by_username('default').user_id
102 102 c.in_public_journal = UserFollowing.query()\
103 103 .filter(UserFollowing.user_id == c.default_user_id)\
104 104 .filter(UserFollowing.follows_repository == c.repo_info).scalar()
105 105
106 106 if c.repo_info.stats:
107 107 # this is on what revision we ended up so we add +1 for count
108 108 last_rev = c.repo_info.stats.stat_on_revision + 1
109 109 else:
110 110 last_rev = 0
111 111 c.stats_revision = last_rev
112 112
113 113 c.repo_last_rev = repo.count() if repo.revisions else 0
114 114
115 115 if last_rev == 0 or c.repo_last_rev == 0:
116 116 c.stats_percentage = 0
117 117 else:
118 118 c.stats_percentage = '%.2f' % ((float((last_rev)) /
119 119 c.repo_last_rev) * 100)
120 120
121 121 c.repo_fields = RepositoryField.query()\
122 122 .filter(RepositoryField.repository == db_repo).all()
123 123
124 124 defaults = RepoModel()._get_defaults(repo_name)
125 125
126 126 c.repos_list = [('', _('--REMOVE FORK--'))]
127 127 c.repos_list += [(x.repo_id, x.repo_name) for x in
128 128 Repository.query().order_by(Repository.repo_name).all()
129 129 if x.repo_id != c.repo_info.repo_id]
130 130
131 131 defaults['id_fork_of'] = db_repo.fork.repo_id if db_repo.fork else ''
132 132 return defaults
133 133
134 134 @HasPermissionAllDecorator('hg.admin')
135 135 def index(self, format='html'):
136 136 """GET /repos: All items in the collection"""
137 137 # url('repos')
138 138
139 139 c.repos_list = Repository.query()\
140 140 .order_by(func.lower(Repository.repo_name))\
141 141 .all()
142 142
143 143 repos_data = RepoModel().get_repos_as_dict(repos_list=c.repos_list,
144 144 admin=True,
145 145 super_user_actions=True)
146 146 #json used to render the grid
147 147 c.data = json.dumps(repos_data)
148 148
149 149 return render('admin/repos/repos.html')
150 150
151 151 @NotAnonymous()
152 152 def create(self):
153 153 """
154 154 POST /repos: Create a new item"""
155 155 # url('repos')
156 156
157 157 self.__load_defaults()
158 158 form_result = {}
159 159 try:
160 160 form_result = RepoForm(repo_groups=c.repo_groups_choices,
161 161 landing_revs=c.landing_revs_choices)()\
162 162 .to_python(dict(request.POST))
163 163
164 164 new_repo = RepoModel().create(form_result,
165 165 self.rhodecode_user.user_id)
166 166 if form_result['clone_uri']:
167 h.flash(_('created repository %s from %s') \
167 h.flash(_('Created repository %s from %s') \
168 168 % (form_result['repo_name'], form_result['clone_uri']),
169 169 category='success')
170 170 else:
171 171 repo_url = h.link_to(form_result['repo_name'],
172 172 h.url('summary_home', repo_name=form_result['repo_name']))
173 h.flash(h.literal(_('created repository %s') % repo_url),
173 h.flash(h.literal(_('Created repository %s') % repo_url),
174 174 category='success')
175 175
176 176 if request.POST.get('user_created'):
177 177 # created by regular non admin user
178 178 action_logger(self.rhodecode_user, 'user_created_repo',
179 179 form_result['repo_name_full'], self.ip_addr,
180 180 self.sa)
181 181 else:
182 182 action_logger(self.rhodecode_user, 'admin_created_repo',
183 183 form_result['repo_name_full'], self.ip_addr,
184 184 self.sa)
185 185 Session().commit()
186 186 except formencode.Invalid, errors:
187 187 return htmlfill.render(
188 188 render('admin/repos/repo_add.html'),
189 189 defaults=errors.value,
190 190 errors=errors.error_dict or {},
191 191 prefix_error=False,
192 192 encoding="UTF-8")
193 193
194 194 except Exception:
195 195 log.error(traceback.format_exc())
196 196 msg = _('error occurred during creation of repository %s') \
197 197 % form_result.get('repo_name')
198 198 h.flash(msg, category='error')
199 199 if c.rhodecode_user.is_admin:
200 200 return redirect(url('repos'))
201 201 return redirect(url('home'))
202 202 #redirect to our new repo !
203 203 return redirect(url('summary_home', repo_name=new_repo.repo_name))
204 204
205 205 @HasPermissionAllDecorator('hg.admin')
206 206 def new(self, format='html'):
207 207 """
208 208 WARNING: this function is depracated see settings.create_repo !!
209 209
210 210 GET /repos/new: Form to create a new item
211 211 """
212 212
213 213 parent_group = request.GET.get('parent_group')
214 214 self.__load_defaults()
215 215 ## apply the defaults from defaults page
216 216 defaults = RhodeCodeSetting.get_default_repo_settings(strip_prefix=True)
217 217 if parent_group:
218 218 defaults.update({'repo_group': parent_group})
219 219
220 220 return htmlfill.render(
221 221 render('admin/repos/repo_add.html'),
222 222 defaults=defaults,
223 223 errors={},
224 224 prefix_error=False,
225 225 encoding="UTF-8"
226 226 )
227 227
228 228 @HasPermissionAllDecorator('hg.admin')
229 229 def update(self, repo_name):
230 230 """
231 231 PUT /repos/repo_name: Update an existing item"""
232 232 # Forms posted to this method should contain a hidden field:
233 233 # <input type="hidden" name="_method" value="PUT" />
234 234 # Or using helpers:
235 235 # h.form(url('repo', repo_name=ID),
236 236 # method='put')
237 237 # url('repo', repo_name=ID)
238 238 self.__load_defaults()
239 239 repo_model = RepoModel()
240 240 changed_name = repo_name
241 241 #override the choices with extracted revisions !
242 242 choices, c.landing_revs = ScmModel().get_repo_landing_revs(repo_name)
243 243 c.landing_revs_choices = choices
244 244 repo = Repository.get_by_repo_name(repo_name)
245 245 _form = RepoForm(edit=True, old_data={'repo_name': repo_name,
246 246 'repo_group': repo.group.get_dict() \
247 247 if repo.group else {}},
248 248 repo_groups=c.repo_groups_choices,
249 249 landing_revs=c.landing_revs_choices)()
250 250 try:
251 251 form_result = _form.to_python(dict(request.POST))
252 252 repo = repo_model.update(repo_name, **form_result)
253 253 invalidate_cache('get_repo_cached_%s' % repo_name)
254 254 h.flash(_('Repository %s updated successfully') % repo_name,
255 255 category='success')
256 256 changed_name = repo.repo_name
257 257 action_logger(self.rhodecode_user, 'admin_updated_repo',
258 258 changed_name, self.ip_addr, self.sa)
259 259 Session().commit()
260 260 except formencode.Invalid, errors:
261 261 defaults = self.__load_data(repo_name)
262 262 defaults.update(errors.value)
263 263 return htmlfill.render(
264 264 render('admin/repos/repo_edit.html'),
265 265 defaults=defaults,
266 266 errors=errors.error_dict or {},
267 267 prefix_error=False,
268 268 encoding="UTF-8")
269 269
270 270 except Exception:
271 271 log.error(traceback.format_exc())
272 h.flash(_('error occurred during update of repository %s') \
272 h.flash(_('Error occurred during update of repository %s') \
273 273 % repo_name, category='error')
274 274 return redirect(url('edit_repo', repo_name=changed_name))
275 275
276 276 @HasPermissionAllDecorator('hg.admin')
277 277 def delete(self, repo_name):
278 278 """
279 279 DELETE /repos/repo_name: Delete an existing item"""
280 280 # Forms posted to this method should contain a hidden field:
281 281 # <input type="hidden" name="_method" value="DELETE" />
282 282 # Or using helpers:
283 283 # h.form(url('repo', repo_name=ID),
284 284 # method='delete')
285 285 # url('repo', repo_name=ID)
286 286
287 287 repo_model = RepoModel()
288 288 repo = repo_model.get_by_repo_name(repo_name)
289 289 if not repo:
290 290 h.not_mapped_error(repo_name)
291 291 return redirect(url('repos'))
292 292 try:
293 293 _forks = repo.forks.count()
294 294 if _forks and request.POST.get('forks'):
295 295 do = request.POST['forks']
296 296 if do == 'detach_forks':
297 297 for r in repo.forks:
298 298 log.debug('Detaching fork %s from repo %s' % (r, repo))
299 299 r.fork = None
300 300 Session().add(r)
301 h.flash(_('detached %s forks') % _forks, category='success')
301 h.flash(_('Detached %s forks') % _forks, category='success')
302 302 elif do == 'delete_forks':
303 303 for r in repo.forks:
304 304 log.debug('Deleting fork %s of repo %s' % (r, repo))
305 305 repo_model.delete(r)
306 h.flash(_('deleted %s forks') % _forks, category='success')
306 h.flash(_('Deleted %s forks') % _forks, category='success')
307 307 action_logger(self.rhodecode_user, 'admin_deleted_repo',
308 308 repo_name, self.ip_addr, self.sa)
309 309 repo_model.delete(repo)
310 310 invalidate_cache('get_repo_cached_%s' % repo_name)
311 h.flash(_('deleted repository %s') % repo_name, category='success')
311 h.flash(_('Deleted repository %s') % repo_name, category='success')
312 312 Session().commit()
313 313 except IntegrityError, e:
314 314 if e.message.find('repositories_fork_id_fkey') != -1:
315 315 log.error(traceback.format_exc())
316 316 h.flash(_('Cannot delete %s it still contains attached '
317 317 'forks') % repo_name,
318 318 category='warning')
319 319 else:
320 320 log.error(traceback.format_exc())
321 321 h.flash(_('An error occurred during '
322 322 'deletion of %s') % repo_name,
323 323 category='error')
324 324
325 325 except Exception, e:
326 326 log.error(traceback.format_exc())
327 327 h.flash(_('An error occurred during deletion of %s') % repo_name,
328 328 category='error')
329 329
330 330 return redirect(url('repos'))
331 331
332 332 @HasRepoPermissionAllDecorator('repository.admin')
333 333 def delete_perm_user(self, repo_name):
334 334 """
335 335 DELETE an existing repository permission user
336 336
337 337 :param repo_name:
338 338 """
339 339 try:
340 340 RepoModel().revoke_user_permission(repo=repo_name,
341 341 user=request.POST['user_id'])
342 342 Session().commit()
343 343 except Exception:
344 344 log.error(traceback.format_exc())
345 345 h.flash(_('An error occurred during deletion of repository user'),
346 346 category='error')
347 347 raise HTTPInternalServerError()
348 348
349 349 @HasRepoPermissionAllDecorator('repository.admin')
350 350 def delete_perm_users_group(self, repo_name):
351 351 """
352 352 DELETE an existing repository permission user group
353 353
354 354 :param repo_name:
355 355 """
356 356
357 357 try:
358 358 RepoModel().revoke_users_group_permission(
359 359 repo=repo_name, group_name=request.POST['users_group_id']
360 360 )
361 361 Session().commit()
362 362 except Exception:
363 363 log.error(traceback.format_exc())
364 364 h.flash(_('An error occurred during deletion of repository'
365 365 ' user groups'),
366 366 category='error')
367 367 raise HTTPInternalServerError()
368 368
369 369 @HasPermissionAllDecorator('hg.admin')
370 370 def repo_stats(self, repo_name):
371 371 """
372 372 DELETE an existing repository statistics
373 373
374 374 :param repo_name:
375 375 """
376 376
377 377 try:
378 378 RepoModel().delete_stats(repo_name)
379 379 Session().commit()
380 380 except Exception, e:
381 381 log.error(traceback.format_exc())
382 382 h.flash(_('An error occurred during deletion of repository stats'),
383 383 category='error')
384 384 return redirect(url('edit_repo', repo_name=repo_name))
385 385
386 386 @HasPermissionAllDecorator('hg.admin')
387 387 def repo_cache(self, repo_name):
388 388 """
389 389 INVALIDATE existing repository cache
390 390
391 391 :param repo_name:
392 392 """
393 393
394 394 try:
395 395 ScmModel().mark_for_invalidation(repo_name)
396 396 Session().commit()
397 397 except Exception, e:
398 398 log.error(traceback.format_exc())
399 399 h.flash(_('An error occurred during cache invalidation'),
400 400 category='error')
401 401 return redirect(url('edit_repo', repo_name=repo_name))
402 402
403 403 @HasPermissionAllDecorator('hg.admin')
404 404 def repo_locking(self, repo_name):
405 405 """
406 406 Unlock repository when it is locked !
407 407
408 408 :param repo_name:
409 409 """
410 410
411 411 try:
412 412 repo = Repository.get_by_repo_name(repo_name)
413 413 if request.POST.get('set_lock'):
414 414 Repository.lock(repo, c.rhodecode_user.user_id)
415 415 elif request.POST.get('set_unlock'):
416 416 Repository.unlock(repo)
417 417 except Exception, e:
418 418 log.error(traceback.format_exc())
419 419 h.flash(_('An error occurred during unlocking'),
420 420 category='error')
421 421 return redirect(url('edit_repo', repo_name=repo_name))
422 422
423 423 @HasPermissionAllDecorator('hg.admin')
424 424 def repo_public_journal(self, repo_name):
425 425 """
426 426 Set's this repository to be visible in public journal,
427 427 in other words assing default user to follow this repo
428 428
429 429 :param repo_name:
430 430 """
431 431
432 432 cur_token = request.POST.get('auth_token')
433 433 token = get_token()
434 434 if cur_token == token:
435 435 try:
436 436 repo_id = Repository.get_by_repo_name(repo_name).repo_id
437 437 user_id = User.get_by_username('default').user_id
438 438 self.scm_model.toggle_following_repo(repo_id, user_id)
439 439 h.flash(_('Updated repository visibility in public journal'),
440 440 category='success')
441 441 Session().commit()
442 442 except:
443 443 h.flash(_('An error occurred during setting this'
444 444 ' repository in public journal'),
445 445 category='error')
446 446
447 447 else:
448 448 h.flash(_('Token mismatch'), category='error')
449 449 return redirect(url('edit_repo', repo_name=repo_name))
450 450
451 451 @HasPermissionAllDecorator('hg.admin')
452 452 def repo_pull(self, repo_name):
453 453 """
454 454 Runs task to update given repository with remote changes,
455 455 ie. make pull on remote location
456 456
457 457 :param repo_name:
458 458 """
459 459 try:
460 460 ScmModel().pull_changes(repo_name, self.rhodecode_user.username)
461 461 h.flash(_('Pulled from remote location'), category='success')
462 462 except Exception, e:
463 463 h.flash(_('An error occurred during pull from remote location'),
464 464 category='error')
465 465
466 466 return redirect(url('edit_repo', repo_name=repo_name))
467 467
468 468 @HasPermissionAllDecorator('hg.admin')
469 469 def repo_as_fork(self, repo_name):
470 470 """
471 471 Mark given repository as a fork of another
472 472
473 473 :param repo_name:
474 474 """
475 475 try:
476 476 fork_id = request.POST.get('id_fork_of')
477 477 repo = ScmModel().mark_as_fork(repo_name, fork_id,
478 478 self.rhodecode_user.username)
479 479 fork = repo.fork.repo_name if repo.fork else _('Nothing')
480 480 Session().commit()
481 481 h.flash(_('Marked repo %s as fork of %s') % (repo_name, fork),
482 482 category='success')
483 483 except Exception, e:
484 484 log.error(traceback.format_exc())
485 485 h.flash(_('An error occurred during this operation'),
486 486 category='error')
487 487
488 488 return redirect(url('edit_repo', repo_name=repo_name))
489 489
490 490 @HasPermissionAllDecorator('hg.admin')
491 491 def show(self, repo_name, format='html'):
492 492 """GET /repos/repo_name: Show a specific item"""
493 493 # url('repo', repo_name=ID)
494 494
495 495 @HasPermissionAllDecorator('hg.admin')
496 496 def edit(self, repo_name, format='html'):
497 497 """GET /repos/repo_name/edit: Form to edit an existing item"""
498 498 # url('edit_repo', repo_name=ID)
499 499 defaults = self.__load_data(repo_name)
500 500
501 501 return htmlfill.render(
502 502 render('admin/repos/repo_edit.html'),
503 503 defaults=defaults,
504 504 encoding="UTF-8",
505 505 force_defaults=False
506 506 )
507 507
508 508 @HasPermissionAllDecorator('hg.admin')
509 509 def create_repo_field(self, repo_name):
510 510 try:
511 511 form_result = RepoFieldForm()().to_python(dict(request.POST))
512 512 new_field = RepositoryField()
513 513 new_field.repository = Repository.get_by_repo_name(repo_name)
514 514 new_field.field_key = form_result['new_field_key']
515 515 new_field.field_type = form_result['new_field_type'] # python type
516 516 new_field.field_value = form_result['new_field_value'] # set initial blank value
517 517 new_field.field_desc = form_result['new_field_desc']
518 518 new_field.field_label = form_result['new_field_label']
519 519 Session().add(new_field)
520 520 Session().commit()
521 521
522 522 except Exception, e:
523 523 log.error(traceback.format_exc())
524 524 msg = _('An error occurred during creation of field')
525 525 if isinstance(e, formencode.Invalid):
526 526 msg += ". " + e.msg
527 527 h.flash(msg, category='error')
528 528 return redirect(url('edit_repo', repo_name=repo_name))
529 529
530 530 @HasPermissionAllDecorator('hg.admin')
531 531 def delete_repo_field(self, repo_name, field_id):
532 532 field = RepositoryField.get_or_404(field_id)
533 533 try:
534 534 Session().delete(field)
535 535 Session().commit()
536 536 except Exception, e:
537 537 log.error(traceback.format_exc())
538 538 msg = _('An error occurred during removal of field')
539 539 h.flash(msg, category='error')
540 540 return redirect(url('edit_repo', repo_name=repo_name))
@@ -1,392 +1,392 b''
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 rhodecode.controllers.admin.repos_groups
4 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 5
6 6 Repository groups controller for RhodeCode
7 7
8 8 :created_on: Mar 23, 2010
9 9 :author: marcink
10 10 :copyright: (C) 2010-2012 Marcin Kuzminski <marcin@python-works.com>
11 11 :license: GPLv3, see COPYING for more details.
12 12 """
13 13 # This program is free software: you can redistribute it and/or modify
14 14 # it under the terms of the GNU General Public License as published by
15 15 # the Free Software Foundation, either version 3 of the License, or
16 16 # (at your option) any later version.
17 17 #
18 18 # This program is distributed in the hope that it will be useful,
19 19 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 21 # GNU General Public License for more details.
22 22 #
23 23 # You should have received a copy of the GNU General Public License
24 24 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25
26 26 import logging
27 27 import traceback
28 28 import formencode
29 29
30 30 from formencode import htmlfill
31 31
32 32 from pylons import request, tmpl_context as c, url
33 33 from pylons.controllers.util import abort, redirect
34 34 from pylons.i18n.translation import _
35 35
36 36 from sqlalchemy.exc import IntegrityError
37 37
38 38 import rhodecode
39 39 from rhodecode.lib import helpers as h
40 40 from rhodecode.lib.ext_json import json
41 41 from rhodecode.lib.auth import LoginRequired, HasPermissionAnyDecorator,\
42 42 HasReposGroupPermissionAnyDecorator, HasReposGroupPermissionAll,\
43 43 HasPermissionAll
44 44 from rhodecode.lib.base import BaseController, render
45 45 from rhodecode.model.db import RepoGroup, Repository
46 46 from rhodecode.model.repos_group import ReposGroupModel
47 47 from rhodecode.model.forms import ReposGroupForm
48 48 from rhodecode.model.meta import Session
49 49 from rhodecode.model.repo import RepoModel
50 50 from webob.exc import HTTPInternalServerError, HTTPNotFound
51 51 from rhodecode.lib.utils2 import str2bool, safe_int
52 52 from sqlalchemy.sql.expression import func
53 53 from rhodecode.model.scm import GroupList
54 54
55 55 log = logging.getLogger(__name__)
56 56
57 57
58 58 class ReposGroupsController(BaseController):
59 59 """REST Controller styled on the Atom Publishing Protocol"""
60 60 # To properly map this controller, ensure your config/routing.py
61 61 # file has a resource setup:
62 62 # map.resource('repos_group', 'repos_groups')
63 63
64 64 @LoginRequired()
65 65 def __before__(self):
66 66 super(ReposGroupsController, self).__before__()
67 67
68 68 def __load_defaults(self, allow_empty_group=False, exclude_group_ids=[]):
69 69 if HasPermissionAll('hg.admin')('group edit'):
70 70 #we're global admin, we're ok and we can create TOP level groups
71 71 allow_empty_group = True
72 72
73 73 #override the choices for this form, we need to filter choices
74 74 #and display only those we have ADMIN right
75 75 groups_with_admin_rights = GroupList(RepoGroup.query().all(),
76 76 perm_set=['group.admin'])
77 77 c.repo_groups = RepoGroup.groups_choices(groups=groups_with_admin_rights,
78 78 show_empty_group=allow_empty_group)
79 79 # exclude filtered ids
80 80 c.repo_groups = filter(lambda x: x[0] not in exclude_group_ids,
81 81 c.repo_groups)
82 82 c.repo_groups_choices = map(lambda k: unicode(k[0]), c.repo_groups)
83 83 repo_model = RepoModel()
84 84 c.users_array = repo_model.get_users_js()
85 85 c.users_groups_array = repo_model.get_users_groups_js()
86 86
87 87 def __load_data(self, group_id):
88 88 """
89 89 Load defaults settings for edit, and update
90 90
91 91 :param group_id:
92 92 """
93 93 repo_group = RepoGroup.get_or_404(group_id)
94 94 data = repo_group.get_dict()
95 95 data['group_name'] = repo_group.name
96 96
97 97 # fill repository users
98 98 for p in repo_group.repo_group_to_perm:
99 99 data.update({'u_perm_%s' % p.user.username:
100 100 p.permission.permission_name})
101 101
102 102 # fill repository groups
103 103 for p in repo_group.users_group_to_perm:
104 104 data.update({'g_perm_%s' % p.users_group.users_group_name:
105 105 p.permission.permission_name})
106 106
107 107 return data
108 108
109 109 def _revoke_perms_on_yourself(self, form_result):
110 110 _up = filter(lambda u: c.rhodecode_user.username == u[0],
111 111 form_result['perms_updates'])
112 112 _new = filter(lambda u: c.rhodecode_user.username == u[0],
113 113 form_result['perms_new'])
114 114 if _new and _new[0][1] != 'group.admin' or _up and _up[0][1] != 'group.admin':
115 115 return True
116 116 return False
117 117
118 118 def index(self, format='html'):
119 119 """GET /repos_groups: All items in the collection"""
120 120 # url('repos_groups')
121 121 group_iter = GroupList(RepoGroup.query().all(), perm_set=['group.admin'])
122 122 sk = lambda g: g.parents[0].group_name if g.parents else g.group_name
123 123 c.groups = sorted(group_iter, key=sk)
124 124 return render('admin/repos_groups/repos_groups_show.html')
125 125
126 126 def create(self):
127 127 """POST /repos_groups: Create a new item"""
128 128 # url('repos_groups')
129 129
130 130 self.__load_defaults()
131 131
132 132 # permissions for can create group based on parent_id are checked
133 133 # here in the Form
134 134 repos_group_form = ReposGroupForm(available_groups=
135 135 map(lambda k: unicode(k[0]), c.repo_groups))()
136 136 try:
137 137 form_result = repos_group_form.to_python(dict(request.POST))
138 138 ReposGroupModel().create(
139 139 group_name=form_result['group_name'],
140 140 group_description=form_result['group_description'],
141 141 parent=form_result['group_parent_id'],
142 142 owner=self.rhodecode_user.user_id
143 143 )
144 144 Session().commit()
145 h.flash(_('created repos group %s') \
145 h.flash(_('Created repos group %s') \
146 146 % form_result['group_name'], category='success')
147 147 #TODO: in futureaction_logger(, '', '', '', self.sa)
148 148 except formencode.Invalid, errors:
149 149 return htmlfill.render(
150 150 render('admin/repos_groups/repos_groups_add.html'),
151 151 defaults=errors.value,
152 152 errors=errors.error_dict or {},
153 153 prefix_error=False,
154 154 encoding="UTF-8")
155 155 except Exception:
156 156 log.error(traceback.format_exc())
157 h.flash(_('error occurred during creation of repos group %s') \
157 h.flash(_('Error occurred during creation of repos group %s') \
158 158 % request.POST.get('group_name'), category='error')
159 159 parent_group_id = form_result['group_parent_id']
160 160 #TODO: maybe we should get back to the main view, not the admin one
161 161 return redirect(url('repos_groups', parent_group=parent_group_id))
162 162
163 163 def new(self, format='html'):
164 164 """GET /repos_groups/new: Form to create a new item"""
165 165 # url('new_repos_group')
166 166 if HasPermissionAll('hg.admin')('group create'):
167 167 #we're global admin, we're ok and we can create TOP level groups
168 168 pass
169 169 else:
170 170 # we pass in parent group into creation form, thus we know
171 171 # what would be the group, we can check perms here !
172 172 group_id = safe_int(request.GET.get('parent_group'))
173 173 group = RepoGroup.get(group_id) if group_id else None
174 174 group_name = group.group_name if group else None
175 175 if HasReposGroupPermissionAll('group.admin')(group_name, 'group create'):
176 176 pass
177 177 else:
178 178 return abort(403)
179 179
180 180 self.__load_defaults()
181 181 return render('admin/repos_groups/repos_groups_add.html')
182 182
183 183 @HasReposGroupPermissionAnyDecorator('group.admin')
184 184 def update(self, group_name):
185 185 """PUT /repos_groups/group_name: Update an existing item"""
186 186 # Forms posted to this method should contain a hidden field:
187 187 # <input type="hidden" name="_method" value="PUT" />
188 188 # Or using helpers:
189 189 # h.form(url('repos_group', group_name=GROUP_NAME),
190 190 # method='put')
191 191 # url('repos_group', group_name=GROUP_NAME)
192 192
193 193 c.repos_group = ReposGroupModel()._get_repos_group(group_name)
194 194 if HasPermissionAll('hg.admin')('group edit'):
195 195 #we're global admin, we're ok and we can create TOP level groups
196 196 allow_empty_group = True
197 197 elif not c.repos_group.parent_group:
198 198 allow_empty_group = True
199 199 else:
200 200 allow_empty_group = False
201 201 self.__load_defaults(allow_empty_group=allow_empty_group,
202 202 exclude_group_ids=[c.repos_group.group_id])
203 203
204 204 repos_group_form = ReposGroupForm(
205 205 edit=True,
206 206 old_data=c.repos_group.get_dict(),
207 207 available_groups=c.repo_groups_choices,
208 208 can_create_in_root=allow_empty_group,
209 209 )()
210 210 try:
211 211 form_result = repos_group_form.to_python(dict(request.POST))
212 212 if not c.rhodecode_user.is_admin:
213 213 if self._revoke_perms_on_yourself(form_result):
214 214 msg = _('Cannot revoke permission for yourself as admin')
215 215 h.flash(msg, category='warning')
216 216 raise Exception('revoke admin permission on self')
217 217
218 218 new_gr = ReposGroupModel().update(group_name, form_result)
219 219 Session().commit()
220 h.flash(_('updated repos group %s') \
220 h.flash(_('Updated repos group %s') \
221 221 % form_result['group_name'], category='success')
222 222 # we now have new name !
223 223 group_name = new_gr.group_name
224 224 #TODO: in future action_logger(, '', '', '', self.sa)
225 225 except formencode.Invalid, errors:
226 226
227 227 return htmlfill.render(
228 228 render('admin/repos_groups/repos_groups_edit.html'),
229 229 defaults=errors.value,
230 230 errors=errors.error_dict or {},
231 231 prefix_error=False,
232 232 encoding="UTF-8")
233 233 except Exception:
234 234 log.error(traceback.format_exc())
235 h.flash(_('error occurred during update of repos group %s') \
235 h.flash(_('Error occurred during update of repos group %s') \
236 236 % request.POST.get('group_name'), category='error')
237 237
238 238 return redirect(url('edit_repos_group', group_name=group_name))
239 239
240 240 @HasReposGroupPermissionAnyDecorator('group.admin')
241 241 def delete(self, group_name):
242 242 """DELETE /repos_groups/group_name: Delete an existing item"""
243 243 # Forms posted to this method should contain a hidden field:
244 244 # <input type="hidden" name="_method" value="DELETE" />
245 245 # Or using helpers:
246 246 # h.form(url('repos_group', group_name=GROUP_NAME),
247 247 # method='delete')
248 248 # url('repos_group', group_name=GROUP_NAME)
249 249
250 250 gr = c.repos_group = ReposGroupModel()._get_repos_group(group_name)
251 251 repos = gr.repositories.all()
252 252 if repos:
253 253 h.flash(_('This group contains %s repositores and cannot be '
254 254 'deleted') % len(repos), category='warning')
255 255 return redirect(url('repos_groups'))
256 256
257 257 children = gr.children.all()
258 258 if children:
259 259 h.flash(_('This group contains %s subgroups and cannot be deleted'
260 260 % (len(children))), category='warning')
261 261 return redirect(url('repos_groups'))
262 262
263 263 try:
264 264 ReposGroupModel().delete(group_name)
265 265 Session().commit()
266 h.flash(_('removed repos group %s') % group_name,
266 h.flash(_('Removed repos group %s') % group_name,
267 267 category='success')
268 268 #TODO: in future action_logger(, '', '', '', self.sa)
269 269 except Exception:
270 270 log.error(traceback.format_exc())
271 h.flash(_('error occurred during deletion of repos '
271 h.flash(_('Error occurred during deletion of repos '
272 272 'group %s') % group_name, category='error')
273 273
274 274 return redirect(url('repos_groups'))
275 275
276 276 @HasReposGroupPermissionAnyDecorator('group.admin')
277 277 def delete_repos_group_user_perm(self, group_name):
278 278 """
279 279 DELETE an existing repository group permission user
280 280
281 281 :param group_name:
282 282 """
283 283 try:
284 284 if not c.rhodecode_user.is_admin:
285 285 if c.rhodecode_user.user_id == safe_int(request.POST['user_id']):
286 286 msg = _('Cannot revoke permission for yourself as admin')
287 287 h.flash(msg, category='warning')
288 288 raise Exception('revoke admin permission on self')
289 289 recursive = str2bool(request.POST.get('recursive', False))
290 290 ReposGroupModel().delete_permission(
291 291 repos_group=group_name, obj=request.POST['user_id'],
292 292 obj_type='user', recursive=recursive
293 293 )
294 294 Session().commit()
295 295 except Exception:
296 296 log.error(traceback.format_exc())
297 297 h.flash(_('An error occurred during deletion of group user'),
298 298 category='error')
299 299 raise HTTPInternalServerError()
300 300
301 301 @HasReposGroupPermissionAnyDecorator('group.admin')
302 302 def delete_repos_group_users_group_perm(self, group_name):
303 303 """
304 304 DELETE an existing repository group permission user group
305 305
306 306 :param group_name:
307 307 """
308 308
309 309 try:
310 310 recursive = str2bool(request.POST.get('recursive', False))
311 311 ReposGroupModel().delete_permission(
312 312 repos_group=group_name, obj=request.POST['users_group_id'],
313 313 obj_type='users_group', recursive=recursive
314 314 )
315 315 Session().commit()
316 316 except Exception:
317 317 log.error(traceback.format_exc())
318 318 h.flash(_('An error occurred during deletion of group'
319 319 ' user groups'),
320 320 category='error')
321 321 raise HTTPInternalServerError()
322 322
323 323 def show_by_name(self, group_name):
324 324 """
325 325 This is a proxy that does a lookup group_name -> id, and shows
326 326 the group by id view instead
327 327 """
328 328 group_name = group_name.rstrip('/')
329 329 id_ = RepoGroup.get_by_group_name(group_name)
330 330 if id_:
331 331 return self.show(id_.group_id)
332 332 raise HTTPNotFound
333 333
334 334 @HasReposGroupPermissionAnyDecorator('group.read', 'group.write',
335 335 'group.admin')
336 336 def show(self, group_name, format='html'):
337 337 """GET /repos_groups/group_name: Show a specific item"""
338 338 # url('repos_group', group_name=GROUP_NAME)
339 339
340 340 c.group = c.repos_group = ReposGroupModel()._get_repos_group(group_name)
341 341 c.group_repos = c.group.repositories.all()
342 342
343 343 #overwrite our cached list with current filter
344 344 gr_filter = c.group_repos
345 345 c.repo_cnt = 0
346 346
347 347 groups = RepoGroup.query().order_by(RepoGroup.group_name)\
348 348 .filter(RepoGroup.group_parent_id == c.group.group_id).all()
349 349 c.groups = self.scm_model.get_repos_groups(groups)
350 350
351 351 if c.visual.lightweight_dashboard is False:
352 352 c.repos_list = self.scm_model.get_repos(all_repos=gr_filter)
353 353 ## lightweight version of dashboard
354 354 else:
355 355 c.repos_list = Repository.query()\
356 356 .filter(Repository.group_id == c.group.group_id)\
357 357 .order_by(func.lower(Repository.repo_name))\
358 358 .all()
359 359
360 360 repos_data = RepoModel().get_repos_as_dict(repos_list=c.repos_list,
361 361 admin=False)
362 362 #json used to render the grid
363 363 c.data = json.dumps(repos_data)
364 364
365 365 return render('admin/repos_groups/repos_groups.html')
366 366
367 367 @HasReposGroupPermissionAnyDecorator('group.admin')
368 368 def edit(self, group_name, format='html'):
369 369 """GET /repos_groups/group_name/edit: Form to edit an existing item"""
370 370 # url('edit_repos_group', group_name=GROUP_NAME)
371 371
372 372 c.repos_group = ReposGroupModel()._get_repos_group(group_name)
373 373 #we can only allow moving empty group if it's already a top-level
374 374 #group, ie has no parents, or we're admin
375 375 if HasPermissionAll('hg.admin')('group edit'):
376 376 #we're global admin, we're ok and we can create TOP level groups
377 377 allow_empty_group = True
378 378 elif not c.repos_group.parent_group:
379 379 allow_empty_group = True
380 380 else:
381 381 allow_empty_group = False
382 382
383 383 self.__load_defaults(allow_empty_group=allow_empty_group,
384 384 exclude_group_ids=[c.repos_group.group_id])
385 385 defaults = self.__load_data(c.repos_group.group_id)
386 386
387 387 return htmlfill.render(
388 388 render('admin/repos_groups/repos_groups_edit.html'),
389 389 defaults=defaults,
390 390 encoding="UTF-8",
391 391 force_defaults=False
392 392 )
@@ -1,557 +1,557 b''
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 rhodecode.controllers.admin.settings
4 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 5
6 6 settings controller for rhodecode admin
7 7
8 8 :created_on: Jul 14, 2010
9 9 :author: marcink
10 10 :copyright: (C) 2010-2012 Marcin Kuzminski <marcin@python-works.com>
11 11 :license: GPLv3, see COPYING for more details.
12 12 """
13 13 # This program is free software: you can redistribute it and/or modify
14 14 # it under the terms of the GNU General Public License as published by
15 15 # the Free Software Foundation, either version 3 of the License, or
16 16 # (at your option) any later version.
17 17 #
18 18 # This program is distributed in the hope that it will be useful,
19 19 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 21 # GNU General Public License for more details.
22 22 #
23 23 # You should have received a copy of the GNU General Public License
24 24 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25
26 26 import logging
27 27 import traceback
28 28 import formencode
29 29 import pkg_resources
30 30 import platform
31 31
32 32 from sqlalchemy import func
33 33 from formencode import htmlfill
34 34 from pylons import request, session, tmpl_context as c, url, config
35 35 from pylons.controllers.util import abort, redirect
36 36 from pylons.i18n.translation import _
37 37
38 38 from rhodecode.lib import helpers as h
39 39 from rhodecode.lib.auth import LoginRequired, HasPermissionAllDecorator, \
40 40 HasPermissionAnyDecorator, NotAnonymous, HasPermissionAny,\
41 41 HasReposGroupPermissionAll, HasReposGroupPermissionAny, AuthUser
42 42 from rhodecode.lib.base import BaseController, render
43 43 from rhodecode.lib.celerylib import tasks, run_task
44 44 from rhodecode.lib.utils import repo2db_mapper, invalidate_cache, \
45 45 set_rhodecode_config, repo_name_slug, check_git_version
46 46 from rhodecode.model.db import RhodeCodeUi, Repository, RepoGroup, \
47 47 RhodeCodeSetting, PullRequest, PullRequestReviewers
48 48 from rhodecode.model.forms import UserForm, ApplicationSettingsForm, \
49 49 ApplicationUiSettingsForm, ApplicationVisualisationForm
50 50 from rhodecode.model.scm import ScmModel, GroupList
51 51 from rhodecode.model.user import UserModel
52 52 from rhodecode.model.repo import RepoModel
53 53 from rhodecode.model.db import User
54 54 from rhodecode.model.notification import EmailNotificationModel
55 55 from rhodecode.model.meta import Session
56 56 from rhodecode.lib.utils2 import str2bool, safe_unicode
57 57 from rhodecode.lib.compat import json
58 58 from webob.exc import HTTPForbidden
59 59 log = logging.getLogger(__name__)
60 60
61 61
62 62 class SettingsController(BaseController):
63 63 """REST Controller styled on the Atom Publishing Protocol"""
64 64 # To properly map this controller, ensure your config/routing.py
65 65 # file has a resource setup:
66 66 # map.resource('setting', 'settings', controller='admin/settings',
67 67 # path_prefix='/admin', name_prefix='admin_')
68 68
69 69 @LoginRequired()
70 70 def __before__(self):
71 71 c.admin_user = session.get('admin_user')
72 72 c.admin_username = session.get('admin_username')
73 73 c.modules = sorted([(p.project_name, p.version)
74 74 for p in pkg_resources.working_set]
75 75 + [('git', check_git_version())],
76 76 key=lambda k: k[0].lower())
77 77 c.py_version = platform.python_version()
78 78 c.platform = platform.platform()
79 79 super(SettingsController, self).__before__()
80 80
81 81 @HasPermissionAllDecorator('hg.admin')
82 82 def index(self, format='html'):
83 83 """GET /admin/settings: All items in the collection"""
84 84 # url('admin_settings')
85 85
86 86 defaults = RhodeCodeSetting.get_app_settings()
87 87 defaults.update(self._get_hg_ui_settings())
88 88
89 89 return htmlfill.render(
90 90 render('admin/settings/settings.html'),
91 91 defaults=defaults,
92 92 encoding="UTF-8",
93 93 force_defaults=False
94 94 )
95 95
96 96 @HasPermissionAllDecorator('hg.admin')
97 97 def create(self):
98 98 """POST /admin/settings: Create a new item"""
99 99 # url('admin_settings')
100 100
101 101 @HasPermissionAllDecorator('hg.admin')
102 102 def new(self, format='html'):
103 103 """GET /admin/settings/new: Form to create a new item"""
104 104 # url('admin_new_setting')
105 105
106 106 @HasPermissionAllDecorator('hg.admin')
107 107 def update(self, setting_id):
108 108 """PUT /admin/settings/setting_id: Update an existing item"""
109 109 # Forms posted to this method should contain a hidden field:
110 110 # <input type="hidden" name="_method" value="PUT" />
111 111 # Or using helpers:
112 112 # h.form(url('admin_setting', setting_id=ID),
113 113 # method='put')
114 114 # url('admin_setting', setting_id=ID)
115 115
116 116 if setting_id == 'mapping':
117 117 rm_obsolete = request.POST.get('destroy', False)
118 118 log.debug('Rescanning directories with destroy=%s' % rm_obsolete)
119 119 initial = ScmModel().repo_scan()
120 120 log.debug('invalidating all repositories')
121 121 for repo_name in initial.keys():
122 122 invalidate_cache('get_repo_cached_%s' % repo_name)
123 123
124 124 added, removed = repo2db_mapper(initial, rm_obsolete)
125 125 _repr = lambda l: ', '.join(map(safe_unicode, l)) or '-'
126 126 h.flash(_('Repositories successfully '
127 127 'rescanned added: %s ; removed: %s') %
128 128 (_repr(added), _repr(removed)),
129 129 category='success')
130 130
131 131 if setting_id == 'whoosh':
132 132 repo_location = self._get_hg_ui_settings()['paths_root_path']
133 133 full_index = request.POST.get('full_index', False)
134 134 run_task(tasks.whoosh_index, repo_location, full_index)
135 135 h.flash(_('Whoosh reindex task scheduled'), category='success')
136 136
137 137 if setting_id == 'global':
138 138
139 139 application_form = ApplicationSettingsForm()()
140 140 try:
141 141 form_result = application_form.to_python(dict(request.POST))
142 142 except formencode.Invalid, errors:
143 143 return htmlfill.render(
144 144 render('admin/settings/settings.html'),
145 145 defaults=errors.value,
146 146 errors=errors.error_dict or {},
147 147 prefix_error=False,
148 148 encoding="UTF-8"
149 149 )
150 150
151 151 try:
152 152 sett1 = RhodeCodeSetting.get_by_name_or_create('title')
153 153 sett1.app_settings_value = form_result['rhodecode_title']
154 154 Session().add(sett1)
155 155
156 156 sett2 = RhodeCodeSetting.get_by_name_or_create('realm')
157 157 sett2.app_settings_value = form_result['rhodecode_realm']
158 158 Session().add(sett2)
159 159
160 160 sett3 = RhodeCodeSetting.get_by_name_or_create('ga_code')
161 161 sett3.app_settings_value = form_result['rhodecode_ga_code']
162 162 Session().add(sett3)
163 163
164 164 Session().commit()
165 165 set_rhodecode_config(config)
166 166 h.flash(_('Updated application settings'), category='success')
167 167
168 168 except Exception:
169 169 log.error(traceback.format_exc())
170 h.flash(_('error occurred during updating '
170 h.flash(_('Error occurred during updating '
171 171 'application settings'),
172 172 category='error')
173 173
174 174 if setting_id == 'visual':
175 175
176 176 application_form = ApplicationVisualisationForm()()
177 177 try:
178 178 form_result = application_form.to_python(dict(request.POST))
179 179 except formencode.Invalid, errors:
180 180 return htmlfill.render(
181 181 render('admin/settings/settings.html'),
182 182 defaults=errors.value,
183 183 errors=errors.error_dict or {},
184 184 prefix_error=False,
185 185 encoding="UTF-8"
186 186 )
187 187
188 188 try:
189 189 sett1 = RhodeCodeSetting.get_by_name_or_create('show_public_icon')
190 190 sett1.app_settings_value = \
191 191 form_result['rhodecode_show_public_icon']
192 192 Session().add(sett1)
193 193
194 194 sett2 = RhodeCodeSetting.get_by_name_or_create('show_private_icon')
195 195 sett2.app_settings_value = \
196 196 form_result['rhodecode_show_private_icon']
197 197 Session().add(sett2)
198 198
199 199 sett3 = RhodeCodeSetting.get_by_name_or_create('stylify_metatags')
200 200 sett3.app_settings_value = \
201 201 form_result['rhodecode_stylify_metatags']
202 202 Session().add(sett3)
203 203
204 204 sett4 = RhodeCodeSetting.get_by_name_or_create('lightweight_dashboard')
205 205 sett4.app_settings_value = \
206 206 form_result['rhodecode_lightweight_dashboard']
207 207 Session().add(sett4)
208 208
209 209 sett4 = RhodeCodeSetting.get_by_name_or_create('repository_fields')
210 210 sett4.app_settings_value = \
211 211 form_result['rhodecode_repository_fields']
212 212 Session().add(sett4)
213 213
214 214 Session().commit()
215 215 set_rhodecode_config(config)
216 216 h.flash(_('Updated visualisation settings'),
217 217 category='success')
218 218
219 219 except Exception:
220 220 log.error(traceback.format_exc())
221 h.flash(_('error occurred during updating '
221 h.flash(_('Error occurred during updating '
222 222 'visualisation settings'),
223 223 category='error')
224 224
225 225 if setting_id == 'vcs':
226 226 application_form = ApplicationUiSettingsForm()()
227 227 try:
228 228 form_result = application_form.to_python(dict(request.POST))
229 229 except formencode.Invalid, errors:
230 230 return htmlfill.render(
231 231 render('admin/settings/settings.html'),
232 232 defaults=errors.value,
233 233 errors=errors.error_dict or {},
234 234 prefix_error=False,
235 235 encoding="UTF-8"
236 236 )
237 237
238 238 try:
239 239 # fix namespaces for hooks and extensions
240 240 _f = lambda s: s.replace('.', '_')
241 241
242 242 sett = RhodeCodeUi.get_by_key('push_ssl')
243 243 sett.ui_value = form_result['web_push_ssl']
244 244 Session().add(sett)
245 245
246 246 sett = RhodeCodeUi.get_by_key('/')
247 247 sett.ui_value = form_result['paths_root_path']
248 248 Session().add(sett)
249 249
250 250 #HOOKS
251 251 sett = RhodeCodeUi.get_by_key(RhodeCodeUi.HOOK_UPDATE)
252 252 sett.ui_active = form_result[_f('hooks_%s' %
253 253 RhodeCodeUi.HOOK_UPDATE)]
254 254 Session().add(sett)
255 255
256 256 sett = RhodeCodeUi.get_by_key(RhodeCodeUi.HOOK_REPO_SIZE)
257 257 sett.ui_active = form_result[_f('hooks_%s' %
258 258 RhodeCodeUi.HOOK_REPO_SIZE)]
259 259 Session().add(sett)
260 260
261 261 sett = RhodeCodeUi.get_by_key(RhodeCodeUi.HOOK_PUSH)
262 262 sett.ui_active = form_result[_f('hooks_%s' %
263 263 RhodeCodeUi.HOOK_PUSH)]
264 264 Session().add(sett)
265 265
266 266 sett = RhodeCodeUi.get_by_key(RhodeCodeUi.HOOK_PULL)
267 267 sett.ui_active = form_result[_f('hooks_%s' %
268 268 RhodeCodeUi.HOOK_PULL)]
269 269
270 270 Session().add(sett)
271 271
272 272 ## EXTENSIONS
273 273 sett = RhodeCodeUi.get_by_key('largefiles')
274 274 if not sett:
275 275 #make one if it's not there !
276 276 sett = RhodeCodeUi()
277 277 sett.ui_key = 'largefiles'
278 278 sett.ui_section = 'extensions'
279 279 sett.ui_active = form_result[_f('extensions_largefiles')]
280 280 Session().add(sett)
281 281
282 282 sett = RhodeCodeUi.get_by_key('hgsubversion')
283 283 if not sett:
284 284 #make one if it's not there !
285 285 sett = RhodeCodeUi()
286 286 sett.ui_key = 'hgsubversion'
287 287 sett.ui_section = 'extensions'
288 288
289 289 sett.ui_active = form_result[_f('extensions_hgsubversion')]
290 290 Session().add(sett)
291 291
292 292 # sett = RhodeCodeUi.get_by_key('hggit')
293 293 # if not sett:
294 294 # #make one if it's not there !
295 295 # sett = RhodeCodeUi()
296 296 # sett.ui_key = 'hggit'
297 297 # sett.ui_section = 'extensions'
298 298 #
299 299 # sett.ui_active = form_result[_f('extensions_hggit')]
300 300 # Session().add(sett)
301 301
302 302 Session().commit()
303 303
304 304 h.flash(_('Updated VCS settings'), category='success')
305 305
306 306 except Exception:
307 307 log.error(traceback.format_exc())
308 h.flash(_('error occurred during updating '
308 h.flash(_('Error occurred during updating '
309 309 'application settings'), category='error')
310 310
311 311 if setting_id == 'hooks':
312 312 ui_key = request.POST.get('new_hook_ui_key')
313 313 ui_value = request.POST.get('new_hook_ui_value')
314 314 try:
315 315
316 316 if ui_value and ui_key:
317 317 RhodeCodeUi.create_or_update_hook(ui_key, ui_value)
318 318 h.flash(_('Added new hook'),
319 319 category='success')
320 320
321 321 # check for edits
322 322 update = False
323 323 _d = request.POST.dict_of_lists()
324 324 for k, v in zip(_d.get('hook_ui_key', []),
325 325 _d.get('hook_ui_value_new', [])):
326 326 RhodeCodeUi.create_or_update_hook(k, v)
327 327 update = True
328 328
329 329 if update:
330 330 h.flash(_('Updated hooks'), category='success')
331 331 Session().commit()
332 332 except Exception:
333 333 log.error(traceback.format_exc())
334 h.flash(_('error occurred during hook creation'),
334 h.flash(_('Error occurred during hook creation'),
335 335 category='error')
336 336
337 337 return redirect(url('admin_edit_setting', setting_id='hooks'))
338 338
339 339 if setting_id == 'email':
340 340 test_email = request.POST.get('test_email')
341 341 test_email_subj = 'RhodeCode TestEmail'
342 342 test_email_body = 'RhodeCode Email test'
343 343
344 344 test_email_html_body = EmailNotificationModel()\
345 345 .get_email_tmpl(EmailNotificationModel.TYPE_DEFAULT,
346 346 body=test_email_body)
347 347
348 348 recipients = [test_email] if test_email else None
349 349
350 350 run_task(tasks.send_email, recipients, test_email_subj,
351 351 test_email_body, test_email_html_body)
352 352
353 353 h.flash(_('Email task created'), category='success')
354 354 return redirect(url('admin_settings'))
355 355
356 356 @HasPermissionAllDecorator('hg.admin')
357 357 def delete(self, setting_id):
358 358 """DELETE /admin/settings/setting_id: Delete an existing item"""
359 359 # Forms posted to this method should contain a hidden field:
360 360 # <input type="hidden" name="_method" value="DELETE" />
361 361 # Or using helpers:
362 362 # h.form(url('admin_setting', setting_id=ID),
363 363 # method='delete')
364 364 # url('admin_setting', setting_id=ID)
365 365 if setting_id == 'hooks':
366 366 hook_id = request.POST.get('hook_id')
367 367 RhodeCodeUi.delete(hook_id)
368 368 Session().commit()
369 369
370 370 @HasPermissionAllDecorator('hg.admin')
371 371 def show(self, setting_id, format='html'):
372 372 """
373 373 GET /admin/settings/setting_id: Show a specific item"""
374 374 # url('admin_setting', setting_id=ID)
375 375
376 376 @HasPermissionAllDecorator('hg.admin')
377 377 def edit(self, setting_id, format='html'):
378 378 """
379 379 GET /admin/settings/setting_id/edit: Form to
380 380 edit an existing item"""
381 381 # url('admin_edit_setting', setting_id=ID)
382 382
383 383 c.hooks = RhodeCodeUi.get_builtin_hooks()
384 384 c.custom_hooks = RhodeCodeUi.get_custom_hooks()
385 385
386 386 return htmlfill.render(
387 387 render('admin/settings/hooks.html'),
388 388 defaults={},
389 389 encoding="UTF-8",
390 390 force_defaults=False
391 391 )
392 392
393 393 def _load_my_repos_data(self):
394 394 repos_list = Session().query(Repository)\
395 395 .filter(Repository.user_id ==
396 396 self.rhodecode_user.user_id)\
397 397 .order_by(func.lower(Repository.repo_name)).all()
398 398
399 399 repos_data = RepoModel().get_repos_as_dict(repos_list=repos_list,
400 400 admin=True)
401 401 #json used to render the grid
402 402 return json.dumps(repos_data)
403 403
404 404 @NotAnonymous()
405 405 def my_account(self):
406 406 """
407 407 GET /_admin/my_account Displays info about my account
408 408 """
409 409 # url('admin_settings_my_account')
410 410
411 411 c.user = User.get(self.rhodecode_user.user_id)
412 412 c.perm_user = AuthUser(user_id=self.rhodecode_user.user_id,
413 413 ip_addr=self.ip_addr)
414 414 c.ldap_dn = c.user.ldap_dn
415 415
416 416 if c.user.username == 'default':
417 417 h.flash(_("You can't edit this user since it's"
418 418 " crucial for entire application"), category='warning')
419 419 return redirect(url('users'))
420 420
421 421 #json used to render the grid
422 422 c.data = self._load_my_repos_data()
423 423
424 424 defaults = c.user.get_dict()
425 425
426 426 c.form = htmlfill.render(
427 427 render('admin/users/user_edit_my_account_form.html'),
428 428 defaults=defaults,
429 429 encoding="UTF-8",
430 430 force_defaults=False
431 431 )
432 432 return render('admin/users/user_edit_my_account.html')
433 433
434 434 @NotAnonymous()
435 435 def my_account_update(self):
436 436 """PUT /_admin/my_account_update: Update an existing item"""
437 437 # Forms posted to this method should contain a hidden field:
438 438 # <input type="hidden" name="_method" value="PUT" />
439 439 # Or using helpers:
440 440 # h.form(url('admin_settings_my_account_update'),
441 441 # method='put')
442 442 # url('admin_settings_my_account_update', id=ID)
443 443 uid = self.rhodecode_user.user_id
444 444 c.user = User.get(self.rhodecode_user.user_id)
445 445 c.perm_user = AuthUser(user_id=self.rhodecode_user.user_id,
446 446 ip_addr=self.ip_addr)
447 447 c.ldap_dn = c.user.ldap_dn
448 448 email = self.rhodecode_user.email
449 449 _form = UserForm(edit=True,
450 450 old_data={'user_id': uid, 'email': email})()
451 451 form_result = {}
452 452 try:
453 453 form_result = _form.to_python(dict(request.POST))
454 454 skip_attrs = ['admin', 'active'] # skip attr for my account
455 455 if c.ldap_dn:
456 456 #forbid updating username for ldap accounts
457 457 skip_attrs.append('username')
458 458 UserModel().update(uid, form_result, skip_attrs=skip_attrs)
459 459 h.flash(_('Your account was updated successfully'),
460 460 category='success')
461 461 Session().commit()
462 462 except formencode.Invalid, errors:
463 463 #json used to render the grid
464 464 c.data = self._load_my_repos_data()
465 465 c.form = htmlfill.render(
466 466 render('admin/users/user_edit_my_account_form.html'),
467 467 defaults=errors.value,
468 468 errors=errors.error_dict or {},
469 469 prefix_error=False,
470 470 encoding="UTF-8")
471 471 return render('admin/users/user_edit_my_account.html')
472 472 except Exception:
473 473 log.error(traceback.format_exc())
474 h.flash(_('error occurred during update of user %s') \
474 h.flash(_('Error occurred during update of user %s') \
475 475 % form_result.get('username'), category='error')
476 476
477 477 return redirect(url('my_account'))
478 478
479 479 @NotAnonymous()
480 480 def my_account_my_pullrequests(self):
481 481 c.show_closed = request.GET.get('pr_show_closed')
482 482
483 483 def _filter(pr):
484 484 s = sorted(pr, key=lambda o: o.created_on, reverse=True)
485 485 if not c.show_closed:
486 486 s = filter(lambda p: p.status != PullRequest.STATUS_CLOSED, s)
487 487 return s
488 488
489 489 c.my_pull_requests = _filter(PullRequest.query()\
490 490 .filter(PullRequest.user_id ==
491 491 self.rhodecode_user.user_id)\
492 492 .all())
493 493
494 494 c.participate_in_pull_requests = _filter([
495 495 x.pull_request for x in PullRequestReviewers.query()\
496 496 .filter(PullRequestReviewers.user_id ==
497 497 self.rhodecode_user.user_id).all()])
498 498
499 499 return render('admin/users/user_edit_my_account_pullrequests.html')
500 500
501 501 @NotAnonymous()
502 502 def create_repository(self):
503 503 """GET /_admin/create_repository: Form to create a new item"""
504 504 new_repo = request.GET.get('repo', '')
505 505 parent_group = request.GET.get('parent_group')
506 506 if not HasPermissionAny('hg.admin', 'hg.create.repository')():
507 507 #you're not super admin nor have global create permissions,
508 508 #but maybe you have at least write permission to a parent group ?
509 509 _gr = RepoGroup.get(parent_group)
510 510 gr_name = _gr.group_name if _gr else None
511 511 if not HasReposGroupPermissionAny('group.admin', 'group.write')(group_name=gr_name):
512 512 raise HTTPForbidden
513 513
514 514 acl_groups = GroupList(RepoGroup.query().all(),
515 515 perm_set=['group.write', 'group.admin'])
516 516 c.repo_groups = RepoGroup.groups_choices(groups=acl_groups)
517 517 c.repo_groups_choices = map(lambda k: unicode(k[0]), c.repo_groups)
518 518 choices, c.landing_revs = ScmModel().get_repo_landing_revs()
519 519
520 520 c.new_repo = repo_name_slug(new_repo)
521 521
522 522 ## apply the defaults from defaults page
523 523 defaults = RhodeCodeSetting.get_default_repo_settings(strip_prefix=True)
524 524 if parent_group:
525 525 defaults.update({'repo_group': parent_group})
526 526
527 527 return htmlfill.render(
528 528 render('admin/repos/repo_add.html'),
529 529 defaults=defaults,
530 530 errors={},
531 531 prefix_error=False,
532 532 encoding="UTF-8"
533 533 )
534 534
535 535 def _get_hg_ui_settings(self):
536 536 ret = RhodeCodeUi.query().all()
537 537
538 538 if not ret:
539 539 raise Exception('Could not get application ui settings !')
540 540 settings = {}
541 541 for each in ret:
542 542 k = each.ui_key
543 543 v = each.ui_value
544 544 if k == '/':
545 545 k = 'root_path'
546 546
547 547 if k == 'push_ssl':
548 548 v = str2bool(v)
549 549
550 550 if k.find('.') != -1:
551 551 k = k.replace('.', '_')
552 552
553 553 if each.ui_section in ['hooks', 'extensions']:
554 554 v = each.ui_active
555 555
556 556 settings[each.ui_section + '_' + k] = v
557 557 return settings
@@ -1,362 +1,362 b''
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 rhodecode.controllers.admin.users
4 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 5
6 6 Users crud controller for pylons
7 7
8 8 :created_on: Apr 4, 2010
9 9 :author: marcink
10 10 :copyright: (C) 2010-2012 Marcin Kuzminski <marcin@python-works.com>
11 11 :license: GPLv3, see COPYING for more details.
12 12 """
13 13 # This program is free software: you can redistribute it and/or modify
14 14 # it under the terms of the GNU General Public License as published by
15 15 # the Free Software Foundation, either version 3 of the License, or
16 16 # (at your option) any later version.
17 17 #
18 18 # This program is distributed in the hope that it will be useful,
19 19 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 21 # GNU General Public License for more details.
22 22 #
23 23 # You should have received a copy of the GNU General Public License
24 24 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25
26 26 import logging
27 27 import traceback
28 28 import formencode
29 29 from pylons import response
30 30
31 31 from formencode import htmlfill
32 32 from pylons import request, session, tmpl_context as c, url, config
33 33 from pylons.controllers.util import redirect
34 34 from pylons.i18n.translation import _
35 35
36 36 import rhodecode
37 37 from rhodecode.lib.exceptions import DefaultUserException, \
38 38 UserOwnsReposException
39 39 from rhodecode.lib import helpers as h
40 40 from rhodecode.lib.auth import LoginRequired, HasPermissionAllDecorator, \
41 41 AuthUser
42 42 from rhodecode.lib.base import BaseController, render
43 43
44 44 from rhodecode.model.db import User, UserEmailMap, UserIpMap
45 45 from rhodecode.model.forms import UserForm
46 46 from rhodecode.model.user import UserModel
47 47 from rhodecode.model.meta import Session
48 48 from rhodecode.lib.utils import action_logger
49 49 from rhodecode.lib.compat import json
50 50 from rhodecode.lib.utils2 import datetime_to_time, str2bool
51 51
52 52 log = logging.getLogger(__name__)
53 53
54 54
55 55 class UsersController(BaseController):
56 56 """REST Controller styled on the Atom Publishing Protocol"""
57 57 # To properly map this controller, ensure your config/routing.py
58 58 # file has a resource setup:
59 59 # map.resource('user', 'users')
60 60
61 61 @LoginRequired()
62 62 @HasPermissionAllDecorator('hg.admin')
63 63 def __before__(self):
64 64 c.admin_user = session.get('admin_user')
65 65 c.admin_username = session.get('admin_username')
66 66 super(UsersController, self).__before__()
67 67 c.available_permissions = config['available_permissions']
68 68
69 69 def index(self, format='html'):
70 70 """GET /users: All items in the collection"""
71 71 # url('users')
72 72
73 73 c.users_list = User.query().order_by(User.username).all()
74 74
75 75 users_data = []
76 76 total_records = len(c.users_list)
77 77 _tmpl_lookup = rhodecode.CONFIG['pylons.app_globals'].mako_lookup
78 78 template = _tmpl_lookup.get_template('data_table/_dt_elements.html')
79 79
80 80 grav_tmpl = lambda user_email, size: (
81 81 template.get_def("user_gravatar")
82 82 .render(user_email, size, _=_, h=h, c=c))
83 83
84 84 user_lnk = lambda user_id, username: (
85 85 template.get_def("user_name")
86 86 .render(user_id, username, _=_, h=h, c=c))
87 87
88 88 user_actions = lambda user_id, username: (
89 89 template.get_def("user_actions")
90 90 .render(user_id, username, _=_, h=h, c=c))
91 91
92 92 for user in c.users_list:
93 93
94 94 users_data.append({
95 95 "gravatar": grav_tmpl(user. email, 24),
96 96 "raw_username": user.username,
97 97 "username": user_lnk(user.user_id, user.username),
98 98 "firstname": user.name,
99 99 "lastname": user.lastname,
100 100 "last_login": h.fmt_date(user.last_login),
101 101 "last_login_raw": datetime_to_time(user.last_login),
102 102 "active": h.bool2icon(user.active),
103 103 "admin": h.bool2icon(user.admin),
104 104 "ldap": h.bool2icon(bool(user.ldap_dn)),
105 105 "action": user_actions(user.user_id, user.username),
106 106 })
107 107
108 108 c.data = json.dumps({
109 109 "totalRecords": total_records,
110 110 "startIndex": 0,
111 111 "sort": None,
112 112 "dir": "asc",
113 113 "records": users_data
114 114 })
115 115
116 116 return render('admin/users/users.html')
117 117
118 118 def create(self):
119 119 """POST /users: Create a new item"""
120 120 # url('users')
121 121
122 122 user_model = UserModel()
123 123 user_form = UserForm()()
124 124 try:
125 125 form_result = user_form.to_python(dict(request.POST))
126 126 user_model.create(form_result)
127 127 usr = form_result['username']
128 128 action_logger(self.rhodecode_user, 'admin_created_user:%s' % usr,
129 129 None, self.ip_addr, self.sa)
130 h.flash(_('created user %s') % usr,
130 h.flash(_('Created user %s') % usr,
131 131 category='success')
132 132 Session().commit()
133 133 except formencode.Invalid, errors:
134 134 return htmlfill.render(
135 135 render('admin/users/user_add.html'),
136 136 defaults=errors.value,
137 137 errors=errors.error_dict or {},
138 138 prefix_error=False,
139 139 encoding="UTF-8")
140 140 except Exception:
141 141 log.error(traceback.format_exc())
142 h.flash(_('error occurred during creation of user %s') \
142 h.flash(_('Error occurred during creation of user %s') \
143 143 % request.POST.get('username'), category='error')
144 144 return redirect(url('users'))
145 145
146 146 def new(self, format='html'):
147 147 """GET /users/new: Form to create a new item"""
148 148 # url('new_user')
149 149 return render('admin/users/user_add.html')
150 150
151 151 def update(self, id):
152 152 """PUT /users/id: Update an existing item"""
153 153 # Forms posted to this method should contain a hidden field:
154 154 # <input type="hidden" name="_method" value="PUT" />
155 155 # Or using helpers:
156 156 # h.form(url('update_user', id=ID),
157 157 # method='put')
158 158 # url('user', id=ID)
159 159 user_model = UserModel()
160 160 c.user = user_model.get(id)
161 161 c.ldap_dn = c.user.ldap_dn
162 162 c.perm_user = AuthUser(user_id=id, ip_addr=self.ip_addr)
163 163 _form = UserForm(edit=True, old_data={'user_id': id,
164 164 'email': c.user.email})()
165 165 form_result = {}
166 166 try:
167 167 form_result = _form.to_python(dict(request.POST))
168 168 skip_attrs = []
169 169 if c.ldap_dn:
170 170 #forbid updating username for ldap accounts
171 171 skip_attrs = ['username']
172 172 user_model.update(id, form_result, skip_attrs=skip_attrs)
173 173 usr = form_result['username']
174 174 action_logger(self.rhodecode_user, 'admin_updated_user:%s' % usr,
175 175 None, self.ip_addr, self.sa)
176 176 h.flash(_('User updated successfully'), category='success')
177 177 Session().commit()
178 178 except formencode.Invalid, errors:
179 179 c.user_email_map = UserEmailMap.query()\
180 180 .filter(UserEmailMap.user == c.user).all()
181 181 c.user_ip_map = UserIpMap.query()\
182 182 .filter(UserIpMap.user == c.user).all()
183 183 defaults = errors.value
184 184 e = errors.error_dict or {}
185 185 defaults.update({
186 186 'create_repo_perm': user_model.has_perm(id, 'hg.create.repository'),
187 187 'fork_repo_perm': user_model.has_perm(id, 'hg.fork.repository'),
188 188 '_method': 'put'
189 189 })
190 190 return htmlfill.render(
191 191 render('admin/users/user_edit.html'),
192 192 defaults=defaults,
193 193 errors=e,
194 194 prefix_error=False,
195 195 encoding="UTF-8")
196 196 except Exception:
197 197 log.error(traceback.format_exc())
198 h.flash(_('error occurred during update of user %s') \
198 h.flash(_('Error occurred during update of user %s') \
199 199 % form_result.get('username'), category='error')
200 200 return redirect(url('edit_user', id=id))
201 201
202 202 def delete(self, id):
203 203 """DELETE /users/id: Delete an existing item"""
204 204 # Forms posted to this method should contain a hidden field:
205 205 # <input type="hidden" name="_method" value="DELETE" />
206 206 # Or using helpers:
207 207 # h.form(url('delete_user', id=ID),
208 208 # method='delete')
209 209 # url('user', id=ID)
210 210 usr = User.get_or_404(id)
211 211 try:
212 212 UserModel().delete(usr)
213 213 Session().commit()
214 h.flash(_('successfully deleted user'), category='success')
214 h.flash(_('Successfully deleted user'), category='success')
215 215 except (UserOwnsReposException, DefaultUserException), e:
216 216 h.flash(e, category='warning')
217 217 except Exception:
218 218 log.error(traceback.format_exc())
219 219 h.flash(_('An error occurred during deletion of user'),
220 220 category='error')
221 221 return redirect(url('users'))
222 222
223 223 def show(self, id, format='html'):
224 224 """GET /users/id: Show a specific item"""
225 225 # url('user', id=ID)
226 226
227 227 def edit(self, id, format='html'):
228 228 """GET /users/id/edit: Form to edit an existing item"""
229 229 # url('edit_user', id=ID)
230 230 c.user = User.get_or_404(id)
231 231
232 232 if c.user.username == 'default':
233 233 h.flash(_("You can't edit this user"), category='warning')
234 234 return redirect(url('users'))
235 235
236 236 c.perm_user = AuthUser(user_id=id, ip_addr=self.ip_addr)
237 237 c.user.permissions = {}
238 238 c.granted_permissions = UserModel().fill_perms(c.user)\
239 239 .permissions['global']
240 240 c.user_email_map = UserEmailMap.query()\
241 241 .filter(UserEmailMap.user == c.user).all()
242 242 c.user_ip_map = UserIpMap.query()\
243 243 .filter(UserIpMap.user == c.user).all()
244 244 user_model = UserModel()
245 245 c.ldap_dn = c.user.ldap_dn
246 246 defaults = c.user.get_dict()
247 247 defaults.update({
248 248 'create_repo_perm': user_model.has_perm(id, 'hg.create.repository'),
249 249 'fork_repo_perm': user_model.has_perm(id, 'hg.fork.repository'),
250 250 })
251 251
252 252 return htmlfill.render(
253 253 render('admin/users/user_edit.html'),
254 254 defaults=defaults,
255 255 encoding="UTF-8",
256 256 force_defaults=False
257 257 )
258 258
259 259 def update_perm(self, id):
260 260 """PUT /users_perm/id: Update an existing item"""
261 261 # url('user_perm', id=ID, method='put')
262 262 usr = User.get_or_404(id)
263 263 grant_create_perm = str2bool(request.POST.get('create_repo_perm'))
264 264 grant_fork_perm = str2bool(request.POST.get('fork_repo_perm'))
265 265 inherit_perms = str2bool(request.POST.get('inherit_default_permissions'))
266 266
267 267 user_model = UserModel()
268 268
269 269 try:
270 270 usr.inherit_default_permissions = inherit_perms
271 271 Session().add(usr)
272 272
273 273 if grant_create_perm:
274 274 user_model.revoke_perm(usr, 'hg.create.none')
275 275 user_model.grant_perm(usr, 'hg.create.repository')
276 276 h.flash(_("Granted 'repository create' permission to user"),
277 277 category='success')
278 278 else:
279 279 user_model.revoke_perm(usr, 'hg.create.repository')
280 280 user_model.grant_perm(usr, 'hg.create.none')
281 281 h.flash(_("Revoked 'repository create' permission to user"),
282 282 category='success')
283 283
284 284 if grant_fork_perm:
285 285 user_model.revoke_perm(usr, 'hg.fork.none')
286 286 user_model.grant_perm(usr, 'hg.fork.repository')
287 287 h.flash(_("Granted 'repository fork' permission to user"),
288 288 category='success')
289 289 else:
290 290 user_model.revoke_perm(usr, 'hg.fork.repository')
291 291 user_model.grant_perm(usr, 'hg.fork.none')
292 292 h.flash(_("Revoked 'repository fork' permission to user"),
293 293 category='success')
294 294
295 295 Session().commit()
296 296 except Exception:
297 297 log.error(traceback.format_exc())
298 298 h.flash(_('An error occurred during permissions saving'),
299 299 category='error')
300 300 return redirect(url('edit_user', id=id))
301 301
302 302 def add_email(self, id):
303 303 """POST /user_emails:Add an existing item"""
304 304 # url('user_emails', id=ID, method='put')
305 305
306 306 email = request.POST.get('new_email')
307 307 user_model = UserModel()
308 308
309 309 try:
310 310 user_model.add_extra_email(id, email)
311 311 Session().commit()
312 312 h.flash(_("Added email %s to user") % email, category='success')
313 313 except formencode.Invalid, error:
314 314 msg = error.error_dict['email']
315 315 h.flash(msg, category='error')
316 316 except Exception:
317 317 log.error(traceback.format_exc())
318 318 h.flash(_('An error occurred during email saving'),
319 319 category='error')
320 320 return redirect(url('edit_user', id=id))
321 321
322 322 def delete_email(self, id):
323 323 """DELETE /user_emails_delete/id: Delete an existing item"""
324 324 # url('user_emails_delete', id=ID, method='delete')
325 325 user_model = UserModel()
326 326 user_model.delete_extra_email(id, request.POST.get('del_email'))
327 327 Session().commit()
328 328 h.flash(_("Removed email from user"), category='success')
329 329 return redirect(url('edit_user', id=id))
330 330
331 331 def add_ip(self, id):
332 332 """POST /user_ips:Add an existing item"""
333 333 # url('user_ips', id=ID, method='put')
334 334
335 335 ip = request.POST.get('new_ip')
336 336 user_model = UserModel()
337 337
338 338 try:
339 339 user_model.add_extra_ip(id, ip)
340 340 Session().commit()
341 341 h.flash(_("Added ip %s to user") % ip, category='success')
342 342 except formencode.Invalid, error:
343 343 msg = error.error_dict['ip']
344 344 h.flash(msg, category='error')
345 345 except Exception:
346 346 log.error(traceback.format_exc())
347 347 h.flash(_('An error occurred during ip saving'),
348 348 category='error')
349 349 if 'default_user' in request.POST:
350 350 return redirect(url('edit_permission', id='default'))
351 351 return redirect(url('edit_user', id=id))
352 352
353 353 def delete_ip(self, id):
354 354 """DELETE /user_ips_delete/id: Delete an existing item"""
355 355 # url('user_ips_delete', id=ID, method='delete')
356 356 user_model = UserModel()
357 357 user_model.delete_extra_ip(id, request.POST.get('del_ip'))
358 358 Session().commit()
359 359 h.flash(_("Removed ip from user"), category='success')
360 360 if 'default_user' in request.POST:
361 361 return redirect(url('edit_permission', id='default'))
362 362 return redirect(url('edit_user', id=id))
@@ -1,282 +1,282 b''
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 rhodecode.controllers.admin.users_groups
4 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 5
6 6 User Groups crud controller for pylons
7 7
8 8 :created_on: Jan 25, 2011
9 9 :author: marcink
10 10 :copyright: (C) 2010-2012 Marcin Kuzminski <marcin@python-works.com>
11 11 :license: GPLv3, see COPYING for more details.
12 12 """
13 13 # This program is free software: you can redistribute it and/or modify
14 14 # it under the terms of the GNU General Public License as published by
15 15 # the Free Software Foundation, either version 3 of the License, or
16 16 # (at your option) any later version.
17 17 #
18 18 # This program is distributed in the hope that it will be useful,
19 19 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 21 # GNU General Public License for more details.
22 22 #
23 23 # You should have received a copy of the GNU General Public License
24 24 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25
26 26 import logging
27 27 import traceback
28 28 import formencode
29 29
30 30 from formencode import htmlfill
31 31 from pylons import request, session, tmpl_context as c, url, config
32 32 from pylons.controllers.util import abort, redirect
33 33 from pylons.i18n.translation import _
34 34
35 35 from rhodecode.lib import helpers as h
36 36 from rhodecode.lib.exceptions import UserGroupsAssignedException
37 37 from rhodecode.lib.utils2 import safe_unicode, str2bool
38 38 from rhodecode.lib.auth import LoginRequired, HasPermissionAllDecorator
39 39 from rhodecode.lib.base import BaseController, render
40 40
41 41 from rhodecode.model.users_group import UserGroupModel
42 42
43 43 from rhodecode.model.db import User, UserGroup, UserGroupToPerm,\
44 44 UserGroupRepoToPerm, UserGroupRepoGroupToPerm
45 45 from rhodecode.model.forms import UserGroupForm
46 46 from rhodecode.model.meta import Session
47 47 from rhodecode.lib.utils import action_logger
48 48 from sqlalchemy.orm import joinedload
49 49
50 50 log = logging.getLogger(__name__)
51 51
52 52
53 53 class UsersGroupsController(BaseController):
54 54 """REST Controller styled on the Atom Publishing Protocol"""
55 55 # To properly map this controller, ensure your config/routing.py
56 56 # file has a resource setup:
57 57 # map.resource('users_group', 'users_groups')
58 58
59 59 @LoginRequired()
60 60 @HasPermissionAllDecorator('hg.admin')
61 61 def __before__(self):
62 62 c.admin_user = session.get('admin_user')
63 63 c.admin_username = session.get('admin_username')
64 64 super(UsersGroupsController, self).__before__()
65 65 c.available_permissions = config['available_permissions']
66 66
67 67 def index(self, format='html'):
68 68 """GET /users_groups: All items in the collection"""
69 69 # url('users_groups')
70 70 c.users_groups_list = UserGroup().query().all()
71 71 return render('admin/users_groups/users_groups.html')
72 72
73 73 def create(self):
74 74 """POST /users_groups: Create a new item"""
75 75 # url('users_groups')
76 76
77 77 users_group_form = UserGroupForm()()
78 78 try:
79 79 form_result = users_group_form.to_python(dict(request.POST))
80 80 UserGroupModel().create(name=form_result['users_group_name'],
81 81 active=form_result['users_group_active'])
82 82 gr = form_result['users_group_name']
83 83 action_logger(self.rhodecode_user,
84 84 'admin_created_users_group:%s' % gr,
85 85 None, self.ip_addr, self.sa)
86 h.flash(_('created user group %s') % gr, category='success')
86 h.flash(_('Created user group %s') % gr, category='success')
87 87 Session().commit()
88 88 except formencode.Invalid, errors:
89 89 return htmlfill.render(
90 90 render('admin/users_groups/users_group_add.html'),
91 91 defaults=errors.value,
92 92 errors=errors.error_dict or {},
93 93 prefix_error=False,
94 94 encoding="UTF-8")
95 95 except Exception:
96 96 log.error(traceback.format_exc())
97 h.flash(_('error occurred during creation of user group %s') \
97 h.flash(_('Error occurred during creation of user group %s') \
98 98 % request.POST.get('users_group_name'), category='error')
99 99
100 100 return redirect(url('users_groups'))
101 101
102 102 def new(self, format='html'):
103 103 """GET /users_groups/new: Form to create a new item"""
104 104 # url('new_users_group')
105 105 return render('admin/users_groups/users_group_add.html')
106 106
107 107 def _load_data(self, id):
108 108 c.users_group.permissions = {
109 109 'repositories': {},
110 110 'repositories_groups': {}
111 111 }
112 112
113 113 ugroup_repo_perms = UserGroupRepoToPerm.query()\
114 114 .options(joinedload(UserGroupRepoToPerm.permission))\
115 115 .options(joinedload(UserGroupRepoToPerm.repository))\
116 116 .filter(UserGroupRepoToPerm.users_group_id == id)\
117 117 .all()
118 118
119 119 for gr in ugroup_repo_perms:
120 120 c.users_group.permissions['repositories'][gr.repository.repo_name] \
121 121 = gr.permission.permission_name
122 122
123 123 ugroup_group_perms = UserGroupRepoGroupToPerm.query()\
124 124 .options(joinedload(UserGroupRepoGroupToPerm.permission))\
125 125 .options(joinedload(UserGroupRepoGroupToPerm.group))\
126 126 .filter(UserGroupRepoGroupToPerm.users_group_id == id)\
127 127 .all()
128 128
129 129 for gr in ugroup_group_perms:
130 130 c.users_group.permissions['repositories_groups'][gr.group.group_name] \
131 131 = gr.permission.permission_name
132 132
133 133 c.group_members_obj = [x.user for x in c.users_group.members]
134 134 c.group_members = [(x.user_id, x.username) for x in
135 135 c.group_members_obj]
136 136 c.available_members = [(x.user_id, x.username) for x in
137 137 User.query().all()]
138 138
139 139 def update(self, id):
140 140 """PUT /users_groups/id: Update an existing item"""
141 141 # Forms posted to this method should contain a hidden field:
142 142 # <input type="hidden" name="_method" value="PUT" />
143 143 # Or using helpers:
144 144 # h.form(url('users_group', id=ID),
145 145 # method='put')
146 146 # url('users_group', id=ID)
147 147
148 148 c.users_group = UserGroup.get_or_404(id)
149 149 self._load_data(id)
150 150
151 151 available_members = [safe_unicode(x[0]) for x in c.available_members]
152 152
153 153 users_group_form = UserGroupForm(edit=True,
154 154 old_data=c.users_group.get_dict(),
155 155 available_members=available_members)()
156 156
157 157 try:
158 158 form_result = users_group_form.to_python(request.POST)
159 159 UserGroupModel().update(c.users_group, form_result)
160 160 gr = form_result['users_group_name']
161 161 action_logger(self.rhodecode_user,
162 162 'admin_updated_users_group:%s' % gr,
163 163 None, self.ip_addr, self.sa)
164 h.flash(_('updated user group %s') % gr, category='success')
164 h.flash(_('Updated user group %s') % gr, category='success')
165 165 Session().commit()
166 166 except formencode.Invalid, errors:
167 167 ug_model = UserGroupModel()
168 168 defaults = errors.value
169 169 e = errors.error_dict or {}
170 170 defaults.update({
171 171 'create_repo_perm': ug_model.has_perm(id,
172 172 'hg.create.repository'),
173 173 'fork_repo_perm': ug_model.has_perm(id,
174 174 'hg.fork.repository'),
175 175 '_method': 'put'
176 176 })
177 177
178 178 return htmlfill.render(
179 179 render('admin/users_groups/users_group_edit.html'),
180 180 defaults=defaults,
181 181 errors=e,
182 182 prefix_error=False,
183 183 encoding="UTF-8")
184 184 except Exception:
185 185 log.error(traceback.format_exc())
186 h.flash(_('error occurred during update of user group %s') \
186 h.flash(_('Error occurred during update of user group %s') \
187 187 % request.POST.get('users_group_name'), category='error')
188 188
189 189 return redirect(url('edit_users_group', id=id))
190 190
191 191 def delete(self, id):
192 192 """DELETE /users_groups/id: Delete an existing item"""
193 193 # Forms posted to this method should contain a hidden field:
194 194 # <input type="hidden" name="_method" value="DELETE" />
195 195 # Or using helpers:
196 196 # h.form(url('users_group', id=ID),
197 197 # method='delete')
198 198 # url('users_group', id=ID)
199 199 usr_gr = UserGroup.get_or_404(id)
200 200 try:
201 201 UserGroupModel().delete(usr_gr)
202 202 Session().commit()
203 h.flash(_('successfully deleted user group'), category='success')
203 h.flash(_('Successfully deleted user group'), category='success')
204 204 except UserGroupsAssignedException, e:
205 205 h.flash(e, category='error')
206 206 except Exception:
207 207 log.error(traceback.format_exc())
208 208 h.flash(_('An error occurred during deletion of user group'),
209 209 category='error')
210 210 return redirect(url('users_groups'))
211 211
212 212 def show(self, id, format='html'):
213 213 """GET /users_groups/id: Show a specific item"""
214 214 # url('users_group', id=ID)
215 215
216 216 def edit(self, id, format='html'):
217 217 """GET /users_groups/id/edit: Form to edit an existing item"""
218 218 # url('edit_users_group', id=ID)
219 219
220 220 c.users_group = UserGroup.get_or_404(id)
221 221 self._load_data(id)
222 222
223 223 ug_model = UserGroupModel()
224 224 defaults = c.users_group.get_dict()
225 225 defaults.update({
226 226 'create_repo_perm': ug_model.has_perm(c.users_group,
227 227 'hg.create.repository'),
228 228 'fork_repo_perm': ug_model.has_perm(c.users_group,
229 229 'hg.fork.repository'),
230 230 })
231 231
232 232 return htmlfill.render(
233 233 render('admin/users_groups/users_group_edit.html'),
234 234 defaults=defaults,
235 235 encoding="UTF-8",
236 236 force_defaults=False
237 237 )
238 238
239 239 def update_perm(self, id):
240 240 """PUT /users_perm/id: Update an existing item"""
241 241 # url('users_group_perm', id=ID, method='put')
242 242
243 243 users_group = UserGroup.get_or_404(id)
244 244 grant_create_perm = str2bool(request.POST.get('create_repo_perm'))
245 245 grant_fork_perm = str2bool(request.POST.get('fork_repo_perm'))
246 246 inherit_perms = str2bool(request.POST.get('inherit_default_permissions'))
247 247
248 248 usergroup_model = UserGroupModel()
249 249
250 250 try:
251 251 users_group.inherit_default_permissions = inherit_perms
252 252 Session().add(users_group)
253 253
254 254 if grant_create_perm:
255 255 usergroup_model.revoke_perm(id, 'hg.create.none')
256 256 usergroup_model.grant_perm(id, 'hg.create.repository')
257 257 h.flash(_("Granted 'repository create' permission to user group"),
258 258 category='success')
259 259 else:
260 260 usergroup_model.revoke_perm(id, 'hg.create.repository')
261 261 usergroup_model.grant_perm(id, 'hg.create.none')
262 262 h.flash(_("Revoked 'repository create' permission to user group"),
263 263 category='success')
264 264
265 265 if grant_fork_perm:
266 266 usergroup_model.revoke_perm(id, 'hg.fork.none')
267 267 usergroup_model.grant_perm(id, 'hg.fork.repository')
268 268 h.flash(_("Granted 'repository fork' permission to user group"),
269 269 category='success')
270 270 else:
271 271 usergroup_model.revoke_perm(id, 'hg.fork.repository')
272 272 usergroup_model.grant_perm(id, 'hg.fork.none')
273 273 h.flash(_("Revoked 'repository fork' permission to user group"),
274 274 category='success')
275 275
276 276 Session().commit()
277 277 except Exception:
278 278 log.error(traceback.format_exc())
279 279 h.flash(_('An error occurred during permissions saving'),
280 280 category='error')
281 281
282 282 return redirect(url('edit_users_group', id=id))
@@ -1,185 +1,185 b''
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 rhodecode.controllers.forks
4 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 5
6 6 forks controller for rhodecode
7 7
8 8 :created_on: Apr 23, 2011
9 9 :author: marcink
10 10 :copyright: (C) 2011-2012 Marcin Kuzminski <marcin@python-works.com>
11 11 :license: GPLv3, see COPYING for more details.
12 12 """
13 13 # This program is free software: you can redistribute it and/or modify
14 14 # it under the terms of the GNU General Public License as published by
15 15 # the Free Software Foundation, either version 3 of the License, or
16 16 # (at your option) any later version.
17 17 #
18 18 # This program is distributed in the hope that it will be useful,
19 19 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 21 # GNU General Public License for more details.
22 22 #
23 23 # You should have received a copy of the GNU General Public License
24 24 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25 import logging
26 26 import formencode
27 27 import traceback
28 28 from formencode import htmlfill
29 29
30 30 from pylons import tmpl_context as c, request, url
31 31 from pylons.controllers.util import redirect
32 32 from pylons.i18n.translation import _
33 33
34 34 import rhodecode.lib.helpers as h
35 35
36 36 from rhodecode.lib.helpers import Page
37 37 from rhodecode.lib.auth import LoginRequired, HasRepoPermissionAnyDecorator, \
38 38 NotAnonymous, HasRepoPermissionAny, HasPermissionAllDecorator,\
39 39 HasPermissionAnyDecorator
40 40 from rhodecode.lib.base import BaseRepoController, render
41 41 from rhodecode.model.db import Repository, RepoGroup, UserFollowing, User
42 42 from rhodecode.model.repo import RepoModel
43 43 from rhodecode.model.forms import RepoForkForm
44 44 from rhodecode.model.scm import ScmModel, GroupList
45 45 from rhodecode.lib.utils2 import safe_int
46 46
47 47 log = logging.getLogger(__name__)
48 48
49 49
50 50 class ForksController(BaseRepoController):
51 51
52 52 @LoginRequired()
53 53 def __before__(self):
54 54 super(ForksController, self).__before__()
55 55
56 56 def __load_defaults(self):
57 57 acl_groups = GroupList(RepoGroup.query().all(),
58 58 perm_set=['group.write', 'group.admin'])
59 59 c.repo_groups = RepoGroup.groups_choices(groups=acl_groups)
60 60 c.repo_groups_choices = map(lambda k: unicode(k[0]), c.repo_groups)
61 61 choices, c.landing_revs = ScmModel().get_repo_landing_revs()
62 62 c.landing_revs_choices = choices
63 63
64 64 def __load_data(self, repo_name=None):
65 65 """
66 66 Load defaults settings for edit, and update
67 67
68 68 :param repo_name:
69 69 """
70 70 self.__load_defaults()
71 71
72 72 c.repo_info = db_repo = Repository.get_by_repo_name(repo_name)
73 73 repo = db_repo.scm_instance
74 74
75 75 if c.repo_info is None:
76 76 h.not_mapped_error(repo_name)
77 77 return redirect(url('repos'))
78 78
79 79 c.default_user_id = User.get_by_username('default').user_id
80 80 c.in_public_journal = UserFollowing.query()\
81 81 .filter(UserFollowing.user_id == c.default_user_id)\
82 82 .filter(UserFollowing.follows_repository == c.repo_info).scalar()
83 83
84 84 if c.repo_info.stats:
85 85 last_rev = c.repo_info.stats.stat_on_revision+1
86 86 else:
87 87 last_rev = 0
88 88 c.stats_revision = last_rev
89 89
90 90 c.repo_last_rev = repo.count() if repo.revisions else 0
91 91
92 92 if last_rev == 0 or c.repo_last_rev == 0:
93 93 c.stats_percentage = 0
94 94 else:
95 95 c.stats_percentage = '%.2f' % ((float((last_rev)) /
96 96 c.repo_last_rev) * 100)
97 97
98 98 defaults = RepoModel()._get_defaults(repo_name)
99 99 # alter the description to indicate a fork
100 100 defaults['description'] = ('fork of repository: %s \n%s'
101 101 % (defaults['repo_name'],
102 102 defaults['description']))
103 103 # add suffix to fork
104 104 defaults['repo_name'] = '%s-fork' % defaults['repo_name']
105 105
106 106 return defaults
107 107
108 108 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
109 109 'repository.admin')
110 110 def forks(self, repo_name):
111 111 p = safe_int(request.params.get('page', 1), 1)
112 112 repo_id = c.rhodecode_db_repo.repo_id
113 113 d = []
114 114 for r in Repository.get_repo_forks(repo_id):
115 115 if not HasRepoPermissionAny(
116 116 'repository.read', 'repository.write', 'repository.admin'
117 117 )(r.repo_name, 'get forks check'):
118 118 continue
119 119 d.append(r)
120 120 c.forks_pager = Page(d, page=p, items_per_page=20)
121 121
122 122 c.forks_data = render('/forks/forks_data.html')
123 123
124 124 if request.environ.get('HTTP_X_PARTIAL_XHR'):
125 125 return c.forks_data
126 126
127 127 return render('/forks/forks.html')
128 128
129 129 @NotAnonymous()
130 130 @HasPermissionAnyDecorator('hg.admin', 'hg.fork.repository')
131 131 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
132 132 'repository.admin')
133 133 def fork(self, repo_name):
134 134 c.repo_info = Repository.get_by_repo_name(repo_name)
135 135 if not c.repo_info:
136 136 h.not_mapped_error(repo_name)
137 137 return redirect(url('home'))
138 138
139 139 defaults = self.__load_data(repo_name)
140 140
141 141 return htmlfill.render(
142 142 render('forks/fork.html'),
143 143 defaults=defaults,
144 144 encoding="UTF-8",
145 145 force_defaults=False
146 146 )
147 147
148 148 @NotAnonymous()
149 149 @HasPermissionAnyDecorator('hg.admin', 'hg.fork.repository')
150 150 @HasRepoPermissionAnyDecorator('repository.read', 'repository.write',
151 151 'repository.admin')
152 152 def fork_create(self, repo_name):
153 153 self.__load_defaults()
154 154 c.repo_info = Repository.get_by_repo_name(repo_name)
155 155 _form = RepoForkForm(old_data={'repo_type': c.repo_info.repo_type},
156 156 repo_groups=c.repo_groups_choices,
157 157 landing_revs=c.landing_revs_choices)()
158 158 form_result = {}
159 159 try:
160 160 form_result = _form.to_python(dict(request.POST))
161 161
162 162 # create fork is done sometimes async on celery, db transaction
163 163 # management is handled there.
164 164 RepoModel().create_fork(form_result, self.rhodecode_user.user_id)
165 165 fork_url = h.link_to(form_result['repo_name'],
166 166 h.url('summary_home', repo_name=form_result['repo_name_full']))
167 167
168 h.flash(h.literal(_('forked repository %s as %s') \
168 h.flash(h.literal(_('Forked repository %s as %s') \
169 169 % (repo_name, fork_url)),
170 170 category='success')
171 171 except formencode.Invalid, errors:
172 172 c.new_repo = errors.value['repo_name']
173 173
174 174 return htmlfill.render(
175 175 render('forks/fork.html'),
176 176 defaults=errors.value,
177 177 errors=errors.error_dict or {},
178 178 prefix_error=False,
179 179 encoding="UTF-8")
180 180 except Exception:
181 181 log.error(traceback.format_exc())
182 182 h.flash(_('An error occurred during repository forking %s') %
183 183 repo_name, category='error')
184 184
185 185 return redirect(url('home'))
@@ -1,200 +1,200 b''
1 1 # -*- coding: utf-8 -*-
2 2 """
3 3 rhodecode.controllers.settings
4 4 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5 5
6 6 Settings controller for rhodecode
7 7
8 8 :created_on: Jun 30, 2010
9 9 :author: marcink
10 10 :copyright: (C) 2010-2012 Marcin Kuzminski <marcin@python-works.com>
11 11 :license: GPLv3, see COPYING for more details.
12 12 """
13 13 # This program is free software: you can redistribute it and/or modify
14 14 # it under the terms of the GNU General Public License as published by
15 15 # the Free Software Foundation, either version 3 of the License, or
16 16 # (at your option) any later version.
17 17 #
18 18 # This program is distributed in the hope that it will be useful,
19 19 # but WITHOUT ANY WARRANTY; without even the implied warranty of
20 20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 21 # GNU General Public License for more details.
22 22 #
23 23 # You should have received a copy of the GNU General Public License
24 24 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 25
26 26 import logging
27 27 import traceback
28 28 import formencode
29 29
30 30 from formencode import htmlfill
31 31
32 32 from pylons import tmpl_context as c, request, url
33 33 from pylons.controllers.util import redirect
34 34 from pylons.i18n.translation import _
35 35
36 36 import rhodecode.lib.helpers as h
37 37
38 38 from rhodecode.lib.auth import LoginRequired, HasRepoPermissionAllDecorator,\
39 39 HasRepoPermissionAnyDecorator
40 40 from rhodecode.lib.base import BaseRepoController, render
41 41 from rhodecode.lib.utils import invalidate_cache, action_logger
42 42
43 43 from rhodecode.model.forms import RepoSettingsForm
44 44 from rhodecode.model.repo import RepoModel
45 45 from rhodecode.model.db import RepoGroup, Repository, RepositoryField
46 46 from rhodecode.model.meta import Session
47 47 from rhodecode.model.scm import ScmModel, GroupList
48 48
49 49 log = logging.getLogger(__name__)
50 50
51 51
52 52 class SettingsController(BaseRepoController):
53 53
54 54 @LoginRequired()
55 55 def __before__(self):
56 56 super(SettingsController, self).__before__()
57 57
58 58 def __load_defaults(self):
59 59 acl_groups = GroupList(RepoGroup.query().all(),
60 60 perm_set=['group.write', 'group.admin'])
61 61 c.repo_groups = RepoGroup.groups_choices(groups=acl_groups)
62 62 c.repo_groups_choices = map(lambda k: unicode(k[0]), c.repo_groups)
63 63
64 64 repo_model = RepoModel()
65 65 c.users_array = repo_model.get_users_js()
66 66 c.users_groups_array = repo_model.get_users_groups_js()
67 67 choices, c.landing_revs = ScmModel().get_repo_landing_revs()
68 68 c.landing_revs_choices = choices
69 69
70 70 def __load_data(self, repo_name=None):
71 71 """
72 72 Load defaults settings for edit, and update
73 73
74 74 :param repo_name:
75 75 """
76 76 self.__load_defaults()
77 77
78 78 c.repo_info = db_repo = Repository.get_by_repo_name(repo_name)
79 79
80 80 if c.repo_info is None:
81 81 h.not_mapped_error(repo_name)
82 82 return redirect(url('home'))
83 83
84 84 ##override defaults for exact repo info here git/hg etc
85 85 choices, c.landing_revs = ScmModel().get_repo_landing_revs(c.repo_info)
86 86 c.landing_revs_choices = choices
87 87 c.repo_fields = RepositoryField.query()\
88 88 .filter(RepositoryField.repository == db_repo).all()
89 89 defaults = RepoModel()._get_defaults(repo_name)
90 90
91 91 return defaults
92 92
93 93 @HasRepoPermissionAllDecorator('repository.admin')
94 94 def index(self, repo_name):
95 95 defaults = self.__load_data(repo_name)
96 96
97 97 return htmlfill.render(
98 98 render('settings/repo_settings.html'),
99 99 defaults=defaults,
100 100 encoding="UTF-8",
101 101 force_defaults=False
102 102 )
103 103
104 104 @HasRepoPermissionAllDecorator('repository.admin')
105 105 def update(self, repo_name):
106 106 self.__load_defaults()
107 107 repo_model = RepoModel()
108 108 changed_name = repo_name
109 109 #override the choices with extracted revisions !
110 110 choices, c.landing_revs = ScmModel().get_repo_landing_revs(repo_name)
111 111 c.landing_revs_choices = choices
112 112 repo = Repository.get_by_repo_name(repo_name)
113 113 _form = RepoSettingsForm(edit=True,
114 114 old_data={'repo_name': repo_name,
115 115 'repo_group': repo.group.get_dict() \
116 116 if repo.group else {}},
117 117 repo_groups=c.repo_groups_choices,
118 118 landing_revs=c.landing_revs_choices)()
119 119 try:
120 120 form_result = _form.to_python(dict(request.POST))
121 121 repo_model.update(repo_name, **form_result)
122 122 invalidate_cache('get_repo_cached_%s' % repo_name)
123 123 h.flash(_('Repository %s updated successfully') % repo_name,
124 124 category='success')
125 125 changed_name = form_result['repo_name_full']
126 126 action_logger(self.rhodecode_user, 'user_updated_repo',
127 127 changed_name, self.ip_addr, self.sa)
128 128 Session().commit()
129 129 except formencode.Invalid, errors:
130 130 defaults = self.__load_data(repo_name)
131 131 defaults.update(errors.value)
132 132 return htmlfill.render(
133 133 render('settings/repo_settings.html'),
134 134 defaults=errors.value,
135 135 errors=errors.error_dict or {},
136 136 prefix_error=False,
137 137 encoding="UTF-8")
138 138
139 139 except Exception:
140 140 log.error(traceback.format_exc())
141 h.flash(_('error occurred during update of repository %s') \
141 h.flash(_('Error occurred during update of repository %s') \
142 142 % repo_name, category='error')
143 143
144 144 return redirect(url('repo_settings_home', repo_name=changed_name))
145 145
146 146 @HasRepoPermissionAllDecorator('repository.admin')
147 147 def delete(self, repo_name):
148 148 """DELETE /repos/repo_name: Delete an existing item"""
149 149 # Forms posted to this method should contain a hidden field:
150 150 # <input type="hidden" name="_method" value="DELETE" />
151 151 # Or using helpers:
152 152 # h.form(url('repo_settings_delete', repo_name=ID),
153 153 # method='delete')
154 154 # url('repo_settings_delete', repo_name=ID)
155 155
156 156 repo_model = RepoModel()
157 157 repo = repo_model.get_by_repo_name(repo_name)
158 158 if not repo:
159 159 h.not_mapped_error(repo_name)
160 160 return redirect(url('home'))
161 161 try:
162 162 action_logger(self.rhodecode_user, 'user_deleted_repo',
163 163 repo_name, self.ip_addr, self.sa)
164 164 repo_model.delete(repo)
165 165 invalidate_cache('get_repo_cached_%s' % repo_name)
166 h.flash(_('deleted repository %s') % repo_name, category='success')
166 h.flash(_('Deleted repository %s') % repo_name, category='success')
167 167 Session().commit()
168 168 except Exception:
169 169 log.error(traceback.format_exc())
170 170 h.flash(_('An error occurred during deletion of %s') % repo_name,
171 171 category='error')
172 172
173 173 return redirect(url('admin_settings_my_account', anchor='my'))
174 174
175 175 @HasRepoPermissionAnyDecorator('repository.write', 'repository.admin')
176 176 def toggle_locking(self, repo_name):
177 177 """
178 178 Toggle locking of repository by simple GET call to url
179 179
180 180 :param repo_name:
181 181 """
182 182
183 183 try:
184 184 repo = Repository.get_by_repo_name(repo_name)
185 185
186 186 if repo.enable_locking:
187 187 if repo.locked[0]:
188 188 Repository.unlock(repo)
189 189 action = _('unlocked')
190 190 else:
191 191 Repository.lock(repo, c.rhodecode_user.user_id)
192 192 action = _('locked')
193 193
194 194 h.flash(_('Repository has been %s') % action,
195 195 category='success')
196 196 except Exception, e:
197 197 log.error(traceback.format_exc())
198 198 h.flash(_('An error occurred during unlocking'),
199 199 category='error')
200 200 return redirect(url('summary_home', repo_name=repo_name))
1 NO CONTENT: modified file, binary diff hidden
@@ -1,4304 +1,4304 b''
1 1 # English translations for rhodecode.
2 2 # Copyright (C) 2010 ORGANIZATION
3 3 # This file is distributed under the same license as the rhodecode project.
4 4 # FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
5 5 #
6 6 msgid ""
7 7 msgstr ""
8 8 "Project-Id-Version: rhodecode 0.1\n"
9 9 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
10 10 "POT-Creation-Date: 2013-01-28 00:24+0100\n"
11 11 "PO-Revision-Date: 2011-02-25 19:13+0100\n"
12 12 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13 13 "Language-Team: en <LL@li.org>\n"
14 14 "Plural-Forms: nplurals=2; plural=(n != 1)\n"
15 15 "MIME-Version: 1.0\n"
16 16 "Content-Type: text/plain; charset=utf-8\n"
17 17 "Content-Transfer-Encoding: 8bit\n"
18 18 "Generated-By: Babel 0.9.6\n"
19 19
20 20 #: rhodecode/controllers/changelog.py:95
21 21 msgid "All Branches"
22 22 msgstr ""
23 23
24 24 #: rhodecode/controllers/changeset.py:83
25 25 msgid "show white space"
26 26 msgstr ""
27 27
28 28 #: rhodecode/controllers/changeset.py:90 rhodecode/controllers/changeset.py:97
29 29 msgid "ignore white space"
30 30 msgstr ""
31 31
32 32 #: rhodecode/controllers/changeset.py:163
33 33 #, python-format
34 34 msgid "%s line context"
35 35 msgstr ""
36 36
37 37 #: rhodecode/controllers/changeset.py:329
38 38 #: rhodecode/controllers/pullrequests.py:416
39 39 #, python-format
40 40 msgid "Status change -> %s"
41 41 msgstr ""
42 42
43 43 #: rhodecode/controllers/changeset.py:360
44 44 msgid ""
45 45 "Changing status on a changeset associated with a closed pull request is "
46 46 "not allowed"
47 47 msgstr ""
48 48
49 49 #: rhodecode/controllers/compare.py:75
50 50 #: rhodecode/controllers/pullrequests.py:121
51 51 #: rhodecode/controllers/shortlog.py:100
52 52 msgid "There are no changesets yet"
53 53 msgstr ""
54 54
55 55 #: rhodecode/controllers/error.py:69
56 56 msgid "Home page"
57 57 msgstr ""
58 58
59 59 #: rhodecode/controllers/error.py:98
60 60 msgid "The request could not be understood by the server due to malformed syntax."
61 61 msgstr ""
62 62
63 63 #: rhodecode/controllers/error.py:101
64 64 msgid "Unauthorized access to resource"
65 65 msgstr ""
66 66
67 67 #: rhodecode/controllers/error.py:103
68 68 msgid "You don't have permission to view this page"
69 69 msgstr ""
70 70
71 71 #: rhodecode/controllers/error.py:105
72 72 msgid "The resource could not be found"
73 73 msgstr ""
74 74
75 75 #: rhodecode/controllers/error.py:107
76 76 msgid ""
77 77 "The server encountered an unexpected condition which prevented it from "
78 78 "fulfilling the request."
79 79 msgstr ""
80 80
81 81 #: rhodecode/controllers/feed.py:52
82 82 #, python-format
83 83 msgid "Changes on %s repository"
84 84 msgstr ""
85 85
86 86 #: rhodecode/controllers/feed.py:53
87 87 #, python-format
88 88 msgid "%s %s feed"
89 89 msgstr ""
90 90
91 91 #: rhodecode/controllers/feed.py:86
92 92 #: rhodecode/templates/changeset/changeset.html:137
93 93 #: rhodecode/templates/changeset/changeset.html:149
94 94 #: rhodecode/templates/compare/compare_diff.html:62
95 95 #: rhodecode/templates/compare/compare_diff.html:73
96 96 #: rhodecode/templates/pullrequests/pullrequest_show.html:112
97 97 #: rhodecode/templates/pullrequests/pullrequest_show.html:171
98 98 msgid "Changeset was too big and was cut off..."
99 99 msgstr ""
100 100
101 101 #: rhodecode/controllers/feed.py:92
102 102 msgid "commited on"
103 103 msgstr ""
104 104
105 105 #: rhodecode/controllers/files.py:86
106 106 msgid "click here to add new file"
107 107 msgstr ""
108 108
109 109 #: rhodecode/controllers/files.py:87
110 110 #, python-format
111 111 msgid "There are no files yet %s"
112 112 msgstr ""
113 113
114 114 #: rhodecode/controllers/files.py:269 rhodecode/controllers/files.py:338
115 115 #, python-format
116 116 msgid "This repository is has been locked by %s on %s"
117 117 msgstr ""
118 118
119 119 #: rhodecode/controllers/files.py:281
120 120 msgid "You can only edit files with revision being a valid branch "
121 121 msgstr ""
122 122
123 123 #: rhodecode/controllers/files.py:295
124 124 #, python-format
125 125 msgid "Edited file %s via RhodeCode"
126 126 msgstr ""
127 127
128 128 #: rhodecode/controllers/files.py:311
129 129 msgid "No changes"
130 130 msgstr ""
131 131
132 132 #: rhodecode/controllers/files.py:321 rhodecode/controllers/files.py:384
133 133 #, python-format
134 134 msgid "Successfully committed to %s"
135 135 msgstr ""
136 136
137 137 #: rhodecode/controllers/files.py:326 rhodecode/controllers/files.py:390
138 138 msgid "Error occurred during commit"
139 139 msgstr ""
140 140
141 141 #: rhodecode/controllers/files.py:350
142 142 msgid "Added file via RhodeCode"
143 143 msgstr ""
144 144
145 145 #: rhodecode/controllers/files.py:370
146 146 msgid "No content"
147 147 msgstr ""
148 148
149 149 #: rhodecode/controllers/files.py:374
150 150 msgid "No filename"
151 151 msgstr ""
152 152
153 153 #: rhodecode/controllers/files.py:416
154 154 msgid "downloads disabled"
155 155 msgstr ""
156 156
157 157 #: rhodecode/controllers/files.py:427
158 158 #, python-format
159 159 msgid "Unknown revision %s"
160 160 msgstr ""
161 161
162 162 #: rhodecode/controllers/files.py:429
163 163 msgid "Empty repository"
164 164 msgstr ""
165 165
166 166 #: rhodecode/controllers/files.py:431
167 167 msgid "Unknown archive type"
168 168 msgstr ""
169 169
170 170 #: rhodecode/controllers/files.py:576
171 171 #: rhodecode/templates/changeset/changeset_range.html:13
172 172 #: rhodecode/templates/changeset/changeset_range.html:31
173 173 msgid "Changesets"
174 174 msgstr ""
175 175
176 176 #: rhodecode/controllers/files.py:577 rhodecode/controllers/pullrequests.py:74
177 177 #: rhodecode/controllers/summary.py:236 rhodecode/model/scm.py:564
178 178 msgid "Branches"
179 179 msgstr ""
180 180
181 181 #: rhodecode/controllers/files.py:578 rhodecode/controllers/pullrequests.py:78
182 182 #: rhodecode/controllers/summary.py:237 rhodecode/model/scm.py:575
183 183 msgid "Tags"
184 184 msgstr ""
185 185
186 186 #: rhodecode/controllers/forks.py:165
187 187 #, python-format
188 188 msgid "forked %s repository as %s"
189 189 msgstr ""
190 190
191 191 #: rhodecode/controllers/forks.py:179
192 192 #, python-format
193 193 msgid "An error occurred during repository forking %s"
194 194 msgstr ""
195 195
196 196 #: rhodecode/controllers/journal.py:275 rhodecode/controllers/journal.py:318
197 197 msgid "public journal"
198 198 msgstr ""
199 199
200 200 #: rhodecode/controllers/journal.py:279 rhodecode/controllers/journal.py:322
201 201 #: rhodecode/templates/base/base.html:238
202 202 #: rhodecode/templates/journal/journal.html:12
203 203 msgid "journal"
204 204 msgstr ""
205 205
206 206 #: rhodecode/controllers/login.py:142
207 207 msgid "You have successfully registered into rhodecode"
208 208 msgstr ""
209 209
210 210 #: rhodecode/controllers/login.py:163
211 211 msgid "Your password reset link was sent"
212 212 msgstr ""
213 213
214 214 #: rhodecode/controllers/login.py:183
215 215 msgid ""
216 216 "Your password reset was successful, new password has been sent to your "
217 217 "email"
218 218 msgstr ""
219 219
220 220 #: rhodecode/controllers/pullrequests.py:76 rhodecode/model/scm.py:570
221 221 msgid "Bookmarks"
222 222 msgstr ""
223 223
224 224 #: rhodecode/controllers/pullrequests.py:190
225 225 msgid "Pull request requires a title with min. 3 chars"
226 226 msgstr ""
227 227
228 228 #: rhodecode/controllers/pullrequests.py:192
229 229 msgid "error during creation of pull request"
230 230 msgstr ""
231 231
232 232 #: rhodecode/controllers/pullrequests.py:224
233 233 msgid "Successfully opened new pull request"
234 234 msgstr ""
235 235
236 236 #: rhodecode/controllers/pullrequests.py:227
237 237 msgid "Error occurred during sending pull request"
238 238 msgstr ""
239 239
240 240 #: rhodecode/controllers/pullrequests.py:260
241 241 msgid "Successfully deleted pull request"
242 242 msgstr ""
243 243
244 244 #: rhodecode/controllers/pullrequests.py:451
245 245 msgid "Closing pull request on other statuses than rejected or approved forbidden"
246 246 msgstr ""
247 247
248 248 #: rhodecode/controllers/search.py:134
249 249 msgid "Invalid search query. Try quoting it."
250 250 msgstr ""
251 251
252 252 #: rhodecode/controllers/search.py:139
253 253 msgid "There is no index to search in. Please run whoosh indexer"
254 254 msgstr ""
255 255
256 256 #: rhodecode/controllers/search.py:143
257 257 msgid "An error occurred during this search operation"
258 258 msgstr ""
259 259
260 260 #: rhodecode/controllers/settings.py:120
261 261 #: rhodecode/controllers/admin/repos.py:254
262 262 #, python-format
263 263 msgid "Repository %s updated successfully"
264 264 msgstr ""
265 265
266 266 #: rhodecode/controllers/settings.py:138
267 267 #: rhodecode/controllers/admin/repos.py:272
268 268 #, python-format
269 269 msgid "error occurred during update of repository %s"
270 270 msgstr ""
271 271
272 272 #: rhodecode/controllers/settings.py:163
273 273 #: rhodecode/controllers/admin/repos.py:297
274 274 #, python-format
275 275 msgid "deleted repository %s"
276 276 msgstr ""
277 277
278 278 #: rhodecode/controllers/settings.py:167
279 279 #: rhodecode/controllers/admin/repos.py:307
280 280 #: rhodecode/controllers/admin/repos.py:313
281 281 #, python-format
282 282 msgid "An error occurred during deletion of %s"
283 283 msgstr ""
284 284
285 285 #: rhodecode/controllers/settings.py:186
286 286 msgid "unlocked"
287 287 msgstr ""
288 288
289 289 #: rhodecode/controllers/settings.py:189
290 290 msgid "locked"
291 291 msgstr ""
292 292
293 293 #: rhodecode/controllers/settings.py:191
294 294 #, python-format
295 295 msgid "Repository has been %s"
296 296 msgstr ""
297 297
298 298 #: rhodecode/controllers/settings.py:195
299 299 #: rhodecode/controllers/admin/repos.py:405
300 300 msgid "An error occurred during unlocking"
301 301 msgstr ""
302 302
303 303 #: rhodecode/controllers/summary.py:140
304 304 msgid "No data loaded yet"
305 305 msgstr ""
306 306
307 307 #: rhodecode/controllers/summary.py:144
308 308 #: rhodecode/templates/summary/summary.html:157
309 309 msgid "Statistics are disabled for this repository"
310 310 msgstr ""
311 311
312 312 #: rhodecode/controllers/admin/defaults.py:96
313 313 msgid "Default settings updated successfully"
314 314 msgstr ""
315 315
316 316 #: rhodecode/controllers/admin/defaults.py:110
317 317 msgid "error occurred during update of defaults"
318 318 msgstr ""
319 319
320 320 #: rhodecode/controllers/admin/ldap_settings.py:50
321 321 msgid "BASE"
322 322 msgstr ""
323 323
324 324 #: rhodecode/controllers/admin/ldap_settings.py:51
325 325 msgid "ONELEVEL"
326 326 msgstr ""
327 327
328 328 #: rhodecode/controllers/admin/ldap_settings.py:52
329 329 msgid "SUBTREE"
330 330 msgstr ""
331 331
332 332 #: rhodecode/controllers/admin/ldap_settings.py:56
333 333 msgid "NEVER"
334 334 msgstr ""
335 335
336 336 #: rhodecode/controllers/admin/ldap_settings.py:57
337 337 msgid "ALLOW"
338 338 msgstr ""
339 339
340 340 #: rhodecode/controllers/admin/ldap_settings.py:58
341 341 msgid "TRY"
342 342 msgstr ""
343 343
344 344 #: rhodecode/controllers/admin/ldap_settings.py:59
345 345 msgid "DEMAND"
346 346 msgstr ""
347 347
348 348 #: rhodecode/controllers/admin/ldap_settings.py:60
349 349 msgid "HARD"
350 350 msgstr ""
351 351
352 352 #: rhodecode/controllers/admin/ldap_settings.py:64
353 353 msgid "No encryption"
354 354 msgstr ""
355 355
356 356 #: rhodecode/controllers/admin/ldap_settings.py:65
357 357 msgid "LDAPS connection"
358 358 msgstr ""
359 359
360 360 #: rhodecode/controllers/admin/ldap_settings.py:66
361 361 msgid "START_TLS on LDAP connection"
362 362 msgstr ""
363 363
364 364 #: rhodecode/controllers/admin/ldap_settings.py:126
365 msgid "Ldap settings updated successfully"
365 msgid "LDAP settings updated successfully"
366 366 msgstr ""
367 367
368 368 #: rhodecode/controllers/admin/ldap_settings.py:130
369 369 msgid "Unable to activate ldap. The \"python-ldap\" library is missing."
370 370 msgstr ""
371 371
372 372 #: rhodecode/controllers/admin/ldap_settings.py:147
373 373 msgid "error occurred during update of ldap settings"
374 374 msgstr ""
375 375
376 376 #: rhodecode/controllers/admin/permissions.py:60
377 377 #: rhodecode/controllers/admin/permissions.py:64
378 378 msgid "None"
379 379 msgstr ""
380 380
381 381 #: rhodecode/controllers/admin/permissions.py:61
382 382 #: rhodecode/controllers/admin/permissions.py:65
383 383 msgid "Read"
384 384 msgstr ""
385 385
386 386 #: rhodecode/controllers/admin/permissions.py:62
387 387 #: rhodecode/controllers/admin/permissions.py:66
388 388 msgid "Write"
389 389 msgstr ""
390 390
391 391 #: rhodecode/controllers/admin/permissions.py:63
392 392 #: rhodecode/controllers/admin/permissions.py:67
393 393 #: rhodecode/templates/admin/defaults/defaults.html:9
394 394 #: rhodecode/templates/admin/ldap/ldap.html:9
395 395 #: rhodecode/templates/admin/permissions/permissions.html:9
396 396 #: rhodecode/templates/admin/repos/repo_add.html:9
397 397 #: rhodecode/templates/admin/repos/repo_edit.html:9
398 398 #: rhodecode/templates/admin/repos/repos.html:9
399 399 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:8
400 400 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:8
401 401 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:10
402 402 #: rhodecode/templates/admin/settings/hooks.html:9
403 403 #: rhodecode/templates/admin/settings/settings.html:9
404 404 #: rhodecode/templates/admin/users/user_add.html:8
405 405 #: rhodecode/templates/admin/users/user_edit.html:9
406 406 #: rhodecode/templates/admin/users/user_edit.html:130
407 407 #: rhodecode/templates/admin/users/users.html:9
408 408 #: rhodecode/templates/admin/users_groups/users_group_add.html:8
409 409 #: rhodecode/templates/admin/users_groups/users_group_edit.html:9
410 410 #: rhodecode/templates/admin/users_groups/users_groups.html:9
411 411 #: rhodecode/templates/base/base.html:203
412 412 #: rhodecode/templates/base/base.html:324
413 413 #: rhodecode/templates/base/base.html:326
414 414 #: rhodecode/templates/base/base.html:328
415 415 msgid "Admin"
416 416 msgstr ""
417 417
418 418 #: rhodecode/controllers/admin/permissions.py:70
419 419 msgid "disabled"
420 420 msgstr ""
421 421
422 422 #: rhodecode/controllers/admin/permissions.py:72
423 423 msgid "allowed with manual account activation"
424 424 msgstr ""
425 425
426 426 #: rhodecode/controllers/admin/permissions.py:74
427 427 msgid "allowed with automatic account activation"
428 428 msgstr ""
429 429
430 430 #: rhodecode/controllers/admin/permissions.py:76
431 431 #: rhodecode/controllers/admin/permissions.py:79
432 432 msgid "Disabled"
433 433 msgstr ""
434 434
435 435 #: rhodecode/controllers/admin/permissions.py:77
436 436 #: rhodecode/controllers/admin/permissions.py:80
437 437 msgid "Enabled"
438 438 msgstr ""
439 439
440 440 #: rhodecode/controllers/admin/permissions.py:128
441 441 msgid "Default permissions updated successfully"
442 442 msgstr ""
443 443
444 444 #: rhodecode/controllers/admin/permissions.py:142
445 445 msgid "error occurred during update of permissions"
446 446 msgstr ""
447 447
448 448 #: rhodecode/controllers/admin/repos.py:123
449 449 msgid "--REMOVE FORK--"
450 450 msgstr ""
451 451
452 452 #: rhodecode/controllers/admin/repos.py:162
453 453 #, python-format
454 454 msgid "created repository %s from %s"
455 455 msgstr ""
456 456
457 457 #: rhodecode/controllers/admin/repos.py:166
458 458 #, python-format
459 459 msgid "created repository %s"
460 460 msgstr ""
461 461
462 462 #: rhodecode/controllers/admin/repos.py:197
463 463 #, python-format
464 464 msgid "error occurred during creation of repository %s"
465 465 msgstr ""
466 466
467 467 #: rhodecode/controllers/admin/repos.py:302
468 468 #, python-format
469 469 msgid "Cannot delete %s it still contains attached forks"
470 470 msgstr ""
471 471
472 472 #: rhodecode/controllers/admin/repos.py:331
473 473 msgid "An error occurred during deletion of repository user"
474 474 msgstr ""
475 475
476 476 #: rhodecode/controllers/admin/repos.py:350
477 477 msgid "An error occurred during deletion of repository users groups"
478 478 msgstr ""
479 479
480 480 #: rhodecode/controllers/admin/repos.py:368
481 481 msgid "An error occurred during deletion of repository stats"
482 482 msgstr ""
483 483
484 484 #: rhodecode/controllers/admin/repos.py:385
485 485 msgid "An error occurred during cache invalidation"
486 486 msgstr ""
487 487
488 488 #: rhodecode/controllers/admin/repos.py:425
489 489 msgid "Updated repository visibility in public journal"
490 490 msgstr ""
491 491
492 492 #: rhodecode/controllers/admin/repos.py:429
493 493 msgid "An error occurred during setting this repository in public journal"
494 494 msgstr ""
495 495
496 496 #: rhodecode/controllers/admin/repos.py:434 rhodecode/model/validators.py:301
497 497 msgid "Token mismatch"
498 498 msgstr ""
499 499
500 500 #: rhodecode/controllers/admin/repos.py:447
501 501 msgid "Pulled from remote location"
502 502 msgstr ""
503 503
504 504 #: rhodecode/controllers/admin/repos.py:449
505 505 msgid "An error occurred during pull from remote location"
506 506 msgstr ""
507 507
508 508 #: rhodecode/controllers/admin/repos.py:465
509 509 msgid "Nothing"
510 510 msgstr ""
511 511
512 512 #: rhodecode/controllers/admin/repos.py:467
513 513 #, python-format
514 514 msgid "Marked repo %s as fork of %s"
515 515 msgstr ""
516 516
517 517 #: rhodecode/controllers/admin/repos.py:471
518 518 msgid "An error occurred during this operation"
519 519 msgstr ""
520 520
521 521 #: rhodecode/controllers/admin/repos_groups.py:136
522 522 #, python-format
523 523 msgid "created repos group %s"
524 524 msgstr ""
525 525
526 526 #: rhodecode/controllers/admin/repos_groups.py:148
527 527 #, python-format
528 528 msgid "error occurred during creation of repos group %s"
529 529 msgstr ""
530 530
531 531 #: rhodecode/controllers/admin/repos_groups.py:205
532 532 #, python-format
533 533 msgid "updated repos group %s"
534 534 msgstr ""
535 535
536 536 #: rhodecode/controllers/admin/repos_groups.py:220
537 537 #, python-format
538 538 msgid "error occurred during update of repos group %s"
539 539 msgstr ""
540 540
541 541 #: rhodecode/controllers/admin/repos_groups.py:238
542 542 #, python-format
543 543 msgid "This group contains %s repositores and cannot be deleted"
544 544 msgstr ""
545 545
546 546 #: rhodecode/controllers/admin/repos_groups.py:246
547 547 #, python-format
548 548 msgid "removed repos group %s"
549 549 msgstr ""
550 550
551 551 #: rhodecode/controllers/admin/repos_groups.py:252
552 552 msgid "Cannot delete this group it still contains subgroups"
553 553 msgstr ""
554 554
555 555 #: rhodecode/controllers/admin/repos_groups.py:257
556 556 #: rhodecode/controllers/admin/repos_groups.py:262
557 557 #, python-format
558 558 msgid "error occurred during deletion of repos group %s"
559 559 msgstr ""
560 560
561 561 #: rhodecode/controllers/admin/repos_groups.py:283
562 562 msgid "An error occurred during deletion of group user"
563 563 msgstr ""
564 564
565 565 #: rhodecode/controllers/admin/repos_groups.py:304
566 566 msgid "An error occurred during deletion of group users groups"
567 567 msgstr ""
568 568
569 569 #: rhodecode/controllers/admin/settings.py:124
570 570 #, python-format
571 571 msgid "Repositories successfully rescanned added: %s ; removed: %s"
572 572 msgstr ""
573 573
574 574 #: rhodecode/controllers/admin/settings.py:133
575 575 msgid "Whoosh reindex task scheduled"
576 576 msgstr ""
577 577
578 578 #: rhodecode/controllers/admin/settings.py:164
579 579 msgid "Updated application settings"
580 580 msgstr ""
581 581
582 582 #: rhodecode/controllers/admin/settings.py:168
583 583 #: rhodecode/controllers/admin/settings.py:301
584 584 msgid "error occurred during updating application settings"
585 585 msgstr ""
586 586
587 587 #: rhodecode/controllers/admin/settings.py:209
588 588 msgid "Updated visualisation settings"
589 589 msgstr ""
590 590
591 591 #: rhodecode/controllers/admin/settings.py:214
592 592 msgid "error occurred during updating visualisation settings"
593 593 msgstr ""
594 594
595 595 #: rhodecode/controllers/admin/settings.py:297
596 596 msgid "Updated VCS settings"
597 597 msgstr ""
598 598
599 599 #: rhodecode/controllers/admin/settings.py:311
600 600 msgid "Added new hook"
601 601 msgstr ""
602 602
603 603 #: rhodecode/controllers/admin/settings.py:323
604 604 msgid "Updated hooks"
605 605 msgstr ""
606 606
607 607 #: rhodecode/controllers/admin/settings.py:327
608 608 msgid "error occurred during hook creation"
609 609 msgstr ""
610 610
611 611 #: rhodecode/controllers/admin/settings.py:346
612 612 msgid "Email task created"
613 613 msgstr ""
614 614
615 615 #: rhodecode/controllers/admin/settings.py:408
616 616 msgid "You can't edit this user since it's crucial for entire application"
617 617 msgstr ""
618 618
619 619 #: rhodecode/controllers/admin/settings.py:448
620 620 msgid "Your account was updated successfully"
621 621 msgstr ""
622 622
623 623 #: rhodecode/controllers/admin/settings.py:463
624 624 #: rhodecode/controllers/admin/users.py:198
625 625 #, python-format
626 626 msgid "error occurred during update of user %s"
627 627 msgstr ""
628 628
629 629 #: rhodecode/controllers/admin/users.py:130
630 630 #, python-format
631 631 msgid "created user %s"
632 632 msgstr ""
633 633
634 634 #: rhodecode/controllers/admin/users.py:142
635 635 #, python-format
636 636 msgid "error occurred during creation of user %s"
637 637 msgstr ""
638 638
639 639 #: rhodecode/controllers/admin/users.py:176
640 640 msgid "User updated successfully"
641 641 msgstr ""
642 642
643 643 #: rhodecode/controllers/admin/users.py:214
644 644 msgid "successfully deleted user"
645 645 msgstr ""
646 646
647 647 #: rhodecode/controllers/admin/users.py:219
648 648 msgid "An error occurred during deletion of user"
649 649 msgstr ""
650 650
651 651 #: rhodecode/controllers/admin/users.py:233
652 652 msgid "You can't edit this user"
653 653 msgstr ""
654 654
655 655 #: rhodecode/controllers/admin/users.py:276
656 656 msgid "Granted 'repository create' permission to user"
657 657 msgstr ""
658 658
659 659 #: rhodecode/controllers/admin/users.py:281
660 660 msgid "Revoked 'repository create' permission to user"
661 661 msgstr ""
662 662
663 663 #: rhodecode/controllers/admin/users.py:287
664 664 msgid "Granted 'repository fork' permission to user"
665 665 msgstr ""
666 666
667 667 #: rhodecode/controllers/admin/users.py:292
668 668 msgid "Revoked 'repository fork' permission to user"
669 669 msgstr ""
670 670
671 671 #: rhodecode/controllers/admin/users.py:298
672 672 #: rhodecode/controllers/admin/users_groups.py:279
673 673 msgid "An error occurred during permissions saving"
674 674 msgstr ""
675 675
676 676 #: rhodecode/controllers/admin/users.py:312
677 677 #, python-format
678 678 msgid "Added email %s to user"
679 679 msgstr ""
680 680
681 681 #: rhodecode/controllers/admin/users.py:318
682 682 msgid "An error occurred during email saving"
683 683 msgstr ""
684 684
685 685 #: rhodecode/controllers/admin/users.py:328
686 686 msgid "Removed email from user"
687 687 msgstr ""
688 688
689 689 #: rhodecode/controllers/admin/users.py:341
690 690 #, python-format
691 691 msgid "Added ip %s to user"
692 692 msgstr ""
693 693
694 694 #: rhodecode/controllers/admin/users.py:347
695 695 msgid "An error occurred during ip saving"
696 696 msgstr ""
697 697
698 698 #: rhodecode/controllers/admin/users.py:359
699 699 msgid "Removed ip from user"
700 700 msgstr ""
701 701
702 702 #: rhodecode/controllers/admin/users_groups.py:86
703 703 #, python-format
704 704 msgid "created users group %s"
705 705 msgstr ""
706 706
707 707 #: rhodecode/controllers/admin/users_groups.py:97
708 708 #, python-format
709 709 msgid "error occurred during creation of users group %s"
710 710 msgstr ""
711 711
712 712 #: rhodecode/controllers/admin/users_groups.py:164
713 713 #, python-format
714 714 msgid "updated users group %s"
715 715 msgstr ""
716 716
717 717 #: rhodecode/controllers/admin/users_groups.py:186
718 718 #, python-format
719 719 msgid "error occurred during update of users group %s"
720 720 msgstr ""
721 721
722 722 #: rhodecode/controllers/admin/users_groups.py:203
723 723 msgid "successfully deleted users group"
724 724 msgstr ""
725 725
726 726 #: rhodecode/controllers/admin/users_groups.py:208
727 727 msgid "An error occurred during deletion of users group"
728 728 msgstr ""
729 729
730 730 #: rhodecode/controllers/admin/users_groups.py:257
731 731 msgid "Granted 'repository create' permission to users group"
732 732 msgstr ""
733 733
734 734 #: rhodecode/controllers/admin/users_groups.py:262
735 735 msgid "Revoked 'repository create' permission to users group"
736 736 msgstr ""
737 737
738 738 #: rhodecode/controllers/admin/users_groups.py:268
739 739 msgid "Granted 'repository fork' permission to users group"
740 740 msgstr ""
741 741
742 742 #: rhodecode/controllers/admin/users_groups.py:273
743 743 msgid "Revoked 'repository fork' permission to users group"
744 744 msgstr ""
745 745
746 746 #: rhodecode/lib/auth.py:509
747 747 #, python-format
748 748 msgid "IP %s not allowed"
749 749 msgstr ""
750 750
751 751 #: rhodecode/lib/auth.py:558
752 752 msgid "You need to be a registered user to perform this action"
753 753 msgstr ""
754 754
755 755 #: rhodecode/lib/auth.py:599
756 756 msgid "You need to be a signed in to view this page"
757 757 msgstr ""
758 758
759 759 #: rhodecode/lib/diffs.py:74
760 760 msgid "binary file"
761 761 msgstr ""
762 762
763 763 #: rhodecode/lib/diffs.py:90
764 764 msgid "Changeset was too big and was cut off, use diff menu to display this diff"
765 765 msgstr ""
766 766
767 767 #: rhodecode/lib/diffs.py:100
768 768 msgid "No changes detected"
769 769 msgstr ""
770 770
771 771 #: rhodecode/lib/helpers.py:374
772 772 #, python-format
773 773 msgid "%a, %d %b %Y %H:%M:%S"
774 774 msgstr ""
775 775
776 776 #: rhodecode/lib/helpers.py:486
777 777 msgid "True"
778 778 msgstr ""
779 779
780 780 #: rhodecode/lib/helpers.py:490
781 781 msgid "False"
782 782 msgstr ""
783 783
784 784 #: rhodecode/lib/helpers.py:530
785 785 #, python-format
786 786 msgid "Deleted branch: %s"
787 787 msgstr ""
788 788
789 789 #: rhodecode/lib/helpers.py:533
790 790 #, python-format
791 791 msgid "Created tag: %s"
792 792 msgstr ""
793 793
794 794 #: rhodecode/lib/helpers.py:546
795 795 msgid "Changeset not found"
796 796 msgstr ""
797 797
798 798 #: rhodecode/lib/helpers.py:589
799 799 #, python-format
800 800 msgid "Show all combined changesets %s->%s"
801 801 msgstr ""
802 802
803 803 #: rhodecode/lib/helpers.py:595
804 804 msgid "compare view"
805 805 msgstr ""
806 806
807 807 #: rhodecode/lib/helpers.py:615
808 808 msgid "and"
809 809 msgstr ""
810 810
811 811 #: rhodecode/lib/helpers.py:616
812 812 #, python-format
813 813 msgid "%s more"
814 814 msgstr ""
815 815
816 816 #: rhodecode/lib/helpers.py:617 rhodecode/templates/changelog/changelog.html:51
817 817 msgid "revisions"
818 818 msgstr ""
819 819
820 820 #: rhodecode/lib/helpers.py:641
821 821 #, python-format
822 822 msgid "fork name %s"
823 823 msgstr ""
824 824
825 825 #: rhodecode/lib/helpers.py:658
826 826 #: rhodecode/templates/pullrequests/pullrequest_show.html:4
827 827 #: rhodecode/templates/pullrequests/pullrequest_show.html:12
828 828 #, python-format
829 829 msgid "Pull request #%s"
830 830 msgstr ""
831 831
832 832 #: rhodecode/lib/helpers.py:664
833 833 msgid "[deleted] repository"
834 834 msgstr ""
835 835
836 836 #: rhodecode/lib/helpers.py:666 rhodecode/lib/helpers.py:676
837 837 msgid "[created] repository"
838 838 msgstr ""
839 839
840 840 #: rhodecode/lib/helpers.py:668
841 841 msgid "[created] repository as fork"
842 842 msgstr ""
843 843
844 844 #: rhodecode/lib/helpers.py:670 rhodecode/lib/helpers.py:678
845 845 msgid "[forked] repository"
846 846 msgstr ""
847 847
848 848 #: rhodecode/lib/helpers.py:672 rhodecode/lib/helpers.py:680
849 849 msgid "[updated] repository"
850 850 msgstr ""
851 851
852 852 #: rhodecode/lib/helpers.py:674
853 853 msgid "[delete] repository"
854 854 msgstr ""
855 855
856 856 #: rhodecode/lib/helpers.py:682
857 857 msgid "[created] user"
858 858 msgstr ""
859 859
860 860 #: rhodecode/lib/helpers.py:684
861 861 msgid "[updated] user"
862 862 msgstr ""
863 863
864 864 #: rhodecode/lib/helpers.py:686
865 865 msgid "[created] users group"
866 866 msgstr ""
867 867
868 868 #: rhodecode/lib/helpers.py:688
869 869 msgid "[updated] users group"
870 870 msgstr ""
871 871
872 872 #: rhodecode/lib/helpers.py:690
873 873 msgid "[commented] on revision in repository"
874 874 msgstr ""
875 875
876 876 #: rhodecode/lib/helpers.py:692
877 877 msgid "[commented] on pull request for"
878 878 msgstr ""
879 879
880 880 #: rhodecode/lib/helpers.py:694
881 881 msgid "[closed] pull request for"
882 882 msgstr ""
883 883
884 884 #: rhodecode/lib/helpers.py:696
885 885 msgid "[pushed] into"
886 886 msgstr ""
887 887
888 888 #: rhodecode/lib/helpers.py:698
889 889 msgid "[committed via RhodeCode] into repository"
890 890 msgstr ""
891 891
892 892 #: rhodecode/lib/helpers.py:700
893 893 msgid "[pulled from remote] into repository"
894 894 msgstr ""
895 895
896 896 #: rhodecode/lib/helpers.py:702
897 897 msgid "[pulled] from"
898 898 msgstr ""
899 899
900 900 #: rhodecode/lib/helpers.py:704
901 901 msgid "[started following] repository"
902 902 msgstr ""
903 903
904 904 #: rhodecode/lib/helpers.py:706
905 905 msgid "[stopped following] repository"
906 906 msgstr ""
907 907
908 908 #: rhodecode/lib/helpers.py:884
909 909 #, python-format
910 910 msgid " and %s more"
911 911 msgstr ""
912 912
913 913 #: rhodecode/lib/helpers.py:888
914 914 msgid "No Files"
915 915 msgstr ""
916 916
917 917 #: rhodecode/lib/helpers.py:1164
918 918 #, python-format
919 919 msgid ""
920 920 "%s repository is not mapped to db perhaps it was created or renamed from "
921 921 "the filesystem please run the application again in order to rescan "
922 922 "repositories"
923 923 msgstr ""
924 924
925 925 #: rhodecode/lib/utils2.py:403
926 926 #, python-format
927 927 msgid "%d year"
928 928 msgid_plural "%d years"
929 929 msgstr[0] ""
930 930 msgstr[1] ""
931 931
932 932 #: rhodecode/lib/utils2.py:404
933 933 #, python-format
934 934 msgid "%d month"
935 935 msgid_plural "%d months"
936 936 msgstr[0] ""
937 937 msgstr[1] ""
938 938
939 939 #: rhodecode/lib/utils2.py:405
940 940 #, python-format
941 941 msgid "%d day"
942 942 msgid_plural "%d days"
943 943 msgstr[0] ""
944 944 msgstr[1] ""
945 945
946 946 #: rhodecode/lib/utils2.py:406
947 947 #, python-format
948 948 msgid "%d hour"
949 949 msgid_plural "%d hours"
950 950 msgstr[0] ""
951 951 msgstr[1] ""
952 952
953 953 #: rhodecode/lib/utils2.py:407
954 954 #, python-format
955 955 msgid "%d minute"
956 956 msgid_plural "%d minutes"
957 957 msgstr[0] ""
958 958 msgstr[1] ""
959 959
960 960 #: rhodecode/lib/utils2.py:408
961 961 #, python-format
962 962 msgid "%d second"
963 963 msgid_plural "%d seconds"
964 964 msgstr[0] ""
965 965 msgstr[1] ""
966 966
967 967 #: rhodecode/lib/utils2.py:424
968 968 #, python-format
969 969 msgid "in %s"
970 970 msgstr ""
971 971
972 972 #: rhodecode/lib/utils2.py:426
973 973 #, python-format
974 974 msgid "%s ago"
975 975 msgstr ""
976 976
977 977 #: rhodecode/lib/utils2.py:428
978 978 #, python-format
979 979 msgid "in %s and %s"
980 980 msgstr ""
981 981
982 982 #: rhodecode/lib/utils2.py:431
983 983 #, python-format
984 984 msgid "%s and %s ago"
985 985 msgstr ""
986 986
987 987 #: rhodecode/lib/utils2.py:434
988 988 msgid "just now"
989 989 msgstr ""
990 990
991 991 #: rhodecode/lib/celerylib/tasks.py:270
992 992 msgid "password reset link"
993 993 msgstr ""
994 994
995 995 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1163
996 996 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1183 rhodecode/model/db.py:1313
997 997 msgid "Repository no access"
998 998 msgstr ""
999 999
1000 1000 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1164
1001 1001 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1184 rhodecode/model/db.py:1314
1002 1002 msgid "Repository read access"
1003 1003 msgstr ""
1004 1004
1005 1005 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1165
1006 1006 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1185 rhodecode/model/db.py:1315
1007 1007 msgid "Repository write access"
1008 1008 msgstr ""
1009 1009
1010 1010 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1166
1011 1011 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1186 rhodecode/model/db.py:1316
1012 1012 msgid "Repository admin access"
1013 1013 msgstr ""
1014 1014
1015 1015 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1168
1016 1016 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1188 rhodecode/model/db.py:1318
1017 1017 msgid "Repositories Group no access"
1018 1018 msgstr ""
1019 1019
1020 1020 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1169
1021 1021 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1189 rhodecode/model/db.py:1319
1022 1022 msgid "Repositories Group read access"
1023 1023 msgstr ""
1024 1024
1025 1025 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1170
1026 1026 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1190 rhodecode/model/db.py:1320
1027 1027 msgid "Repositories Group write access"
1028 1028 msgstr ""
1029 1029
1030 1030 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1171
1031 1031 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1191 rhodecode/model/db.py:1321
1032 1032 msgid "Repositories Group admin access"
1033 1033 msgstr ""
1034 1034
1035 1035 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1173
1036 1036 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1193 rhodecode/model/db.py:1323
1037 1037 msgid "RhodeCode Administrator"
1038 1038 msgstr ""
1039 1039
1040 1040 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1174
1041 1041 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1194 rhodecode/model/db.py:1324
1042 1042 msgid "Repository creation disabled"
1043 1043 msgstr ""
1044 1044
1045 1045 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1175
1046 1046 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1195 rhodecode/model/db.py:1325
1047 1047 msgid "Repository creation enabled"
1048 1048 msgstr ""
1049 1049
1050 1050 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1176
1051 1051 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1196 rhodecode/model/db.py:1326
1052 1052 msgid "Repository forking disabled"
1053 1053 msgstr ""
1054 1054
1055 1055 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1177
1056 1056 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1197 rhodecode/model/db.py:1327
1057 1057 msgid "Repository forking enabled"
1058 1058 msgstr ""
1059 1059
1060 1060 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1178
1061 1061 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1198 rhodecode/model/db.py:1328
1062 1062 msgid "Register disabled"
1063 1063 msgstr ""
1064 1064
1065 1065 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1179
1066 1066 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1199 rhodecode/model/db.py:1329
1067 1067 msgid "Register new user with RhodeCode with manual activation"
1068 1068 msgstr ""
1069 1069
1070 1070 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1182
1071 1071 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1202 rhodecode/model/db.py:1332
1072 1072 msgid "Register new user with RhodeCode with auto activation"
1073 1073 msgstr ""
1074 1074
1075 1075 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1623
1076 1076 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1643 rhodecode/model/db.py:1776
1077 1077 msgid "Not Reviewed"
1078 1078 msgstr ""
1079 1079
1080 1080 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1624
1081 1081 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1644 rhodecode/model/db.py:1777
1082 1082 msgid "Approved"
1083 1083 msgstr ""
1084 1084
1085 1085 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1625
1086 1086 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1645 rhodecode/model/db.py:1778
1087 1087 msgid "Rejected"
1088 1088 msgstr ""
1089 1089
1090 1090 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1626
1091 1091 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1646 rhodecode/model/db.py:1779
1092 1092 msgid "Under Review"
1093 1093 msgstr ""
1094 1094
1095 1095 #: rhodecode/model/comment.py:109
1096 1096 #, python-format
1097 1097 msgid "on line %s"
1098 1098 msgstr ""
1099 1099
1100 1100 #: rhodecode/model/comment.py:176
1101 1101 msgid "[Mention]"
1102 1102 msgstr ""
1103 1103
1104 1104 #: rhodecode/model/forms.py:43
1105 1105 msgid "Please enter a login"
1106 1106 msgstr ""
1107 1107
1108 1108 #: rhodecode/model/forms.py:44
1109 1109 #, python-format
1110 1110 msgid "Enter a value %(min)i characters long or more"
1111 1111 msgstr ""
1112 1112
1113 1113 #: rhodecode/model/forms.py:52
1114 1114 msgid "Please enter a password"
1115 1115 msgstr ""
1116 1116
1117 1117 #: rhodecode/model/forms.py:53
1118 1118 #, python-format
1119 1119 msgid "Enter %(min)i characters or more"
1120 1120 msgstr ""
1121 1121
1122 1122 #: rhodecode/model/notification.py:220
1123 1123 #, python-format
1124 1124 msgid "commented on commit at %(when)s"
1125 1125 msgstr ""
1126 1126
1127 1127 #: rhodecode/model/notification.py:221
1128 1128 #, python-format
1129 1129 msgid "sent message at %(when)s"
1130 1130 msgstr ""
1131 1131
1132 1132 #: rhodecode/model/notification.py:222
1133 1133 #, python-format
1134 1134 msgid "mentioned you at %(when)s"
1135 1135 msgstr ""
1136 1136
1137 1137 #: rhodecode/model/notification.py:223
1138 1138 #, python-format
1139 1139 msgid "registered in RhodeCode at %(when)s"
1140 1140 msgstr ""
1141 1141
1142 1142 #: rhodecode/model/notification.py:224
1143 1143 #, python-format
1144 1144 msgid "opened new pull request at %(when)s"
1145 1145 msgstr ""
1146 1146
1147 1147 #: rhodecode/model/notification.py:225
1148 1148 #, python-format
1149 1149 msgid "commented on pull request at %(when)s"
1150 1150 msgstr ""
1151 1151
1152 1152 #: rhodecode/model/pull_request.py:100
1153 1153 #, python-format
1154 1154 msgid "%(user)s wants you to review pull request #%(pr_id)s"
1155 1155 msgstr ""
1156 1156
1157 1157 #: rhodecode/model/scm.py:556
1158 1158 msgid "latest tip"
1159 1159 msgstr ""
1160 1160
1161 1161 #: rhodecode/model/user.py:231
1162 1162 msgid "new user registration"
1163 1163 msgstr ""
1164 1164
1165 1165 #: rhodecode/model/user.py:256 rhodecode/model/user.py:280
1166 1166 msgid "You can't Edit this user since it's crucial for entire application"
1167 1167 msgstr ""
1168 1168
1169 1169 #: rhodecode/model/user.py:302
1170 1170 msgid "You can't remove this user since it's crucial for entire application"
1171 1171 msgstr ""
1172 1172
1173 1173 #: rhodecode/model/user.py:308
1174 1174 #, python-format
1175 1175 msgid ""
1176 1176 "user \"%s\" still owns %s repositories and cannot be removed. Switch "
1177 1177 "owners or remove those repositories. %s"
1178 1178 msgstr ""
1179 1179
1180 1180 #: rhodecode/model/validators.py:37 rhodecode/model/validators.py:38
1181 1181 msgid "Value cannot be an empty list"
1182 1182 msgstr ""
1183 1183
1184 1184 #: rhodecode/model/validators.py:84
1185 1185 #, python-format
1186 1186 msgid "Username \"%(username)s\" already exists"
1187 1187 msgstr ""
1188 1188
1189 1189 #: rhodecode/model/validators.py:86
1190 1190 #, python-format
1191 1191 msgid "Username \"%(username)s\" is forbidden"
1192 1192 msgstr ""
1193 1193
1194 1194 #: rhodecode/model/validators.py:88
1195 1195 msgid ""
1196 1196 "Username may only contain alphanumeric characters underscores, periods or"
1197 1197 " dashes and must begin with alphanumeric character"
1198 1198 msgstr ""
1199 1199
1200 1200 #: rhodecode/model/validators.py:116
1201 1201 #, python-format
1202 1202 msgid "Username %(username)s is not valid"
1203 1203 msgstr ""
1204 1204
1205 1205 #: rhodecode/model/validators.py:135
1206 1206 msgid "Invalid users group name"
1207 1207 msgstr ""
1208 1208
1209 1209 #: rhodecode/model/validators.py:136
1210 1210 #, python-format
1211 1211 msgid "Users group \"%(usersgroup)s\" already exists"
1212 1212 msgstr ""
1213 1213
1214 1214 #: rhodecode/model/validators.py:138
1215 1215 msgid ""
1216 1216 "users group name may only contain alphanumeric characters underscores, "
1217 1217 "periods or dashes and must begin with alphanumeric character"
1218 1218 msgstr ""
1219 1219
1220 1220 #: rhodecode/model/validators.py:176
1221 1221 msgid "Cannot assign this group as parent"
1222 1222 msgstr ""
1223 1223
1224 1224 #: rhodecode/model/validators.py:177
1225 1225 #, python-format
1226 1226 msgid "Group \"%(group_name)s\" already exists"
1227 1227 msgstr ""
1228 1228
1229 1229 #: rhodecode/model/validators.py:179
1230 1230 #, python-format
1231 1231 msgid "Repository with name \"%(group_name)s\" already exists"
1232 1232 msgstr ""
1233 1233
1234 1234 #: rhodecode/model/validators.py:237
1235 1235 msgid "Invalid characters (non-ascii) in password"
1236 1236 msgstr ""
1237 1237
1238 1238 #: rhodecode/model/validators.py:252
1239 1239 msgid "Passwords do not match"
1240 1240 msgstr ""
1241 1241
1242 1242 #: rhodecode/model/validators.py:269
1243 1243 msgid "invalid password"
1244 1244 msgstr ""
1245 1245
1246 1246 #: rhodecode/model/validators.py:270
1247 1247 msgid "invalid user name"
1248 1248 msgstr ""
1249 1249
1250 1250 #: rhodecode/model/validators.py:271
1251 1251 msgid "Your account is disabled"
1252 1252 msgstr ""
1253 1253
1254 1254 #: rhodecode/model/validators.py:315
1255 1255 #, python-format
1256 1256 msgid "Repository name %(repo)s is disallowed"
1257 1257 msgstr ""
1258 1258
1259 1259 #: rhodecode/model/validators.py:317
1260 1260 #, python-format
1261 1261 msgid "Repository named %(repo)s already exists"
1262 1262 msgstr ""
1263 1263
1264 1264 #: rhodecode/model/validators.py:318
1265 1265 #, python-format
1266 1266 msgid "Repository \"%(repo)s\" already exists in group \"%(group)s\""
1267 1267 msgstr ""
1268 1268
1269 1269 #: rhodecode/model/validators.py:320
1270 1270 #, python-format
1271 1271 msgid "Repositories group with name \"%(repo)s\" already exists"
1272 1272 msgstr ""
1273 1273
1274 1274 #: rhodecode/model/validators.py:433
1275 1275 msgid "invalid clone url"
1276 1276 msgstr ""
1277 1277
1278 1278 #: rhodecode/model/validators.py:434
1279 1279 msgid "Invalid clone url, provide a valid clone http(s)/svn+http(s) url"
1280 1280 msgstr ""
1281 1281
1282 1282 #: rhodecode/model/validators.py:459
1283 1283 msgid "Fork have to be the same type as parent"
1284 1284 msgstr ""
1285 1285
1286 1286 #: rhodecode/model/validators.py:474
1287 1287 msgid "You don't have permissions to create repository in this group"
1288 1288 msgstr ""
1289 1289
1290 1290 #: rhodecode/model/validators.py:501
1291 1291 msgid "You don't have permissions to create a group in this location"
1292 1292 msgstr ""
1293 1293
1294 1294 #: rhodecode/model/validators.py:540
1295 1295 msgid "This username or users group name is not valid"
1296 1296 msgstr ""
1297 1297
1298 1298 #: rhodecode/model/validators.py:636
1299 1299 msgid "This is not a valid path"
1300 1300 msgstr ""
1301 1301
1302 1302 #: rhodecode/model/validators.py:651
1303 1303 msgid "This e-mail address is already taken"
1304 1304 msgstr ""
1305 1305
1306 1306 #: rhodecode/model/validators.py:671
1307 1307 #, python-format
1308 1308 msgid "e-mail \"%(email)s\" does not exist."
1309 1309 msgstr ""
1310 1310
1311 1311 #: rhodecode/model/validators.py:708
1312 1312 msgid ""
1313 1313 "The LDAP Login attribute of the CN must be specified - this is the name "
1314 1314 "of the attribute that is equivalent to \"username\""
1315 1315 msgstr ""
1316 1316
1317 1317 #: rhodecode/model/validators.py:727
1318 1318 #, python-format
1319 1319 msgid "Revisions %(revs)s are already part of pull request or have set status"
1320 1320 msgstr ""
1321 1321
1322 1322 #: rhodecode/model/validators.py:759
1323 1323 msgid "Please enter a valid IPv4 or IpV6 address"
1324 1324 msgstr ""
1325 1325
1326 1326 #: rhodecode/model/validators.py:760
1327 1327 #, python-format
1328 1328 msgid "The network size (bits) must be within the range of 0-32 (not %(bits)r)"
1329 1329 msgstr ""
1330 1330
1331 1331 #: rhodecode/templates/index.html:3
1332 1332 msgid "Dashboard"
1333 1333 msgstr ""
1334 1334
1335 1335 #: rhodecode/templates/index_base.html:6
1336 1336 #: rhodecode/templates/repo_switcher_list.html:4
1337 1337 #: rhodecode/templates/admin/repos/repos.html:9
1338 1338 #: rhodecode/templates/admin/users/user_edit_my_account.html:31
1339 1339 #: rhodecode/templates/admin/users/users.html:9
1340 1340 #: rhodecode/templates/bookmarks/bookmarks.html:10
1341 1341 #: rhodecode/templates/branches/branches.html:9
1342 1342 #: rhodecode/templates/journal/journal.html:9
1343 1343 #: rhodecode/templates/journal/journal.html:49
1344 1344 #: rhodecode/templates/journal/journal.html:50
1345 1345 #: rhodecode/templates/tags/tags.html:10
1346 1346 msgid "quick filter..."
1347 1347 msgstr ""
1348 1348
1349 1349 #: rhodecode/templates/index_base.html:6
1350 1350 #: rhodecode/templates/admin/repos/repos.html:9
1351 1351 #: rhodecode/templates/base/base.html:239
1352 1352 msgid "repositories"
1353 1353 msgstr ""
1354 1354
1355 1355 #: rhodecode/templates/index_base.html:14
1356 1356 #: rhodecode/templates/index_base.html:17
1357 1357 #: rhodecode/templates/admin/repos/repo_add.html:5
1358 1358 #: rhodecode/templates/admin/repos/repo_add_create_repository.html:5
1359 1359 #: rhodecode/templates/admin/repos/repos.html:21
1360 1360 msgid "Add repository"
1361 1361 msgstr ""
1362 1362
1363 1363 #: rhodecode/templates/index_base.html:23
1364 1364 msgid "Edit group"
1365 1365 msgstr ""
1366 1366
1367 1367 #: rhodecode/templates/index_base.html:23
1368 1368 msgid "You have admin right to this group, and can edit it"
1369 1369 msgstr ""
1370 1370
1371 1371 #: rhodecode/templates/index_base.html:36
1372 1372 #: rhodecode/templates/index_base.html:140
1373 1373 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:32
1374 1374 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:37
1375 1375 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:33
1376 1376 #: rhodecode/templates/admin/users_groups/users_group_add.html:32
1377 1377 #: rhodecode/templates/admin/users_groups/users_group_edit.html:33
1378 1378 msgid "Group name"
1379 1379 msgstr ""
1380 1380
1381 1381 #: rhodecode/templates/index_base.html:37
1382 1382 #: rhodecode/templates/index_base.html:79
1383 1383 #: rhodecode/templates/index_base.html:142
1384 1384 #: rhodecode/templates/index_base.html:180
1385 1385 #: rhodecode/templates/index_base.html:273
1386 1386 #: rhodecode/templates/admin/repos/repo_add_base.html:56
1387 1387 #: rhodecode/templates/admin/repos/repo_edit.html:75
1388 1388 #: rhodecode/templates/admin/repos/repos.html:73
1389 1389 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:41
1390 1390 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:46
1391 1391 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:34
1392 1392 #: rhodecode/templates/forks/fork.html:59
1393 1393 #: rhodecode/templates/settings/repo_settings.html:66
1394 1394 #: rhodecode/templates/summary/summary.html:114
1395 1395 msgid "Description"
1396 1396 msgstr ""
1397 1397
1398 1398 #: rhodecode/templates/index_base.html:47
1399 1399 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:47
1400 1400 msgid "Repositories group"
1401 1401 msgstr ""
1402 1402
1403 1403 #: rhodecode/templates/index_base.html:78
1404 1404 #: rhodecode/templates/index_base.html:178
1405 1405 #: rhodecode/templates/index_base.html:271
1406 1406 #: rhodecode/templates/admin/permissions/permissions.html:117
1407 1407 #: rhodecode/templates/admin/repos/repo_add_base.html:9
1408 1408 #: rhodecode/templates/admin/repos/repo_edit.html:32
1409 1409 #: rhodecode/templates/admin/repos/repos.html:71
1410 1410 #: rhodecode/templates/admin/users/user_edit.html:200
1411 1411 #: rhodecode/templates/admin/users/user_edit_my_account.html:60
1412 1412 #: rhodecode/templates/admin/users/user_edit_my_account.html:211
1413 1413 #: rhodecode/templates/admin/users_groups/users_group_edit.html:184
1414 1414 #: rhodecode/templates/bookmarks/bookmarks.html:36
1415 1415 #: rhodecode/templates/bookmarks/bookmarks_data.html:6
1416 1416 #: rhodecode/templates/branches/branches.html:50
1417 1417 #: rhodecode/templates/branches/branches_data.html:6
1418 1418 #: rhodecode/templates/files/files_browser.html:47
1419 1419 #: rhodecode/templates/journal/journal.html:201
1420 1420 #: rhodecode/templates/journal/journal.html:305
1421 1421 #: rhodecode/templates/settings/repo_settings.html:31
1422 1422 #: rhodecode/templates/summary/summary.html:43
1423 1423 #: rhodecode/templates/summary/summary.html:132
1424 1424 #: rhodecode/templates/tags/tags.html:51
1425 1425 #: rhodecode/templates/tags/tags_data.html:6
1426 1426 msgid "Name"
1427 1427 msgstr ""
1428 1428
1429 1429 #: rhodecode/templates/index_base.html:80
1430 1430 msgid "Last change"
1431 1431 msgstr ""
1432 1432
1433 1433 #: rhodecode/templates/index_base.html:81
1434 1434 #: rhodecode/templates/index_base.html:183
1435 1435 #: rhodecode/templates/index_base.html:276
1436 1436 #: rhodecode/templates/admin/repos/repos.html:74
1437 1437 #: rhodecode/templates/admin/users/user_edit_my_account.html:213
1438 1438 #: rhodecode/templates/journal/journal.html:203
1439 1439 #: rhodecode/templates/journal/journal.html:307
1440 1440 msgid "Tip"
1441 1441 msgstr ""
1442 1442
1443 1443 #: rhodecode/templates/index_base.html:82
1444 1444 #: rhodecode/templates/index_base.html:185
1445 1445 #: rhodecode/templates/index_base.html:278
1446 1446 #: rhodecode/templates/admin/repos/repo_edit.html:121
1447 1447 #: rhodecode/templates/admin/repos/repos.html:76
1448 1448 msgid "Owner"
1449 1449 msgstr ""
1450 1450
1451 1451 #: rhodecode/templates/index_base.html:83
1452 1452 #: rhodecode/templates/summary/summary.html:48
1453 1453 #: rhodecode/templates/summary/summary.html:51
1454 1454 msgid "RSS"
1455 1455 msgstr ""
1456 1456
1457 1457 #: rhodecode/templates/index_base.html:84
1458 1458 msgid "Atom"
1459 1459 msgstr ""
1460 1460
1461 1461 #: rhodecode/templates/index_base.html:171
1462 1462 #: rhodecode/templates/index_base.html:211
1463 1463 #: rhodecode/templates/index_base.html:300
1464 1464 #: rhodecode/templates/admin/repos/repos.html:97
1465 1465 #: rhodecode/templates/admin/users/user_edit_my_account.html:235
1466 1466 #: rhodecode/templates/admin/users/users.html:107
1467 1467 #: rhodecode/templates/bookmarks/bookmarks.html:60
1468 1468 #: rhodecode/templates/branches/branches.html:76
1469 1469 #: rhodecode/templates/journal/journal.html:225
1470 1470 #: rhodecode/templates/journal/journal.html:329
1471 1471 #: rhodecode/templates/tags/tags.html:77
1472 1472 msgid "Click to sort ascending"
1473 1473 msgstr ""
1474 1474
1475 1475 #: rhodecode/templates/index_base.html:172
1476 1476 #: rhodecode/templates/index_base.html:212
1477 1477 #: rhodecode/templates/index_base.html:301
1478 1478 #: rhodecode/templates/admin/repos/repos.html:98
1479 1479 #: rhodecode/templates/admin/users/user_edit_my_account.html:236
1480 1480 #: rhodecode/templates/admin/users/users.html:108
1481 1481 #: rhodecode/templates/bookmarks/bookmarks.html:61
1482 1482 #: rhodecode/templates/branches/branches.html:77
1483 1483 #: rhodecode/templates/journal/journal.html:226
1484 1484 #: rhodecode/templates/journal/journal.html:330
1485 1485 #: rhodecode/templates/tags/tags.html:78
1486 1486 msgid "Click to sort descending"
1487 1487 msgstr ""
1488 1488
1489 1489 #: rhodecode/templates/index_base.html:181
1490 1490 #: rhodecode/templates/index_base.html:274
1491 1491 msgid "Last Change"
1492 1492 msgstr ""
1493 1493
1494 1494 #: rhodecode/templates/index_base.html:213
1495 1495 #: rhodecode/templates/index_base.html:302
1496 1496 #: rhodecode/templates/admin/repos/repos.html:99
1497 1497 #: rhodecode/templates/admin/users/user_edit_my_account.html:237
1498 1498 #: rhodecode/templates/admin/users/users.html:109
1499 1499 #: rhodecode/templates/bookmarks/bookmarks.html:62
1500 1500 #: rhodecode/templates/branches/branches.html:78
1501 1501 #: rhodecode/templates/journal/journal.html:227
1502 1502 #: rhodecode/templates/journal/journal.html:331
1503 1503 #: rhodecode/templates/tags/tags.html:79
1504 1504 msgid "No records found."
1505 1505 msgstr ""
1506 1506
1507 1507 #: rhodecode/templates/index_base.html:214
1508 1508 #: rhodecode/templates/index_base.html:303
1509 1509 #: rhodecode/templates/admin/repos/repos.html:100
1510 1510 #: rhodecode/templates/admin/users/user_edit_my_account.html:238
1511 1511 #: rhodecode/templates/admin/users/users.html:110
1512 1512 #: rhodecode/templates/bookmarks/bookmarks.html:63
1513 1513 #: rhodecode/templates/branches/branches.html:79
1514 1514 #: rhodecode/templates/journal/journal.html:228
1515 1515 #: rhodecode/templates/journal/journal.html:332
1516 1516 #: rhodecode/templates/tags/tags.html:80
1517 1517 msgid "Data error."
1518 1518 msgstr ""
1519 1519
1520 1520 #: rhodecode/templates/index_base.html:215
1521 1521 #: rhodecode/templates/index_base.html:304
1522 1522 #: rhodecode/templates/admin/repos/repos.html:101
1523 1523 #: rhodecode/templates/admin/users/user_edit_my_account.html:105
1524 1524 #: rhodecode/templates/admin/users/user_edit_my_account.html:239
1525 1525 #: rhodecode/templates/admin/users/users.html:111
1526 1526 #: rhodecode/templates/bookmarks/bookmarks.html:64
1527 1527 #: rhodecode/templates/branches/branches.html:80
1528 1528 #: rhodecode/templates/journal/journal.html:229
1529 1529 #: rhodecode/templates/journal/journal.html:333
1530 1530 #: rhodecode/templates/tags/tags.html:81
1531 1531 msgid "Loading..."
1532 1532 msgstr ""
1533 1533
1534 1534 #: rhodecode/templates/login.html:5 rhodecode/templates/login.html:54
1535 1535 msgid "Sign In"
1536 1536 msgstr ""
1537 1537
1538 1538 #: rhodecode/templates/login.html:21
1539 1539 msgid "Sign In to"
1540 1540 msgstr ""
1541 1541
1542 1542 #: rhodecode/templates/login.html:31 rhodecode/templates/register.html:20
1543 1543 #: rhodecode/templates/admin/admin_log.html:5
1544 1544 #: rhodecode/templates/admin/users/user_add.html:32
1545 1545 #: rhodecode/templates/admin/users/user_edit.html:54
1546 1546 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:26
1547 1547 #: rhodecode/templates/base/base.html:89
1548 1548 #: rhodecode/templates/summary/summary.html:131
1549 1549 msgid "Username"
1550 1550 msgstr ""
1551 1551
1552 1552 #: rhodecode/templates/login.html:40 rhodecode/templates/register.html:29
1553 1553 #: rhodecode/templates/admin/ldap/ldap.html:46
1554 1554 #: rhodecode/templates/admin/users/user_add.html:41
1555 1555 #: rhodecode/templates/base/base.html:98
1556 1556 msgid "Password"
1557 1557 msgstr ""
1558 1558
1559 1559 #: rhodecode/templates/login.html:50
1560 1560 msgid "Remember me"
1561 1561 msgstr ""
1562 1562
1563 1563 #: rhodecode/templates/login.html:60
1564 1564 msgid "Forgot your password ?"
1565 1565 msgstr ""
1566 1566
1567 1567 #: rhodecode/templates/login.html:63 rhodecode/templates/base/base.html:109
1568 1568 msgid "Don't have an account ?"
1569 1569 msgstr ""
1570 1570
1571 1571 #: rhodecode/templates/password_reset.html:5
1572 1572 msgid "Reset your password"
1573 1573 msgstr ""
1574 1574
1575 1575 #: rhodecode/templates/password_reset.html:11
1576 1576 msgid "Reset your password to"
1577 1577 msgstr ""
1578 1578
1579 1579 #: rhodecode/templates/password_reset.html:21
1580 1580 msgid "Email address"
1581 1581 msgstr ""
1582 1582
1583 1583 #: rhodecode/templates/password_reset.html:30
1584 1584 msgid "Reset my password"
1585 1585 msgstr ""
1586 1586
1587 1587 #: rhodecode/templates/password_reset.html:31
1588 1588 msgid "Password reset link will be send to matching email address"
1589 1589 msgstr ""
1590 1590
1591 1591 #: rhodecode/templates/register.html:5 rhodecode/templates/register.html:74
1592 1592 msgid "Sign Up"
1593 1593 msgstr ""
1594 1594
1595 1595 #: rhodecode/templates/register.html:11
1596 1596 msgid "Sign Up to"
1597 1597 msgstr ""
1598 1598
1599 1599 #: rhodecode/templates/register.html:38
1600 1600 msgid "Re-enter password"
1601 1601 msgstr ""
1602 1602
1603 1603 #: rhodecode/templates/register.html:47
1604 1604 #: rhodecode/templates/admin/users/user_add.html:59
1605 1605 #: rhodecode/templates/admin/users/user_edit.html:94
1606 1606 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:57
1607 1607 msgid "First Name"
1608 1608 msgstr ""
1609 1609
1610 1610 #: rhodecode/templates/register.html:56
1611 1611 #: rhodecode/templates/admin/users/user_add.html:68
1612 1612 #: rhodecode/templates/admin/users/user_edit.html:103
1613 1613 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:66
1614 1614 msgid "Last Name"
1615 1615 msgstr ""
1616 1616
1617 1617 #: rhodecode/templates/register.html:65
1618 1618 #: rhodecode/templates/admin/users/user_add.html:77
1619 1619 #: rhodecode/templates/admin/users/user_edit.html:112
1620 1620 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:75
1621 1621 #: rhodecode/templates/summary/summary.html:133
1622 1622 msgid "Email"
1623 1623 msgstr ""
1624 1624
1625 1625 #: rhodecode/templates/register.html:76
1626 1626 msgid "Your account will be activated right after registration"
1627 1627 msgstr ""
1628 1628
1629 1629 #: rhodecode/templates/register.html:78
1630 1630 msgid "Your account must wait for activation by administrator"
1631 1631 msgstr ""
1632 1632
1633 1633 #: rhodecode/templates/repo_switcher_list.html:11
1634 1634 #: rhodecode/templates/admin/defaults/defaults.html:44
1635 1635 #: rhodecode/templates/admin/repos/repo_add_base.html:65
1636 1636 #: rhodecode/templates/admin/repos/repo_edit.html:85
1637 1637 #: rhodecode/templates/settings/repo_settings.html:76
1638 1638 msgid "Private repository"
1639 1639 msgstr ""
1640 1640
1641 1641 #: rhodecode/templates/repo_switcher_list.html:16
1642 1642 msgid "Public repository"
1643 1643 msgstr ""
1644 1644
1645 1645 #: rhodecode/templates/switch_to_list.html:3
1646 1646 #: rhodecode/templates/branches/branches.html:14
1647 1647 msgid "branches"
1648 1648 msgstr ""
1649 1649
1650 1650 #: rhodecode/templates/switch_to_list.html:10
1651 1651 #: rhodecode/templates/branches/branches_data.html:57
1652 1652 msgid "There are no branches yet"
1653 1653 msgstr ""
1654 1654
1655 1655 #: rhodecode/templates/switch_to_list.html:15
1656 1656 #: rhodecode/templates/shortlog/shortlog_data.html:10
1657 1657 #: rhodecode/templates/tags/tags.html:15
1658 1658 msgid "tags"
1659 1659 msgstr ""
1660 1660
1661 1661 #: rhodecode/templates/switch_to_list.html:22
1662 1662 #: rhodecode/templates/tags/tags_data.html:38
1663 1663 msgid "There are no tags yet"
1664 1664 msgstr ""
1665 1665
1666 1666 #: rhodecode/templates/switch_to_list.html:28
1667 1667 #: rhodecode/templates/bookmarks/bookmarks.html:15
1668 1668 msgid "bookmarks"
1669 1669 msgstr ""
1670 1670
1671 1671 #: rhodecode/templates/switch_to_list.html:35
1672 1672 #: rhodecode/templates/bookmarks/bookmarks_data.html:32
1673 1673 msgid "There are no bookmarks yet"
1674 1674 msgstr ""
1675 1675
1676 1676 #: rhodecode/templates/admin/admin.html:5
1677 1677 #: rhodecode/templates/admin/admin.html:13
1678 1678 msgid "Admin journal"
1679 1679 msgstr ""
1680 1680
1681 1681 #: rhodecode/templates/admin/admin.html:10
1682 1682 msgid "journal filter..."
1683 1683 msgstr ""
1684 1684
1685 1685 #: rhodecode/templates/admin/admin.html:12
1686 1686 #: rhodecode/templates/journal/journal.html:11
1687 1687 msgid "filter"
1688 1688 msgstr ""
1689 1689
1690 1690 #: rhodecode/templates/admin/admin.html:13
1691 1691 #: rhodecode/templates/journal/journal.html:12
1692 1692 #, python-format
1693 1693 msgid "%s entry"
1694 1694 msgid_plural "%s entries"
1695 1695 msgstr[0] ""
1696 1696 msgstr[1] ""
1697 1697
1698 1698 #: rhodecode/templates/admin/admin_log.html:6
1699 1699 #: rhodecode/templates/admin/repos/repos.html:77
1700 1700 #: rhodecode/templates/admin/users/user_edit_my_account.html:215
1701 1701 #: rhodecode/templates/journal/journal.html:205
1702 1702 #: rhodecode/templates/journal/journal.html:309
1703 1703 msgid "Action"
1704 1704 msgstr ""
1705 1705
1706 1706 #: rhodecode/templates/admin/admin_log.html:7
1707 1707 #: rhodecode/templates/admin/permissions/permissions.html:41
1708 1708 msgid "Repository"
1709 1709 msgstr ""
1710 1710
1711 1711 #: rhodecode/templates/admin/admin_log.html:8
1712 1712 #: rhodecode/templates/bookmarks/bookmarks.html:37
1713 1713 #: rhodecode/templates/bookmarks/bookmarks_data.html:7
1714 1714 #: rhodecode/templates/branches/branches.html:51
1715 1715 #: rhodecode/templates/branches/branches_data.html:7
1716 1716 #: rhodecode/templates/tags/tags.html:52
1717 1717 #: rhodecode/templates/tags/tags_data.html:7
1718 1718 msgid "Date"
1719 1719 msgstr ""
1720 1720
1721 1721 #: rhodecode/templates/admin/admin_log.html:9
1722 1722 msgid "From IP"
1723 1723 msgstr ""
1724 1724
1725 1725 #: rhodecode/templates/admin/admin_log.html:63
1726 1726 msgid "No actions yet"
1727 1727 msgstr ""
1728 1728
1729 1729 #: rhodecode/templates/admin/defaults/defaults.html:5
1730 1730 #: rhodecode/templates/admin/defaults/defaults.html:25
1731 1731 msgid "Repositories defaults"
1732 1732 msgstr ""
1733 1733
1734 1734 #: rhodecode/templates/admin/defaults/defaults.html:11
1735 1735 msgid "Defaults"
1736 1736 msgstr ""
1737 1737
1738 1738 #: rhodecode/templates/admin/defaults/defaults.html:35
1739 1739 #: rhodecode/templates/admin/repos/repo_add_base.html:38
1740 1740 #: rhodecode/templates/admin/repos/repo_edit.html:58
1741 1741 msgid "Type"
1742 1742 msgstr ""
1743 1743
1744 1744 #: rhodecode/templates/admin/defaults/defaults.html:48
1745 1745 #: rhodecode/templates/admin/repos/repo_add_base.html:69
1746 1746 #: rhodecode/templates/admin/repos/repo_edit.html:89
1747 1747 #: rhodecode/templates/forks/fork.html:72
1748 1748 #: rhodecode/templates/settings/repo_settings.html:80
1749 1749 msgid ""
1750 1750 "Private repositories are only visible to people explicitly added as "
1751 1751 "collaborators."
1752 1752 msgstr ""
1753 1753
1754 1754 #: rhodecode/templates/admin/defaults/defaults.html:55
1755 1755 #: rhodecode/templates/admin/repos/repo_edit.html:94
1756 1756 msgid "Enable statistics"
1757 1757 msgstr ""
1758 1758
1759 1759 #: rhodecode/templates/admin/defaults/defaults.html:59
1760 1760 #: rhodecode/templates/admin/repos/repo_edit.html:98
1761 1761 msgid "Enable statistics window on summary page."
1762 1762 msgstr ""
1763 1763
1764 1764 #: rhodecode/templates/admin/defaults/defaults.html:65
1765 1765 #: rhodecode/templates/admin/repos/repo_edit.html:103
1766 1766 msgid "Enable downloads"
1767 1767 msgstr ""
1768 1768
1769 1769 #: rhodecode/templates/admin/defaults/defaults.html:69
1770 1770 #: rhodecode/templates/admin/repos/repo_edit.html:107
1771 1771 msgid "Enable download menu on summary page."
1772 1772 msgstr ""
1773 1773
1774 1774 #: rhodecode/templates/admin/defaults/defaults.html:75
1775 1775 #: rhodecode/templates/admin/repos/repo_edit.html:112
1776 1776 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:71
1777 1777 msgid "Enable locking"
1778 1778 msgstr ""
1779 1779
1780 1780 #: rhodecode/templates/admin/defaults/defaults.html:79
1781 1781 #: rhodecode/templates/admin/repos/repo_edit.html:116
1782 1782 msgid "Enable lock-by-pulling on repository."
1783 1783 msgstr ""
1784 1784
1785 1785 #: rhodecode/templates/admin/defaults/defaults.html:84
1786 1786 #: rhodecode/templates/admin/ldap/ldap.html:89
1787 1787 #: rhodecode/templates/admin/permissions/permissions.html:92
1788 1788 #: rhodecode/templates/admin/repos/repo_edit.html:141
1789 1789 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:79
1790 1790 #: rhodecode/templates/admin/settings/hooks.html:73
1791 1791 #: rhodecode/templates/admin/users/user_edit.html:137
1792 1792 #: rhodecode/templates/admin/users/user_edit.html:182
1793 1793 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:83
1794 1794 #: rhodecode/templates/admin/users_groups/users_group_edit.html:135
1795 1795 #: rhodecode/templates/settings/repo_settings.html:94
1796 1796 msgid "Save"
1797 1797 msgstr ""
1798 1798
1799 1799 #: rhodecode/templates/admin/ldap/ldap.html:5
1800 1800 msgid "LDAP administration"
1801 1801 msgstr ""
1802 1802
1803 1803 #: rhodecode/templates/admin/ldap/ldap.html:11
1804 1804 msgid "Ldap"
1805 1805 msgstr ""
1806 1806
1807 1807 #: rhodecode/templates/admin/ldap/ldap.html:28
1808 1808 msgid "Connection settings"
1809 1809 msgstr ""
1810 1810
1811 1811 #: rhodecode/templates/admin/ldap/ldap.html:30
1812 1812 msgid "Enable LDAP"
1813 1813 msgstr ""
1814 1814
1815 1815 #: rhodecode/templates/admin/ldap/ldap.html:34
1816 1816 msgid "Host"
1817 1817 msgstr ""
1818 1818
1819 1819 #: rhodecode/templates/admin/ldap/ldap.html:38
1820 1820 msgid "Port"
1821 1821 msgstr ""
1822 1822
1823 1823 #: rhodecode/templates/admin/ldap/ldap.html:42
1824 1824 msgid "Account"
1825 1825 msgstr ""
1826 1826
1827 1827 #: rhodecode/templates/admin/ldap/ldap.html:50
1828 1828 msgid "Connection security"
1829 1829 msgstr ""
1830 1830
1831 1831 #: rhodecode/templates/admin/ldap/ldap.html:54
1832 1832 msgid "Certificate Checks"
1833 1833 msgstr ""
1834 1834
1835 1835 #: rhodecode/templates/admin/ldap/ldap.html:57
1836 1836 msgid "Search settings"
1837 1837 msgstr ""
1838 1838
1839 1839 #: rhodecode/templates/admin/ldap/ldap.html:59
1840 1840 msgid "Base DN"
1841 1841 msgstr ""
1842 1842
1843 1843 #: rhodecode/templates/admin/ldap/ldap.html:63
1844 1844 msgid "LDAP Filter"
1845 1845 msgstr ""
1846 1846
1847 1847 #: rhodecode/templates/admin/ldap/ldap.html:67
1848 1848 msgid "LDAP Search Scope"
1849 1849 msgstr ""
1850 1850
1851 1851 #: rhodecode/templates/admin/ldap/ldap.html:70
1852 1852 msgid "Attribute mappings"
1853 1853 msgstr ""
1854 1854
1855 1855 #: rhodecode/templates/admin/ldap/ldap.html:72
1856 1856 msgid "Login Attribute"
1857 1857 msgstr ""
1858 1858
1859 1859 #: rhodecode/templates/admin/ldap/ldap.html:76
1860 1860 msgid "First Name Attribute"
1861 1861 msgstr ""
1862 1862
1863 1863 #: rhodecode/templates/admin/ldap/ldap.html:80
1864 1864 msgid "Last Name Attribute"
1865 1865 msgstr ""
1866 1866
1867 1867 #: rhodecode/templates/admin/ldap/ldap.html:84
1868 1868 msgid "E-mail Attribute"
1869 1869 msgstr ""
1870 1870
1871 1871 #: rhodecode/templates/admin/notifications/notifications.html:5
1872 1872 #: rhodecode/templates/admin/notifications/notifications.html:9
1873 1873 msgid "My Notifications"
1874 1874 msgstr ""
1875 1875
1876 1876 #: rhodecode/templates/admin/notifications/notifications.html:29
1877 1877 msgid "All"
1878 1878 msgstr ""
1879 1879
1880 1880 #: rhodecode/templates/admin/notifications/notifications.html:30
1881 1881 #, fuzzy
1882 1882 msgid "Comments"
1883 1883 msgstr ""
1884 1884
1885 1885 #: rhodecode/templates/admin/notifications/notifications.html:31
1886 1886 #: rhodecode/templates/base/base.html:272
1887 1887 #: rhodecode/templates/base/base.html:274
1888 1888 msgid "Pull requests"
1889 1889 msgstr ""
1890 1890
1891 1891 #: rhodecode/templates/admin/notifications/notifications.html:35
1892 1892 msgid "Mark all read"
1893 1893 msgstr ""
1894 1894
1895 1895 #: rhodecode/templates/admin/notifications/notifications_data.html:39
1896 1896 msgid "No notifications here yet"
1897 1897 msgstr ""
1898 1898
1899 1899 #: rhodecode/templates/admin/notifications/show_notification.html:5
1900 1900 #: rhodecode/templates/admin/notifications/show_notification.html:11
1901 1901 msgid "Show notification"
1902 1902 msgstr ""
1903 1903
1904 1904 #: rhodecode/templates/admin/notifications/show_notification.html:9
1905 1905 msgid "Notifications"
1906 1906 msgstr ""
1907 1907
1908 1908 #: rhodecode/templates/admin/permissions/permissions.html:5
1909 1909 msgid "Permissions administration"
1910 1910 msgstr ""
1911 1911
1912 1912 #: rhodecode/templates/admin/permissions/permissions.html:11
1913 1913 #: rhodecode/templates/admin/repos/repo_edit.html:134
1914 1914 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:63
1915 1915 #: rhodecode/templates/admin/users/user_edit.html:147
1916 1916 #: rhodecode/templates/admin/users_groups/users_group_edit.html:100
1917 1917 #: rhodecode/templates/settings/repo_settings.html:86
1918 1918 msgid "Permissions"
1919 1919 msgstr ""
1920 1920
1921 1921 #: rhodecode/templates/admin/permissions/permissions.html:24
1922 1922 msgid "Default permissions"
1923 1923 msgstr ""
1924 1924
1925 1925 #: rhodecode/templates/admin/permissions/permissions.html:31
1926 1926 msgid "Anonymous access"
1927 1927 msgstr ""
1928 1928
1929 1929 #: rhodecode/templates/admin/permissions/permissions.html:49
1930 1930 msgid ""
1931 1931 "All default permissions on each repository will be reset to choosen "
1932 1932 "permission, note that all custom default permission on repositories will "
1933 1933 "be lost"
1934 1934 msgstr ""
1935 1935
1936 1936 #: rhodecode/templates/admin/permissions/permissions.html:50
1937 1937 #: rhodecode/templates/admin/permissions/permissions.html:63
1938 1938 msgid "overwrite existing settings"
1939 1939 msgstr ""
1940 1940
1941 1941 #: rhodecode/templates/admin/permissions/permissions.html:55
1942 1942 #: rhodecode/templates/admin/repos/repo_add_base.html:29
1943 1943 #: rhodecode/templates/admin/repos/repo_edit.html:49
1944 1944 #: rhodecode/templates/admin/repos_groups/repos_groups.html:4
1945 1945 #: rhodecode/templates/forks/fork.html:50
1946 1946 #: rhodecode/templates/settings/repo_settings.html:48
1947 1947 msgid "Repository group"
1948 1948 msgstr ""
1949 1949
1950 1950 #: rhodecode/templates/admin/permissions/permissions.html:62
1951 1951 msgid ""
1952 1952 "All default permissions on each repository group will be reset to choosen"
1953 1953 " permission, note that all custom default permission on repositories "
1954 1954 "group will be lost"
1955 1955 msgstr ""
1956 1956
1957 1957 #: rhodecode/templates/admin/permissions/permissions.html:69
1958 1958 msgid "Registration"
1959 1959 msgstr ""
1960 1960
1961 1961 #: rhodecode/templates/admin/permissions/permissions.html:77
1962 1962 msgid "Repository creation"
1963 1963 msgstr ""
1964 1964
1965 1965 #: rhodecode/templates/admin/permissions/permissions.html:85
1966 1966 msgid "Repository forking"
1967 1967 msgstr ""
1968 1968
1969 1969 #: rhodecode/templates/admin/permissions/permissions.html:93
1970 1970 #: rhodecode/templates/admin/permissions/permissions.html:209
1971 1971 #: rhodecode/templates/admin/repos/repo_edit.html:142
1972 1972 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:80
1973 1973 #: rhodecode/templates/admin/settings/settings.html:113
1974 1974 #: rhodecode/templates/admin/settings/settings.html:179
1975 1975 #: rhodecode/templates/admin/settings/settings.html:269
1976 1976 #: rhodecode/templates/admin/users/user_edit.html:138
1977 1977 #: rhodecode/templates/admin/users/user_edit.html:183
1978 1978 #: rhodecode/templates/admin/users/user_edit.html:286
1979 1979 #: rhodecode/templates/admin/users/user_edit.html:334
1980 1980 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:84
1981 1981 #: rhodecode/templates/admin/users_groups/users_group_edit.html:136
1982 1982 #: rhodecode/templates/files/files_add.html:82
1983 1983 #: rhodecode/templates/files/files_edit.html:68
1984 1984 #: rhodecode/templates/pullrequests/pullrequest.html:124
1985 1985 #: rhodecode/templates/settings/repo_settings.html:95
1986 1986 msgid "Reset"
1987 1987 msgstr ""
1988 1988
1989 1989 #: rhodecode/templates/admin/permissions/permissions.html:103
1990 1990 msgid "Default User Permissions"
1991 1991 msgstr ""
1992 1992
1993 1993 #: rhodecode/templates/admin/permissions/permissions.html:111
1994 1994 #: rhodecode/templates/admin/users/user_edit.html:194
1995 1995 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:22
1996 1996 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:39
1997 1997 msgid "Nothing here yet"
1998 1998 msgstr ""
1999 1999
2000 2000 #: rhodecode/templates/admin/permissions/permissions.html:118
2001 2001 #: rhodecode/templates/admin/users/user_edit.html:201
2002 2002 #: rhodecode/templates/admin/users/user_edit_my_account.html:61
2003 2003 #: rhodecode/templates/admin/users_groups/users_group_edit.html:185
2004 2004 msgid "Permission"
2005 2005 msgstr ""
2006 2006
2007 2007 #: rhodecode/templates/admin/permissions/permissions.html:119
2008 2008 #: rhodecode/templates/admin/users/user_edit.html:202
2009 2009 #: rhodecode/templates/admin/users_groups/users_group_edit.html:186
2010 2010 msgid "Edit Permission"
2011 2011 msgstr ""
2012 2012
2013 2013 #: rhodecode/templates/admin/permissions/permissions.html:149
2014 2014 #: rhodecode/templates/admin/permissions/permissions.html:151
2015 2015 #: rhodecode/templates/admin/repos/repo_edit.html:13
2016 2016 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:54
2017 2017 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:55
2018 2018 #: rhodecode/templates/admin/users/user_edit.html:13
2019 2019 #: rhodecode/templates/admin/users/user_edit.html:232
2020 2020 #: rhodecode/templates/admin/users/user_edit.html:234
2021 2021 #: rhodecode/templates/admin/users_groups/users_group_edit.html:13
2022 2022 #: rhodecode/templates/admin/users_groups/users_group_edit.html:207
2023 2023 #: rhodecode/templates/admin/users_groups/users_group_edit.html:209
2024 2024 #: rhodecode/templates/data_table/_dt_elements.html:116
2025 2025 #: rhodecode/templates/data_table/_dt_elements.html:117
2026 2026 msgid "edit"
2027 2027 msgstr ""
2028 2028
2029 2029 #: rhodecode/templates/admin/permissions/permissions.html:168
2030 2030 #: rhodecode/templates/admin/users/user_edit.html:295
2031 2031 msgid "Allowed IP addresses"
2032 2032 msgstr ""
2033 2033
2034 2034 #: rhodecode/templates/admin/permissions/permissions.html:182
2035 2035 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:60
2036 2036 #: rhodecode/templates/admin/users/user_edit.html:263
2037 2037 #: rhodecode/templates/admin/users/user_edit.html:308
2038 2038 #: rhodecode/templates/admin/users_groups/users_groups.html:44
2039 2039 #: rhodecode/templates/data_table/_dt_elements.html:122
2040 2040 #: rhodecode/templates/data_table/_dt_elements.html:130
2041 2041 msgid "delete"
2042 2042 msgstr ""
2043 2043
2044 2044 #: rhodecode/templates/admin/permissions/permissions.html:183
2045 2045 #: rhodecode/templates/admin/users/user_edit.html:309
2046 2046 #, fuzzy, python-format
2047 2047 msgid "Confirm to delete this ip: %s"
2048 2048 msgstr ""
2049 2049
2050 2050 #: rhodecode/templates/admin/permissions/permissions.html:189
2051 2051 #: rhodecode/templates/admin/users/user_edit.html:315
2052 2052 msgid "All IP addresses are allowed"
2053 2053 msgstr ""
2054 2054
2055 2055 #: rhodecode/templates/admin/permissions/permissions.html:200
2056 2056 #: rhodecode/templates/admin/users/user_edit.html:326
2057 2057 msgid "New ip address"
2058 2058 msgstr ""
2059 2059
2060 2060 #: rhodecode/templates/admin/permissions/permissions.html:208
2061 2061 #: rhodecode/templates/admin/users/user_edit.html:285
2062 2062 #: rhodecode/templates/admin/users/user_edit.html:333
2063 2063 msgid "Add"
2064 2064 msgstr ""
2065 2065
2066 2066 #: rhodecode/templates/admin/repos/repo_add.html:11
2067 2067 #: rhodecode/templates/admin/repos/repo_edit.html:11
2068 2068 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:10
2069 2069 #: rhodecode/templates/base/base.html:154
2070 2070 msgid "Repositories"
2071 2071 msgstr ""
2072 2072
2073 2073 #: rhodecode/templates/admin/repos/repo_add.html:13
2074 2074 msgid "add new"
2075 2075 msgstr ""
2076 2076
2077 2077 #: rhodecode/templates/admin/repos/repo_add_base.html:20
2078 2078 #: rhodecode/templates/summary/summary.html:104
2079 2079 #: rhodecode/templates/summary/summary.html:105
2080 2080 msgid "Clone from"
2081 2081 msgstr ""
2082 2082
2083 2083 #: rhodecode/templates/admin/repos/repo_add_base.html:24
2084 2084 #: rhodecode/templates/admin/repos/repo_edit.html:44
2085 2085 #: rhodecode/templates/settings/repo_settings.html:43
2086 2086 msgid "Optional http[s] url from which repository should be cloned."
2087 2087 msgstr ""
2088 2088
2089 2089 #: rhodecode/templates/admin/repos/repo_add_base.html:33
2090 2090 #: rhodecode/templates/forks/fork.html:54
2091 2091 msgid "Optionaly select a group to put this repository into."
2092 2092 msgstr ""
2093 2093
2094 2094 #: rhodecode/templates/admin/repos/repo_add_base.html:42
2095 2095 msgid "Type of repository to create."
2096 2096 msgstr ""
2097 2097
2098 2098 #: rhodecode/templates/admin/repos/repo_add_base.html:47
2099 2099 #: rhodecode/templates/admin/repos/repo_edit.html:66
2100 2100 #: rhodecode/templates/forks/fork.html:41
2101 2101 #: rhodecode/templates/settings/repo_settings.html:57
2102 2102 msgid "Landing revision"
2103 2103 msgstr ""
2104 2104
2105 2105 #: rhodecode/templates/admin/repos/repo_add_base.html:51
2106 2106 #: rhodecode/templates/admin/repos/repo_edit.html:70
2107 2107 #: rhodecode/templates/forks/fork.html:45
2108 2108 #: rhodecode/templates/settings/repo_settings.html:61
2109 2109 msgid "Default revision for files page, downloads, whoosh and readme"
2110 2110 msgstr ""
2111 2111
2112 2112 #: rhodecode/templates/admin/repos/repo_add_base.html:60
2113 2113 #: rhodecode/templates/admin/repos/repo_edit.html:79
2114 2114 #: rhodecode/templates/forks/fork.html:63
2115 2115 #: rhodecode/templates/settings/repo_settings.html:70
2116 2116 msgid "Keep it short and to the point. Use a README file for longer descriptions."
2117 2117 msgstr ""
2118 2118
2119 2119 #: rhodecode/templates/admin/repos/repo_add_base.html:73
2120 2120 msgid "add"
2121 2121 msgstr ""
2122 2122
2123 2123 #: rhodecode/templates/admin/repos/repo_add_create_repository.html:9
2124 2124 msgid "add new repository"
2125 2125 msgstr ""
2126 2126
2127 2127 #: rhodecode/templates/admin/repos/repo_edit.html:5
2128 2128 msgid "Edit repository"
2129 2129 msgstr ""
2130 2130
2131 2131 #: rhodecode/templates/admin/repos/repo_edit.html:40
2132 2132 #: rhodecode/templates/settings/repo_settings.html:39
2133 2133 msgid "Clone uri"
2134 2134 msgstr ""
2135 2135
2136 2136 #: rhodecode/templates/admin/repos/repo_edit.html:53
2137 2137 #: rhodecode/templates/settings/repo_settings.html:52
2138 2138 msgid "Optional select a group to put this repository into."
2139 2139 msgstr ""
2140 2140
2141 2141 #: rhodecode/templates/admin/repos/repo_edit.html:126
2142 2142 msgid "Change owner of this repository."
2143 2143 msgstr ""
2144 2144
2145 2145 #: rhodecode/templates/admin/repos/repo_edit.html:152
2146 2146 msgid "Administration"
2147 2147 msgstr ""
2148 2148
2149 2149 #: rhodecode/templates/admin/repos/repo_edit.html:155
2150 2150 msgid "Statistics"
2151 2151 msgstr ""
2152 2152
2153 2153 #: rhodecode/templates/admin/repos/repo_edit.html:159
2154 2154 msgid "Reset current statistics"
2155 2155 msgstr ""
2156 2156
2157 2157 #: rhodecode/templates/admin/repos/repo_edit.html:159
2158 2158 msgid "Confirm to remove current statistics"
2159 2159 msgstr ""
2160 2160
2161 2161 #: rhodecode/templates/admin/repos/repo_edit.html:162
2162 2162 msgid "Fetched to rev"
2163 2163 msgstr ""
2164 2164
2165 2165 #: rhodecode/templates/admin/repos/repo_edit.html:163
2166 2166 msgid "Stats gathered"
2167 2167 msgstr ""
2168 2168
2169 2169 #: rhodecode/templates/admin/repos/repo_edit.html:171
2170 2170 msgid "Remote"
2171 2171 msgstr ""
2172 2172
2173 2173 #: rhodecode/templates/admin/repos/repo_edit.html:175
2174 2174 msgid "Pull changes from remote location"
2175 2175 msgstr ""
2176 2176
2177 2177 #: rhodecode/templates/admin/repos/repo_edit.html:175
2178 2178 msgid "Confirm to pull changes from remote side"
2179 2179 msgstr ""
2180 2180
2181 2181 #: rhodecode/templates/admin/repos/repo_edit.html:186
2182 2182 msgid "Cache"
2183 2183 msgstr ""
2184 2184
2185 2185 #: rhodecode/templates/admin/repos/repo_edit.html:190
2186 2186 msgid "Invalidate repository cache"
2187 2187 msgstr ""
2188 2188
2189 2189 #: rhodecode/templates/admin/repos/repo_edit.html:190
2190 2190 msgid "Confirm to invalidate repository cache"
2191 2191 msgstr ""
2192 2192
2193 2193 #: rhodecode/templates/admin/repos/repo_edit.html:193
2194 2194 msgid ""
2195 2195 "Manually invalidate cache for this repository. On first access repository"
2196 2196 " will be cached again"
2197 2197 msgstr ""
2198 2198
2199 2199 #: rhodecode/templates/admin/repos/repo_edit.html:198
2200 2200 msgid "List of cached values"
2201 2201 msgstr ""
2202 2202
2203 2203 #: rhodecode/templates/admin/repos/repo_edit.html:201
2204 2204 msgid "Prefix"
2205 2205 msgstr ""
2206 2206
2207 2207 #: rhodecode/templates/admin/repos/repo_edit.html:202
2208 2208 msgid "Key"
2209 2209 msgstr ""
2210 2210
2211 2211 #: rhodecode/templates/admin/repos/repo_edit.html:203
2212 2212 #: rhodecode/templates/admin/users/user_add.html:86
2213 2213 #: rhodecode/templates/admin/users/user_edit.html:121
2214 2214 #: rhodecode/templates/admin/users_groups/users_group_add.html:41
2215 2215 #: rhodecode/templates/admin/users_groups/users_group_edit.html:42
2216 2216 msgid "Active"
2217 2217 msgstr ""
2218 2218
2219 2219 #: rhodecode/templates/admin/repos/repo_edit.html:218
2220 2220 #: rhodecode/templates/base/base.html:306
2221 2221 #: rhodecode/templates/base/base.html:308
2222 2222 #: rhodecode/templates/base/base.html:310
2223 2223 msgid "Public journal"
2224 2224 msgstr ""
2225 2225
2226 2226 #: rhodecode/templates/admin/repos/repo_edit.html:224
2227 2227 msgid "Remove from public journal"
2228 2228 msgstr ""
2229 2229
2230 2230 #: rhodecode/templates/admin/repos/repo_edit.html:226
2231 2231 msgid "Add to public journal"
2232 2232 msgstr ""
2233 2233
2234 2234 #: rhodecode/templates/admin/repos/repo_edit.html:231
2235 2235 msgid ""
2236 2236 "All actions made on this repository will be accessible to everyone in "
2237 2237 "public journal"
2238 2238 msgstr ""
2239 2239
2240 2240 #: rhodecode/templates/admin/repos/repo_edit.html:238
2241 2241 msgid "Locking"
2242 2242 msgstr ""
2243 2243
2244 2244 #: rhodecode/templates/admin/repos/repo_edit.html:243
2245 2245 msgid "Unlock locked repo"
2246 2246 msgstr ""
2247 2247
2248 2248 #: rhodecode/templates/admin/repos/repo_edit.html:243
2249 2249 msgid "Confirm to unlock repository"
2250 2250 msgstr ""
2251 2251
2252 2252 #: rhodecode/templates/admin/repos/repo_edit.html:246
2253 2253 msgid "lock repo"
2254 2254 msgstr ""
2255 2255
2256 2256 #: rhodecode/templates/admin/repos/repo_edit.html:246
2257 2257 msgid "Confirm to lock repository"
2258 2258 msgstr ""
2259 2259
2260 2260 #: rhodecode/templates/admin/repos/repo_edit.html:247
2261 2261 msgid "Repository is not locked"
2262 2262 msgstr ""
2263 2263
2264 2264 #: rhodecode/templates/admin/repos/repo_edit.html:252
2265 2265 msgid "Force locking on repository. Works only when anonymous access is disabled"
2266 2266 msgstr ""
2267 2267
2268 2268 #: rhodecode/templates/admin/repos/repo_edit.html:259
2269 2269 msgid "Set as fork of"
2270 2270 msgstr ""
2271 2271
2272 2272 #: rhodecode/templates/admin/repos/repo_edit.html:264
2273 2273 msgid "set"
2274 2274 msgstr ""
2275 2275
2276 2276 #: rhodecode/templates/admin/repos/repo_edit.html:268
2277 2277 msgid "Manually set this repository as a fork of another from the list"
2278 2278 msgstr ""
2279 2279
2280 2280 #: rhodecode/templates/admin/repos/repo_edit.html:274
2281 2281 #: rhodecode/templates/changeset/changeset_file_comment.html:41
2282 2282 msgid "Delete"
2283 2283 msgstr ""
2284 2284
2285 2285 #: rhodecode/templates/admin/repos/repo_edit.html:278
2286 2286 #: rhodecode/templates/settings/repo_settings.html:115
2287 2287 msgid "Remove this repository"
2288 2288 msgstr ""
2289 2289
2290 2290 #: rhodecode/templates/admin/repos/repo_edit.html:278
2291 2291 #: rhodecode/templates/settings/repo_settings.html:115
2292 2292 msgid "Confirm to delete this repository"
2293 2293 msgstr ""
2294 2294
2295 2295 #: rhodecode/templates/admin/repos/repo_edit.html:282
2296 2296 #: rhodecode/templates/settings/repo_settings.html:119
2297 2297 msgid ""
2298 2298 "This repository will be renamed in a special way in order to be "
2299 2299 "unaccesible for RhodeCode and VCS systems. If you need fully delete it "
2300 2300 "from file system please do it manually"
2301 2301 msgstr ""
2302 2302
2303 2303 #: rhodecode/templates/admin/repos/repo_edit_perms.html:3
2304 2304 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:3
2305 2305 msgid "none"
2306 2306 msgstr ""
2307 2307
2308 2308 #: rhodecode/templates/admin/repos/repo_edit_perms.html:4
2309 2309 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:4
2310 2310 msgid "read"
2311 2311 msgstr ""
2312 2312
2313 2313 #: rhodecode/templates/admin/repos/repo_edit_perms.html:5
2314 2314 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:5
2315 2315 msgid "write"
2316 2316 msgstr ""
2317 2317
2318 2318 #: rhodecode/templates/admin/repos/repo_edit_perms.html:6
2319 2319 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:6
2320 2320 #: rhodecode/templates/admin/users/users.html:85
2321 2321 #: rhodecode/templates/base/base.html:235
2322 2322 msgid "admin"
2323 2323 msgstr ""
2324 2324
2325 2325 #: rhodecode/templates/admin/repos/repo_edit_perms.html:7
2326 2326 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:7
2327 2327 msgid "member"
2328 2328 msgstr ""
2329 2329
2330 2330 #: rhodecode/templates/admin/repos/repo_edit_perms.html:16
2331 2331 #: rhodecode/templates/data_table/_dt_elements.html:61
2332 2332 #: rhodecode/templates/summary/summary.html:85
2333 2333 msgid "private repository"
2334 2334 msgstr ""
2335 2335
2336 2336 #: rhodecode/templates/admin/repos/repo_edit_perms.html:19
2337 2337 #: rhodecode/templates/admin/repos/repo_edit_perms.html:28
2338 2338 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:18
2339 2339 msgid "default"
2340 2340 msgstr ""
2341 2341
2342 2342 #: rhodecode/templates/admin/repos/repo_edit_perms.html:33
2343 2343 #: rhodecode/templates/admin/repos/repo_edit_perms.html:58
2344 2344 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:23
2345 2345 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:42
2346 2346 msgid "revoke"
2347 2347 msgstr ""
2348 2348
2349 2349 #: rhodecode/templates/admin/repos/repo_edit_perms.html:83
2350 2350 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:67
2351 2351 msgid "Add another member"
2352 2352 msgstr ""
2353 2353
2354 2354 #: rhodecode/templates/admin/repos/repo_edit_perms.html:97
2355 2355 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:87
2356 2356 msgid "Failed to remove user"
2357 2357 msgstr ""
2358 2358
2359 2359 #: rhodecode/templates/admin/repos/repo_edit_perms.html:112
2360 2360 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:103
2361 2361 msgid "Failed to remove users group"
2362 2362 msgstr ""
2363 2363
2364 2364 #: rhodecode/templates/admin/repos/repos.html:5
2365 2365 msgid "Repositories administration"
2366 2366 msgstr ""
2367 2367
2368 2368 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:73
2369 2369 msgid "apply to children"
2370 2370 msgstr ""
2371 2371
2372 2372 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:74
2373 2373 msgid ""
2374 2374 "Set or revoke permission to all children of that group, including non-"
2375 2375 "private repositories and other groups"
2376 2376 msgstr ""
2377 2377
2378 2378 #: rhodecode/templates/admin/repos_groups/repos_groups.html:9
2379 2379 #: rhodecode/templates/base/base.html:128
2380 2380 #: rhodecode/templates/bookmarks/bookmarks.html:11
2381 2381 #: rhodecode/templates/branches/branches.html:10
2382 2382 #: rhodecode/templates/changelog/changelog.html:10
2383 2383 #: rhodecode/templates/changeset/changeset.html:10
2384 2384 #: rhodecode/templates/changeset/changeset_range.html:9
2385 2385 #: rhodecode/templates/compare/compare_diff.html:9
2386 2386 #: rhodecode/templates/files/file_diff.html:8
2387 2387 #: rhodecode/templates/files/files.html:8
2388 2388 #: rhodecode/templates/files/files_add.html:15
2389 2389 #: rhodecode/templates/files/files_edit.html:15
2390 2390 #: rhodecode/templates/followers/followers.html:9
2391 2391 #: rhodecode/templates/forks/fork.html:9 rhodecode/templates/forks/forks.html:9
2392 2392 #: rhodecode/templates/pullrequests/pullrequest.html:8
2393 2393 #: rhodecode/templates/pullrequests/pullrequest_show.html:8
2394 2394 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:8
2395 2395 #: rhodecode/templates/settings/repo_settings.html:9
2396 2396 #: rhodecode/templates/shortlog/shortlog.html:10
2397 2397 #: rhodecode/templates/summary/summary.html:8
2398 2398 #: rhodecode/templates/tags/tags.html:11
2399 2399 msgid "Home"
2400 2400 msgstr ""
2401 2401
2402 2402 #: rhodecode/templates/admin/repos_groups/repos_groups.html:13
2403 2403 msgid "with"
2404 2404 msgstr ""
2405 2405
2406 2406 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:5
2407 2407 msgid "Add repos group"
2408 2408 msgstr ""
2409 2409
2410 2410 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:10
2411 2411 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:10
2412 2412 msgid "Repos groups"
2413 2413 msgstr ""
2414 2414
2415 2415 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:12
2416 2416 msgid "add new repos group"
2417 2417 msgstr ""
2418 2418
2419 2419 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:50
2420 2420 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:55
2421 2421 msgid "Group parent"
2422 2422 msgstr ""
2423 2423
2424 2424 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:58
2425 2425 #: rhodecode/templates/admin/users/user_add.html:94
2426 2426 #: rhodecode/templates/admin/users_groups/users_group_add.html:49
2427 2427 #: rhodecode/templates/admin/users_groups/users_group_edit.html:90
2428 2428 #: rhodecode/templates/pullrequests/pullrequest_show.html:149
2429 2429 msgid "save"
2430 2430 msgstr ""
2431 2431
2432 2432 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:5
2433 2433 msgid "Edit repos group"
2434 2434 msgstr ""
2435 2435
2436 2436 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:12
2437 2437 msgid "edit repos group"
2438 2438 msgstr ""
2439 2439
2440 2440 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:26
2441 2441 msgid "Add new child group"
2442 2442 msgstr ""
2443 2443
2444 2444 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:75
2445 2445 msgid ""
2446 2446 "Enable lock-by-pulling on group. This option will be applied to all other"
2447 2447 " groups and repositories inside"
2448 2448 msgstr ""
2449 2449
2450 2450 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:5
2451 2451 msgid "Repositories groups administration"
2452 2452 msgstr ""
2453 2453
2454 2454 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:22
2455 2455 msgid "Add new group"
2456 2456 msgstr ""
2457 2457
2458 2458 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:35
2459 2459 msgid "Number of toplevel repositories"
2460 2460 msgstr ""
2461 2461
2462 2462 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:36
2463 2463 #: rhodecode/templates/admin/users/users.html:87
2464 2464 #: rhodecode/templates/admin/users_groups/users_groups.html:35
2465 2465 msgid "action"
2466 2466 msgstr ""
2467 2467
2468 2468 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:60
2469 2469 #, python-format
2470 2470 msgid "Confirm to delete this group: %s with %s repository"
2471 2471 msgid_plural "Confirm to delete this group: %s with %s repositories"
2472 2472 msgstr[0] ""
2473 2473 msgstr[1] ""
2474 2474
2475 2475 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:68
2476 2476 msgid "There are no repositories groups yet"
2477 2477 msgstr ""
2478 2478
2479 2479 #: rhodecode/templates/admin/settings/hooks.html:5
2480 2480 #: rhodecode/templates/admin/settings/settings.html:5
2481 2481 msgid "Settings administration"
2482 2482 msgstr ""
2483 2483
2484 2484 #: rhodecode/templates/admin/settings/hooks.html:9
2485 2485 #: rhodecode/templates/admin/settings/settings.html:9
2486 2486 #: rhodecode/templates/settings/repo_settings.html:13
2487 2487 msgid "Settings"
2488 2488 msgstr ""
2489 2489
2490 2490 #: rhodecode/templates/admin/settings/hooks.html:24
2491 2491 msgid "Built in hooks - read only"
2492 2492 msgstr ""
2493 2493
2494 2494 #: rhodecode/templates/admin/settings/hooks.html:40
2495 2495 msgid "Custom hooks"
2496 2496 msgstr ""
2497 2497
2498 2498 #: rhodecode/templates/admin/settings/hooks.html:56
2499 2499 msgid "remove"
2500 2500 msgstr ""
2501 2501
2502 2502 #: rhodecode/templates/admin/settings/hooks.html:88
2503 2503 msgid "Failed to remove hook"
2504 2504 msgstr ""
2505 2505
2506 2506 #: rhodecode/templates/admin/settings/settings.html:24
2507 2507 msgid "Remap and rescan repositories"
2508 2508 msgstr ""
2509 2509
2510 2510 #: rhodecode/templates/admin/settings/settings.html:32
2511 2511 msgid "rescan option"
2512 2512 msgstr ""
2513 2513
2514 2514 #: rhodecode/templates/admin/settings/settings.html:38
2515 2515 msgid ""
2516 2516 "In case a repository was deleted from filesystem and there are leftovers "
2517 2517 "in the database check this option to scan obsolete data in database and "
2518 2518 "remove it."
2519 2519 msgstr ""
2520 2520
2521 2521 #: rhodecode/templates/admin/settings/settings.html:39
2522 2522 msgid "destroy old data"
2523 2523 msgstr ""
2524 2524
2525 2525 #: rhodecode/templates/admin/settings/settings.html:41
2526 2526 msgid ""
2527 2527 "Rescan repositories location for new repositories. Also deletes obsolete "
2528 2528 "if `destroy` flag is checked "
2529 2529 msgstr ""
2530 2530
2531 2531 #: rhodecode/templates/admin/settings/settings.html:46
2532 2532 msgid "Rescan repositories"
2533 2533 msgstr ""
2534 2534
2535 2535 #: rhodecode/templates/admin/settings/settings.html:52
2536 2536 msgid "Whoosh indexing"
2537 2537 msgstr ""
2538 2538
2539 2539 #: rhodecode/templates/admin/settings/settings.html:60
2540 2540 msgid "index build option"
2541 2541 msgstr ""
2542 2542
2543 2543 #: rhodecode/templates/admin/settings/settings.html:65
2544 2544 msgid "build from scratch"
2545 2545 msgstr ""
2546 2546
2547 2547 #: rhodecode/templates/admin/settings/settings.html:71
2548 2548 msgid "Reindex"
2549 2549 msgstr ""
2550 2550
2551 2551 #: rhodecode/templates/admin/settings/settings.html:77
2552 2552 msgid "Global application settings"
2553 2553 msgstr ""
2554 2554
2555 2555 #: rhodecode/templates/admin/settings/settings.html:86
2556 2556 msgid "Application name"
2557 2557 msgstr ""
2558 2558
2559 2559 #: rhodecode/templates/admin/settings/settings.html:95
2560 2560 msgid "Realm text"
2561 2561 msgstr ""
2562 2562
2563 2563 #: rhodecode/templates/admin/settings/settings.html:104
2564 2564 msgid "GA code"
2565 2565 msgstr ""
2566 2566
2567 2567 #: rhodecode/templates/admin/settings/settings.html:112
2568 2568 #: rhodecode/templates/admin/settings/settings.html:178
2569 2569 #: rhodecode/templates/admin/settings/settings.html:268
2570 2570 msgid "Save settings"
2571 2571 msgstr ""
2572 2572
2573 2573 #: rhodecode/templates/admin/settings/settings.html:119
2574 2574 msgid "Visualisation settings"
2575 2575 msgstr ""
2576 2576
2577 2577 #: rhodecode/templates/admin/settings/settings.html:127
2578 2578 msgid "General"
2579 2579 msgstr ""
2580 2580
2581 2581 #: rhodecode/templates/admin/settings/settings.html:132
2582 2582 msgid "Use lightweight dashboard"
2583 2583 msgstr ""
2584 2584
2585 2585 #: rhodecode/templates/admin/settings/settings.html:139
2586 2586 msgid "Icons"
2587 2587 msgstr ""
2588 2588
2589 2589 #: rhodecode/templates/admin/settings/settings.html:144
2590 2590 msgid "Show public repo icon on repositories"
2591 2591 msgstr ""
2592 2592
2593 2593 #: rhodecode/templates/admin/settings/settings.html:148
2594 2594 msgid "Show private repo icon on repositories"
2595 2595 msgstr ""
2596 2596
2597 2597 #: rhodecode/templates/admin/settings/settings.html:155
2598 2598 msgid "Meta-Tagging"
2599 2599 msgstr ""
2600 2600
2601 2601 #: rhodecode/templates/admin/settings/settings.html:160
2602 2602 msgid "Stylify recognised metatags:"
2603 2603 msgstr ""
2604 2604
2605 2605 #: rhodecode/templates/admin/settings/settings.html:187
2606 2606 msgid "VCS settings"
2607 2607 msgstr ""
2608 2608
2609 2609 #: rhodecode/templates/admin/settings/settings.html:196
2610 2610 msgid "Web"
2611 2611 msgstr ""
2612 2612
2613 2613 #: rhodecode/templates/admin/settings/settings.html:201
2614 2614 msgid "require ssl for vcs operations"
2615 2615 msgstr ""
2616 2616
2617 2617 #: rhodecode/templates/admin/settings/settings.html:203
2618 2618 msgid ""
2619 2619 "RhodeCode will require SSL for pushing or pulling. If SSL is missing it "
2620 2620 "will return HTTP Error 406: Not Acceptable"
2621 2621 msgstr ""
2622 2622
2623 2623 #: rhodecode/templates/admin/settings/settings.html:209
2624 2624 msgid "Hooks"
2625 2625 msgstr ""
2626 2626
2627 2627 #: rhodecode/templates/admin/settings/settings.html:214
2628 2628 msgid "Update repository after push (hg update)"
2629 2629 msgstr ""
2630 2630
2631 2631 #: rhodecode/templates/admin/settings/settings.html:218
2632 2632 msgid "Show repository size after push"
2633 2633 msgstr ""
2634 2634
2635 2635 #: rhodecode/templates/admin/settings/settings.html:222
2636 2636 msgid "Log user push commands"
2637 2637 msgstr ""
2638 2638
2639 2639 #: rhodecode/templates/admin/settings/settings.html:226
2640 2640 msgid "Log user pull commands"
2641 2641 msgstr ""
2642 2642
2643 2643 #: rhodecode/templates/admin/settings/settings.html:230
2644 2644 msgid "advanced setup"
2645 2645 msgstr ""
2646 2646
2647 2647 #: rhodecode/templates/admin/settings/settings.html:235
2648 2648 msgid "Mercurial Extensions"
2649 2649 msgstr ""
2650 2650
2651 2651 #: rhodecode/templates/admin/settings/settings.html:240
2652 2652 msgid "largefiles extensions"
2653 2653 msgstr ""
2654 2654
2655 2655 #: rhodecode/templates/admin/settings/settings.html:244
2656 2656 msgid "hgsubversion extensions"
2657 2657 msgstr ""
2658 2658
2659 2659 #: rhodecode/templates/admin/settings/settings.html:246
2660 2660 msgid ""
2661 2661 "Requires hgsubversion library installed. Allows clonning from svn remote "
2662 2662 "locations"
2663 2663 msgstr ""
2664 2664
2665 2665 #: rhodecode/templates/admin/settings/settings.html:256
2666 2666 msgid "Repositories location"
2667 2667 msgstr ""
2668 2668
2669 2669 #: rhodecode/templates/admin/settings/settings.html:261
2670 2670 msgid ""
2671 2671 "This a crucial application setting. If you are really sure you need to "
2672 2672 "change this, you must restart application in order to make this setting "
2673 2673 "take effect. Click this label to unlock."
2674 2674 msgstr ""
2675 2675
2676 2676 #: rhodecode/templates/admin/settings/settings.html:262
2677 2677 #: rhodecode/templates/base/base.html:227
2678 2678 msgid "unlock"
2679 2679 msgstr ""
2680 2680
2681 2681 #: rhodecode/templates/admin/settings/settings.html:263
2682 2682 msgid ""
2683 2683 "Location where repositories are stored. After changing this value a "
2684 2684 "restart, and rescan is required"
2685 2685 msgstr ""
2686 2686
2687 2687 #: rhodecode/templates/admin/settings/settings.html:283
2688 2688 msgid "Test Email"
2689 2689 msgstr ""
2690 2690
2691 2691 #: rhodecode/templates/admin/settings/settings.html:291
2692 2692 msgid "Email to"
2693 2693 msgstr ""
2694 2694
2695 2695 #: rhodecode/templates/admin/settings/settings.html:299
2696 2696 msgid "Send"
2697 2697 msgstr ""
2698 2698
2699 2699 #: rhodecode/templates/admin/settings/settings.html:305
2700 2700 msgid "System Info and Packages"
2701 2701 msgstr ""
2702 2702
2703 2703 #: rhodecode/templates/admin/settings/settings.html:308
2704 2704 msgid "show"
2705 2705 msgstr ""
2706 2706
2707 2707 #: rhodecode/templates/admin/users/user_add.html:5
2708 2708 msgid "Add user"
2709 2709 msgstr ""
2710 2710
2711 2711 #: rhodecode/templates/admin/users/user_add.html:10
2712 2712 #: rhodecode/templates/admin/users/user_edit.html:11
2713 2713 msgid "Users"
2714 2714 msgstr ""
2715 2715
2716 2716 #: rhodecode/templates/admin/users/user_add.html:12
2717 2717 msgid "add new user"
2718 2718 msgstr ""
2719 2719
2720 2720 #: rhodecode/templates/admin/users/user_add.html:50
2721 2721 msgid "Password confirmation"
2722 2722 msgstr ""
2723 2723
2724 2724 #: rhodecode/templates/admin/users/user_edit.html:5
2725 2725 msgid "Edit user"
2726 2726 msgstr ""
2727 2727
2728 2728 #: rhodecode/templates/admin/users/user_edit.html:34
2729 2729 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:10
2730 2730 msgid "Change your avatar at"
2731 2731 msgstr ""
2732 2732
2733 2733 #: rhodecode/templates/admin/users/user_edit.html:35
2734 2734 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:11
2735 2735 msgid "Using"
2736 2736 msgstr ""
2737 2737
2738 2738 #: rhodecode/templates/admin/users/user_edit.html:43
2739 2739 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:20
2740 2740 msgid "API key"
2741 2741 msgstr ""
2742 2742
2743 2743 #: rhodecode/templates/admin/users/user_edit.html:48
2744 2744 msgid "Your IP"
2745 2745 msgstr ""
2746 2746
2747 2747 #: rhodecode/templates/admin/users/user_edit.html:67
2748 2748 msgid "LDAP DN"
2749 2749 msgstr ""
2750 2750
2751 2751 #: rhodecode/templates/admin/users/user_edit.html:76
2752 2752 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:39
2753 2753 msgid "New password"
2754 2754 msgstr ""
2755 2755
2756 2756 #: rhodecode/templates/admin/users/user_edit.html:85
2757 2757 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:48
2758 2758 msgid "New password confirmation"
2759 2759 msgstr ""
2760 2760
2761 2761 #: rhodecode/templates/admin/users/user_edit.html:155
2762 2762 #: rhodecode/templates/admin/users_groups/users_group_edit.html:108
2763 2763 msgid "Inherit default permissions"
2764 2764 msgstr ""
2765 2765
2766 2766 #: rhodecode/templates/admin/users/user_edit.html:160
2767 2767 #: rhodecode/templates/admin/users_groups/users_group_edit.html:113
2768 2768 #, python-format
2769 2769 msgid ""
2770 2770 "Select to inherit permissions from %s settings. With this selected below "
2771 2771 "options does not have any action"
2772 2772 msgstr ""
2773 2773
2774 2774 #: rhodecode/templates/admin/users/user_edit.html:166
2775 2775 #: rhodecode/templates/admin/users_groups/users_group_edit.html:119
2776 2776 msgid "Create repositories"
2777 2777 msgstr ""
2778 2778
2779 2779 #: rhodecode/templates/admin/users/user_edit.html:174
2780 2780 #: rhodecode/templates/admin/users_groups/users_group_edit.html:127
2781 2781 msgid "Fork repositories"
2782 2782 msgstr ""
2783 2783
2784 2784 #: rhodecode/templates/admin/users/user_edit.html:251
2785 2785 msgid "Email addresses"
2786 2786 msgstr ""
2787 2787
2788 2788 #: rhodecode/templates/admin/users/user_edit.html:264
2789 2789 #, python-format
2790 2790 msgid "Confirm to delete this email: %s"
2791 2791 msgstr ""
2792 2792
2793 2793 #: rhodecode/templates/admin/users/user_edit.html:278
2794 2794 msgid "New email address"
2795 2795 msgstr ""
2796 2796
2797 2797 #: rhodecode/templates/admin/users/user_edit_my_account.html:5
2798 2798 #: rhodecode/templates/base/base.html:130
2799 2799 msgid "My account"
2800 2800 msgstr ""
2801 2801
2802 2802 #: rhodecode/templates/admin/users/user_edit_my_account.html:9
2803 2803 msgid "My Account"
2804 2804 msgstr ""
2805 2805
2806 2806 #: rhodecode/templates/admin/users/user_edit_my_account.html:35
2807 2807 msgid "My permissions"
2808 2808 msgstr ""
2809 2809
2810 2810 #: rhodecode/templates/admin/users/user_edit_my_account.html:38
2811 2811 #: rhodecode/templates/journal/journal.html:57
2812 2812 msgid "My repos"
2813 2813 msgstr ""
2814 2814
2815 2815 #: rhodecode/templates/admin/users/user_edit_my_account.html:41
2816 2816 msgid "My pull requests"
2817 2817 msgstr ""
2818 2818
2819 2819 #: rhodecode/templates/admin/users/user_edit_my_account.html:45
2820 2820 #: rhodecode/templates/journal/journal.html:61
2821 2821 msgid "Add repo"
2822 2822 msgstr ""
2823 2823
2824 2824 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:2
2825 2825 msgid "Opened by me"
2826 2826 msgstr ""
2827 2827
2828 2828 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:10
2829 2829 #, python-format
2830 2830 msgid "Pull request #%s opened on %s"
2831 2831 msgstr ""
2832 2832
2833 2833 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:15
2834 2834 msgid "Confirm to delete this pull request"
2835 2835 msgstr ""
2836 2836
2837 2837 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:26
2838 2838 msgid "I participate in"
2839 2839 msgstr ""
2840 2840
2841 2841 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:33
2842 2842 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:30
2843 2843 #, python-format
2844 2844 msgid "Pull request #%s opened by %s on %s"
2845 2845 msgstr ""
2846 2846
2847 2847 #: rhodecode/templates/admin/users/users.html:5
2848 2848 msgid "Users administration"
2849 2849 msgstr ""
2850 2850
2851 2851 #: rhodecode/templates/admin/users/users.html:9
2852 2852 #: rhodecode/templates/base/base.html:241
2853 2853 msgid "users"
2854 2854 msgstr ""
2855 2855
2856 2856 #: rhodecode/templates/admin/users/users.html:23
2857 2857 msgid "Add new user"
2858 2858 msgstr ""
2859 2859
2860 2860 #: rhodecode/templates/admin/users/users.html:77
2861 2861 msgid "username"
2862 2862 msgstr ""
2863 2863
2864 2864 #: rhodecode/templates/admin/users/users.html:80
2865 2865 msgid "firstname"
2866 2866 msgstr ""
2867 2867
2868 2868 #: rhodecode/templates/admin/users/users.html:81
2869 2869 msgid "lastname"
2870 2870 msgstr ""
2871 2871
2872 2872 #: rhodecode/templates/admin/users/users.html:82
2873 2873 msgid "last login"
2874 2874 msgstr ""
2875 2875
2876 2876 #: rhodecode/templates/admin/users/users.html:84
2877 2877 #: rhodecode/templates/admin/users_groups/users_groups.html:34
2878 2878 msgid "active"
2879 2879 msgstr ""
2880 2880
2881 2881 #: rhodecode/templates/admin/users/users.html:86
2882 2882 #: rhodecode/templates/base/base.html:244
2883 2883 msgid "ldap"
2884 2884 msgstr ""
2885 2885
2886 2886 #: rhodecode/templates/admin/users_groups/users_group_add.html:5
2887 2887 msgid "Add users group"
2888 2888 msgstr ""
2889 2889
2890 2890 #: rhodecode/templates/admin/users_groups/users_group_add.html:10
2891 2891 #: rhodecode/templates/admin/users_groups/users_groups.html:9
2892 2892 msgid "Users groups"
2893 2893 msgstr ""
2894 2894
2895 2895 #: rhodecode/templates/admin/users_groups/users_group_add.html:12
2896 2896 msgid "add new users group"
2897 2897 msgstr ""
2898 2898
2899 2899 #: rhodecode/templates/admin/users_groups/users_group_edit.html:5
2900 2900 msgid "Edit users group"
2901 2901 msgstr ""
2902 2902
2903 2903 #: rhodecode/templates/admin/users_groups/users_group_edit.html:11
2904 2904 msgid "UsersGroups"
2905 2905 msgstr ""
2906 2906
2907 2907 #: rhodecode/templates/admin/users_groups/users_group_edit.html:50
2908 2908 msgid "Members"
2909 2909 msgstr ""
2910 2910
2911 2911 #: rhodecode/templates/admin/users_groups/users_group_edit.html:58
2912 2912 msgid "Choosen group members"
2913 2913 msgstr ""
2914 2914
2915 2915 #: rhodecode/templates/admin/users_groups/users_group_edit.html:61
2916 2916 msgid "Remove all elements"
2917 2917 msgstr ""
2918 2918
2919 2919 #: rhodecode/templates/admin/users_groups/users_group_edit.html:75
2920 2920 msgid "Available members"
2921 2921 msgstr ""
2922 2922
2923 2923 #: rhodecode/templates/admin/users_groups/users_group_edit.html:79
2924 2924 msgid "Add all elements"
2925 2925 msgstr ""
2926 2926
2927 2927 #: rhodecode/templates/admin/users_groups/users_group_edit.html:146
2928 2928 msgid "Group members"
2929 2929 msgstr ""
2930 2930
2931 2931 #: rhodecode/templates/admin/users_groups/users_group_edit.html:163
2932 2932 msgid "No members yet"
2933 2933 msgstr ""
2934 2934
2935 2935 #: rhodecode/templates/admin/users_groups/users_group_edit.html:171
2936 2936 msgid "Permissions defined for this group"
2937 2937 msgstr ""
2938 2938
2939 2939 #: rhodecode/templates/admin/users_groups/users_group_edit.html:178
2940 2940 msgid "No permissions set yet"
2941 2941 msgstr ""
2942 2942
2943 2943 #: rhodecode/templates/admin/users_groups/users_groups.html:5
2944 2944 msgid "Users groups administration"
2945 2945 msgstr ""
2946 2946
2947 2947 #: rhodecode/templates/admin/users_groups/users_groups.html:23
2948 2948 msgid "Add new user group"
2949 2949 msgstr ""
2950 2950
2951 2951 #: rhodecode/templates/admin/users_groups/users_groups.html:32
2952 2952 msgid "group name"
2953 2953 msgstr ""
2954 2954
2955 2955 #: rhodecode/templates/admin/users_groups/users_groups.html:33
2956 2956 #: rhodecode/templates/base/root.html:46
2957 2957 msgid "members"
2958 2958 msgstr ""
2959 2959
2960 2960 #: rhodecode/templates/admin/users_groups/users_groups.html:45
2961 2961 #, python-format
2962 2962 msgid "Confirm to delete this users group: %s"
2963 2963 msgstr ""
2964 2964
2965 2965 #: rhodecode/templates/base/base.html:41
2966 2966 msgid "Submit a bug"
2967 2967 msgstr ""
2968 2968
2969 2969 #: rhodecode/templates/base/base.html:76
2970 2970 msgid "Not logged in"
2971 2971 msgstr ""
2972 2972
2973 2973 #: rhodecode/templates/base/base.html:83
2974 2974 msgid "Login to your account"
2975 2975 msgstr ""
2976 2976
2977 2977 #: rhodecode/templates/base/base.html:106
2978 2978 msgid "Forgot password ?"
2979 2979 msgstr ""
2980 2980
2981 2981 #: rhodecode/templates/base/base.html:113
2982 2982 msgid "Log In"
2983 2983 msgstr ""
2984 2984
2985 2985 #: rhodecode/templates/base/base.html:124
2986 2986 msgid "Inbox"
2987 2987 msgstr ""
2988 2988
2989 2989 #: rhodecode/templates/base/base.html:129
2990 2990 #: rhodecode/templates/base/base.html:297
2991 2991 #: rhodecode/templates/base/base.html:299
2992 2992 #: rhodecode/templates/base/base.html:301
2993 2993 #: rhodecode/templates/journal/journal.html:4
2994 2994 #: rhodecode/templates/journal/public_journal.html:4
2995 2995 msgid "Journal"
2996 2996 msgstr ""
2997 2997
2998 2998 #: rhodecode/templates/base/base.html:131
2999 2999 msgid "Log Out"
3000 3000 msgstr ""
3001 3001
3002 3002 #: rhodecode/templates/base/base.html:150
3003 3003 msgid "Switch repository"
3004 3004 msgstr ""
3005 3005
3006 3006 #: rhodecode/templates/base/base.html:152
3007 3007 msgid "Products"
3008 3008 msgstr ""
3009 3009
3010 3010 #: rhodecode/templates/base/base.html:158
3011 3011 #: rhodecode/templates/base/base.html:189 rhodecode/templates/base/root.html:47
3012 3012 msgid "loading..."
3013 3013 msgstr ""
3014 3014
3015 3015 #: rhodecode/templates/base/base.html:166
3016 3016 #: rhodecode/templates/base/base.html:168
3017 3017 #: rhodecode/templates/base/base.html:170
3018 3018 #: rhodecode/templates/data_table/_dt_elements.html:9
3019 3019 #: rhodecode/templates/data_table/_dt_elements.html:11
3020 3020 #: rhodecode/templates/data_table/_dt_elements.html:13
3021 3021 msgid "Summary"
3022 3022 msgstr ""
3023 3023
3024 3024 #: rhodecode/templates/base/base.html:174
3025 3025 #: rhodecode/templates/base/base.html:176
3026 3026 #: rhodecode/templates/base/base.html:178
3027 3027 #: rhodecode/templates/changelog/changelog.html:15
3028 3028 #: rhodecode/templates/data_table/_dt_elements.html:17
3029 3029 #: rhodecode/templates/data_table/_dt_elements.html:19
3030 3030 #: rhodecode/templates/data_table/_dt_elements.html:21
3031 3031 msgid "Changelog"
3032 3032 msgstr ""
3033 3033
3034 3034 #: rhodecode/templates/base/base.html:182
3035 3035 #: rhodecode/templates/base/base.html:184
3036 3036 #: rhodecode/templates/base/base.html:186
3037 3037 msgid "Switch to"
3038 3038 msgstr ""
3039 3039
3040 3040 #: rhodecode/templates/base/base.html:193
3041 3041 #: rhodecode/templates/base/base.html:195
3042 3042 #: rhodecode/templates/base/base.html:197
3043 3043 #: rhodecode/templates/data_table/_dt_elements.html:25
3044 3044 #: rhodecode/templates/data_table/_dt_elements.html:27
3045 3045 #: rhodecode/templates/data_table/_dt_elements.html:29
3046 3046 msgid "Files"
3047 3047 msgstr ""
3048 3048
3049 3049 #: rhodecode/templates/base/base.html:201
3050 3050 #: rhodecode/templates/base/base.html:205
3051 3051 msgid "Options"
3052 3052 msgstr ""
3053 3053
3054 3054 #: rhodecode/templates/base/base.html:210
3055 3055 #: rhodecode/templates/base/base.html:212
3056 3056 msgid "repository settings"
3057 3057 msgstr ""
3058 3058
3059 3059 #: rhodecode/templates/base/base.html:216
3060 3060 #: rhodecode/templates/data_table/_dt_elements.html:74
3061 3061 #: rhodecode/templates/forks/fork.html:13
3062 3062 msgid "fork"
3063 3063 msgstr ""
3064 3064
3065 3065 #: rhodecode/templates/base/base.html:218
3066 3066 #: rhodecode/templates/changelog/changelog.html:43
3067 3067 msgid "open new pull request"
3068 3068 msgstr ""
3069 3069
3070 3070 #: rhodecode/templates/base/base.html:221
3071 3071 msgid "compare fork"
3072 3072 msgstr ""
3073 3073
3074 3074 #: rhodecode/templates/base/base.html:223
3075 3075 msgid "search"
3076 3076 msgstr ""
3077 3077
3078 3078 #: rhodecode/templates/base/base.html:229
3079 3079 msgid "lock"
3080 3080 msgstr ""
3081 3081
3082 3082 #: rhodecode/templates/base/base.html:240
3083 3083 msgid "repositories groups"
3084 3084 msgstr ""
3085 3085
3086 3086 #: rhodecode/templates/base/base.html:242
3087 3087 msgid "users groups"
3088 3088 msgstr ""
3089 3089
3090 3090 #: rhodecode/templates/base/base.html:243
3091 3091 msgid "permissions"
3092 3092 msgstr ""
3093 3093
3094 3094 #: rhodecode/templates/base/base.html:245
3095 3095 msgid "defaults"
3096 3096 msgstr ""
3097 3097
3098 3098 #: rhodecode/templates/base/base.html:246
3099 3099 msgid "settings"
3100 3100 msgstr ""
3101 3101
3102 3102 #: rhodecode/templates/base/base.html:256
3103 3103 #: rhodecode/templates/base/base.html:258
3104 3104 msgid "Followers"
3105 3105 msgstr ""
3106 3106
3107 3107 #: rhodecode/templates/base/base.html:264
3108 3108 #: rhodecode/templates/base/base.html:266
3109 3109 msgid "Forks"
3110 3110 msgstr ""
3111 3111
3112 3112 #: rhodecode/templates/base/base.html:315
3113 3113 #: rhodecode/templates/base/base.html:317
3114 3114 #: rhodecode/templates/base/base.html:319
3115 3115 #: rhodecode/templates/search/search.html:52
3116 3116 msgid "Search"
3117 3117 msgstr ""
3118 3118
3119 3119 #: rhodecode/templates/base/root.html:42
3120 3120 msgid "add another comment"
3121 3121 msgstr ""
3122 3122
3123 3123 #: rhodecode/templates/base/root.html:43
3124 3124 #: rhodecode/templates/data_table/_dt_elements.html:140
3125 3125 #: rhodecode/templates/summary/summary.html:57
3126 3126 msgid "Stop following this repository"
3127 3127 msgstr ""
3128 3128
3129 3129 #: rhodecode/templates/base/root.html:44
3130 3130 #: rhodecode/templates/summary/summary.html:61
3131 3131 msgid "Start following this repository"
3132 3132 msgstr ""
3133 3133
3134 3134 #: rhodecode/templates/base/root.html:45
3135 3135 msgid "Group"
3136 3136 msgstr ""
3137 3137
3138 3138 #: rhodecode/templates/base/root.html:48
3139 3139 msgid "search truncated"
3140 3140 msgstr ""
3141 3141
3142 3142 #: rhodecode/templates/base/root.html:49
3143 3143 msgid "no matching files"
3144 3144 msgstr ""
3145 3145
3146 3146 #: rhodecode/templates/base/root.html:50
3147 3147 msgid "Open new pull request"
3148 3148 msgstr ""
3149 3149
3150 3150 #: rhodecode/templates/base/root.html:51
3151 3151 msgid "Open new pull request for selected changesets"
3152 3152 msgstr ""
3153 3153
3154 3154 #: rhodecode/templates/base/root.html:52
3155 3155 msgid "Show selected changes __S -> __E"
3156 3156 msgstr ""
3157 3157
3158 3158 #: rhodecode/templates/base/root.html:53
3159 3159 msgid "Selection link"
3160 3160 msgstr ""
3161 3161
3162 3162 #: rhodecode/templates/bookmarks/bookmarks.html:5
3163 3163 #, python-format
3164 3164 msgid "%s Bookmarks"
3165 3165 msgstr ""
3166 3166
3167 3167 #: rhodecode/templates/bookmarks/bookmarks.html:39
3168 3168 #: rhodecode/templates/bookmarks/bookmarks_data.html:8
3169 3169 #: rhodecode/templates/branches/branches.html:53
3170 3170 #: rhodecode/templates/branches/branches_data.html:8
3171 3171 #: rhodecode/templates/tags/tags.html:54
3172 3172 #: rhodecode/templates/tags/tags_data.html:8
3173 3173 msgid "Author"
3174 3174 msgstr ""
3175 3175
3176 3176 #: rhodecode/templates/bookmarks/bookmarks.html:40
3177 3177 #: rhodecode/templates/bookmarks/bookmarks_data.html:9
3178 3178 #: rhodecode/templates/branches/branches.html:54
3179 3179 #: rhodecode/templates/branches/branches_data.html:9
3180 3180 #: rhodecode/templates/tags/tags.html:55
3181 3181 #: rhodecode/templates/tags/tags_data.html:9
3182 3182 msgid "Revision"
3183 3183 msgstr ""
3184 3184
3185 3185 #: rhodecode/templates/branches/branches.html:5
3186 3186 #, python-format
3187 3187 msgid "%s Branches"
3188 3188 msgstr ""
3189 3189
3190 3190 #: rhodecode/templates/branches/branches.html:29
3191 3191 msgid "Compare branches"
3192 3192 msgstr ""
3193 3193
3194 3194 #: rhodecode/templates/branches/branches.html:56
3195 3195 #: rhodecode/templates/branches/branches_data.html:10
3196 3196 #: rhodecode/templates/compare/compare_diff.html:5
3197 3197 #: rhodecode/templates/compare/compare_diff.html:13
3198 3198 #: rhodecode/templates/tags/tags.html:57
3199 3199 #: rhodecode/templates/tags/tags_data.html:10
3200 3200 msgid "Compare"
3201 3201 msgstr ""
3202 3202
3203 3203 #: rhodecode/templates/changelog/changelog.html:6
3204 3204 #, python-format
3205 3205 msgid "%s Changelog"
3206 3206 msgstr ""
3207 3207
3208 3208 #: rhodecode/templates/changelog/changelog.html:15
3209 3209 #, python-format
3210 3210 msgid "showing %d out of %d revision"
3211 3211 msgid_plural "showing %d out of %d revisions"
3212 3212 msgstr[0] ""
3213 3213 msgstr[1] ""
3214 3214
3215 3215 #: rhodecode/templates/changelog/changelog.html:37
3216 3216 msgid "Clear selection"
3217 3217 msgstr ""
3218 3218
3219 3219 #: rhodecode/templates/changelog/changelog.html:40
3220 3220 #: rhodecode/templates/forks/forks_data.html:19
3221 3221 #, python-format
3222 3222 msgid "compare fork with %s"
3223 3223 msgstr ""
3224 3224
3225 3225 #: rhodecode/templates/changelog/changelog.html:40
3226 3226 msgid "Compare fork with parent"
3227 3227 msgstr ""
3228 3228
3229 3229 #: rhodecode/templates/changelog/changelog.html:49
3230 3230 msgid "Show"
3231 3231 msgstr ""
3232 3232
3233 3233 #: rhodecode/templates/changelog/changelog.html:74
3234 3234 #: rhodecode/templates/summary/summary.html:375
3235 3235 msgid "show more"
3236 3236 msgstr ""
3237 3237
3238 3238 #: rhodecode/templates/changelog/changelog.html:78
3239 3239 msgid "Affected number of files, click to show more details"
3240 3240 msgstr ""
3241 3241
3242 3242 #: rhodecode/templates/changelog/changelog.html:91
3243 3243 #: rhodecode/templates/changeset/changeset.html:65
3244 3244 #: rhodecode/templates/changeset/changeset_file_comment.html:20
3245 3245 #: rhodecode/templates/changeset/changeset_range.html:46
3246 3246 msgid "Changeset status"
3247 3247 msgstr ""
3248 3248
3249 3249 #: rhodecode/templates/changelog/changelog.html:94
3250 3250 #: rhodecode/templates/shortlog/shortlog_data.html:20
3251 3251 #, python-format
3252 3252 msgid "Click to open associated pull request #%s"
3253 3253 msgstr ""
3254 3254
3255 3255 #: rhodecode/templates/changelog/changelog.html:104
3256 3256 msgid "Parent"
3257 3257 msgstr ""
3258 3258
3259 3259 #: rhodecode/templates/changelog/changelog.html:110
3260 3260 #: rhodecode/templates/changeset/changeset.html:42
3261 3261 msgid "No parents"
3262 3262 msgstr ""
3263 3263
3264 3264 #: rhodecode/templates/changelog/changelog.html:115
3265 3265 #: rhodecode/templates/changeset/changeset.html:106
3266 3266 #: rhodecode/templates/changeset/changeset_range.html:79
3267 3267 msgid "merge"
3268 3268 msgstr ""
3269 3269
3270 3270 #: rhodecode/templates/changelog/changelog.html:118
3271 3271 #: rhodecode/templates/changeset/changeset.html:109
3272 3272 #: rhodecode/templates/changeset/changeset_range.html:82
3273 3273 #: rhodecode/templates/files/files.html:29
3274 3274 #: rhodecode/templates/files/files_add.html:33
3275 3275 #: rhodecode/templates/files/files_edit.html:33
3276 3276 #: rhodecode/templates/shortlog/shortlog_data.html:9
3277 3277 msgid "branch"
3278 3278 msgstr ""
3279 3279
3280 3280 #: rhodecode/templates/changelog/changelog.html:124
3281 3281 #: rhodecode/templates/changeset/changeset_range.html:88
3282 3282 msgid "bookmark"
3283 3283 msgstr ""
3284 3284
3285 3285 #: rhodecode/templates/changelog/changelog.html:130
3286 3286 #: rhodecode/templates/changeset/changeset.html:114
3287 3287 #: rhodecode/templates/changeset/changeset_range.html:94
3288 3288 msgid "tag"
3289 3289 msgstr ""
3290 3290
3291 3291 #: rhodecode/templates/changelog/changelog.html:302
3292 3292 msgid "There are no changes yet"
3293 3293 msgstr ""
3294 3294
3295 3295 #: rhodecode/templates/changelog/changelog_details.html:4
3296 3296 #: rhodecode/templates/changeset/changeset.html:94
3297 3297 msgid "removed"
3298 3298 msgstr ""
3299 3299
3300 3300 #: rhodecode/templates/changelog/changelog_details.html:5
3301 3301 #: rhodecode/templates/changeset/changeset.html:95
3302 3302 msgid "changed"
3303 3303 msgstr ""
3304 3304
3305 3305 #: rhodecode/templates/changelog/changelog_details.html:6
3306 3306 #: rhodecode/templates/changeset/changeset.html:96
3307 3307 msgid "added"
3308 3308 msgstr ""
3309 3309
3310 3310 #: rhodecode/templates/changelog/changelog_details.html:8
3311 3311 #: rhodecode/templates/changelog/changelog_details.html:9
3312 3312 #: rhodecode/templates/changelog/changelog_details.html:10
3313 3313 #: rhodecode/templates/changeset/changeset.html:98
3314 3314 #: rhodecode/templates/changeset/changeset.html:99
3315 3315 #: rhodecode/templates/changeset/changeset.html:100
3316 3316 #, python-format
3317 3317 msgid "affected %s files"
3318 3318 msgstr ""
3319 3319
3320 3320 #: rhodecode/templates/changeset/changeset.html:6
3321 3321 #, python-format
3322 3322 msgid "%s Changeset"
3323 3323 msgstr ""
3324 3324
3325 3325 #: rhodecode/templates/changeset/changeset.html:14
3326 3326 msgid "Changeset"
3327 3327 msgstr ""
3328 3328
3329 3329 #: rhodecode/templates/changeset/changeset.html:52
3330 3330 msgid "No children"
3331 3331 msgstr ""
3332 3332
3333 3333 #: rhodecode/templates/changeset/changeset.html:70
3334 3334 #: rhodecode/templates/changeset/diff_block.html:20
3335 3335 msgid "raw diff"
3336 3336 msgstr ""
3337 3337
3338 3338 #: rhodecode/templates/changeset/changeset.html:71
3339 3339 msgid "patch diff"
3340 3340 msgstr ""
3341 3341
3342 3342 #: rhodecode/templates/changeset/changeset.html:72
3343 3343 #: rhodecode/templates/changeset/diff_block.html:21
3344 3344 msgid "download diff"
3345 3345 msgstr ""
3346 3346
3347 3347 #: rhodecode/templates/changeset/changeset.html:76
3348 3348 #: rhodecode/templates/changeset/changeset_file_comment.html:97
3349 3349 #, python-format
3350 3350 msgid "%d comment"
3351 3351 msgid_plural "%d comments"
3352 3352 msgstr[0] ""
3353 3353 msgstr[1] ""
3354 3354
3355 3355 #: rhodecode/templates/changeset/changeset.html:76
3356 3356 #: rhodecode/templates/changeset/changeset_file_comment.html:97
3357 3357 #, python-format
3358 3358 msgid "(%d inline)"
3359 3359 msgid_plural "(%d inline)"
3360 3360 msgstr[0] ""
3361 3361 msgstr[1] ""
3362 3362
3363 3363 #: rhodecode/templates/changeset/changeset.html:122
3364 3364 #: rhodecode/templates/compare/compare_diff.html:44
3365 3365 #: rhodecode/templates/pullrequests/pullrequest_show.html:94
3366 3366 #, python-format
3367 3367 msgid "%s file changed"
3368 3368 msgid_plural "%s files changed"
3369 3369 msgstr[0] ""
3370 3370 msgstr[1] ""
3371 3371
3372 3372 #: rhodecode/templates/changeset/changeset.html:124
3373 3373 #: rhodecode/templates/compare/compare_diff.html:46
3374 3374 #: rhodecode/templates/pullrequests/pullrequest_show.html:96
3375 3375 #, python-format
3376 3376 msgid "%s file changed with %s insertions and %s deletions"
3377 3377 msgid_plural "%s files changed with %s insertions and %s deletions"
3378 3378 msgstr[0] ""
3379 3379 msgstr[1] ""
3380 3380
3381 3381 #: rhodecode/templates/changeset/changeset_file_comment.html:30
3382 3382 #, python-format
3383 3383 msgid "Status from pull request %s"
3384 3384 msgstr ""
3385 3385
3386 3386 #: rhodecode/templates/changeset/changeset_file_comment.html:32
3387 3387 #, python-format
3388 3388 msgid "Comment from pull request %s"
3389 3389 msgstr ""
3390 3390
3391 3391 #: rhodecode/templates/changeset/changeset_file_comment.html:57
3392 3392 msgid "Submitting..."
3393 3393 msgstr ""
3394 3394
3395 3395 #: rhodecode/templates/changeset/changeset_file_comment.html:60
3396 3396 msgid "Commenting on line {1}."
3397 3397 msgstr ""
3398 3398
3399 3399 #: rhodecode/templates/changeset/changeset_file_comment.html:61
3400 3400 #: rhodecode/templates/changeset/changeset_file_comment.html:140
3401 3401 #, python-format
3402 3402 msgid "Comments parsed using %s syntax with %s support."
3403 3403 msgstr ""
3404 3404
3405 3405 #: rhodecode/templates/changeset/changeset_file_comment.html:63
3406 3406 #: rhodecode/templates/changeset/changeset_file_comment.html:142
3407 3407 msgid "Use @username inside this text to send notification to this RhodeCode user"
3408 3408 msgstr ""
3409 3409
3410 3410 #: rhodecode/templates/changeset/changeset_file_comment.html:74
3411 3411 #: rhodecode/templates/changeset/changeset_file_comment.html:162
3412 3412 msgid "Comment"
3413 3413 msgstr ""
3414 3414
3415 3415 #: rhodecode/templates/changeset/changeset_file_comment.html:75
3416 3416 #: rhodecode/templates/changeset/changeset_file_comment.html:86
3417 3417 msgid "Hide"
3418 3418 msgstr ""
3419 3419
3420 3420 #: rhodecode/templates/changeset/changeset_file_comment.html:82
3421 3421 msgid "You need to be logged in to comment."
3422 3422 msgstr ""
3423 3423
3424 3424 #: rhodecode/templates/changeset/changeset_file_comment.html:82
3425 3425 msgid "Login now"
3426 3426 msgstr ""
3427 3427
3428 3428 #: rhodecode/templates/changeset/changeset_file_comment.html:137
3429 3429 msgid "Leave a comment"
3430 3430 msgstr ""
3431 3431
3432 3432 #: rhodecode/templates/changeset/changeset_file_comment.html:144
3433 3433 msgid "Check this to change current status of code-review for this changeset"
3434 3434 msgstr ""
3435 3435
3436 3436 #: rhodecode/templates/changeset/changeset_file_comment.html:144
3437 3437 msgid "change status"
3438 3438 msgstr ""
3439 3439
3440 3440 #: rhodecode/templates/changeset/changeset_file_comment.html:164
3441 3441 msgid "Comment and close"
3442 3442 msgstr ""
3443 3443
3444 3444 #: rhodecode/templates/changeset/changeset_range.html:5
3445 3445 #, python-format
3446 3446 msgid "%s Changesets"
3447 3447 msgstr ""
3448 3448
3449 3449 #: rhodecode/templates/changeset/changeset_range.html:29
3450 3450 #: rhodecode/templates/compare/compare_diff.html:29
3451 3451 msgid "Compare View"
3452 3452 msgstr ""
3453 3453
3454 3454 #: rhodecode/templates/changeset/changeset_range.html:29
3455 3455 msgid "Show combined compare"
3456 3456 msgstr ""
3457 3457
3458 3458 #: rhodecode/templates/changeset/changeset_range.html:54
3459 3459 msgid "Files affected"
3460 3460 msgstr ""
3461 3461
3462 3462 #: rhodecode/templates/changeset/diff_block.html:19
3463 3463 msgid "show full diff for this file"
3464 3464 msgstr ""
3465 3465
3466 3466 #: rhodecode/templates/changeset/diff_block.html:27
3467 3467 msgid "show inline comments"
3468 3468 msgstr ""
3469 3469
3470 3470 #: rhodecode/templates/compare/compare_cs.html:5
3471 3471 msgid "No changesets"
3472 3472 msgstr ""
3473 3473
3474 3474 #: rhodecode/templates/compare/compare_diff.html:37
3475 3475 #: rhodecode/templates/pullrequests/pullrequest_show.html:87
3476 3476 #, python-format
3477 3477 msgid "Showing %s commit"
3478 3478 msgid_plural "Showing %s commits"
3479 3479 msgstr[0] ""
3480 3480 msgstr[1] ""
3481 3481
3482 3482 #: rhodecode/templates/compare/compare_diff.html:52
3483 3483 #: rhodecode/templates/pullrequests/pullrequest_show.html:102
3484 3484 msgid "No files"
3485 3485 msgstr ""
3486 3486
3487 3487 #: rhodecode/templates/data_table/_dt_elements.html:33
3488 3488 #: rhodecode/templates/data_table/_dt_elements.html:35
3489 3489 #: rhodecode/templates/data_table/_dt_elements.html:37
3490 3490 msgid "Fork"
3491 3491 msgstr ""
3492 3492
3493 3493 #: rhodecode/templates/data_table/_dt_elements.html:54
3494 3494 #: rhodecode/templates/summary/summary.html:77
3495 3495 msgid "Mercurial repository"
3496 3496 msgstr ""
3497 3497
3498 3498 #: rhodecode/templates/data_table/_dt_elements.html:56
3499 3499 #: rhodecode/templates/summary/summary.html:80
3500 3500 msgid "Git repository"
3501 3501 msgstr ""
3502 3502
3503 3503 #: rhodecode/templates/data_table/_dt_elements.html:63
3504 3504 #: rhodecode/templates/summary/summary.html:87
3505 3505 msgid "public repository"
3506 3506 msgstr ""
3507 3507
3508 3508 #: rhodecode/templates/data_table/_dt_elements.html:74
3509 3509 #: rhodecode/templates/summary/summary.html:96
3510 3510 #: rhodecode/templates/summary/summary.html:97
3511 3511 msgid "Fork of"
3512 3512 msgstr ""
3513 3513
3514 3514 #: rhodecode/templates/data_table/_dt_elements.html:88
3515 3515 msgid "No changesets yet"
3516 3516 msgstr ""
3517 3517
3518 3518 #: rhodecode/templates/data_table/_dt_elements.html:95
3519 3519 #: rhodecode/templates/data_table/_dt_elements.html:97
3520 3520 #, python-format
3521 3521 msgid "Subscribe to %s rss feed"
3522 3522 msgstr ""
3523 3523
3524 3524 #: rhodecode/templates/data_table/_dt_elements.html:103
3525 3525 #: rhodecode/templates/data_table/_dt_elements.html:105
3526 3526 #, python-format
3527 3527 msgid "Subscribe to %s atom feed"
3528 3528 msgstr ""
3529 3529
3530 3530 #: rhodecode/templates/data_table/_dt_elements.html:122
3531 3531 #, python-format
3532 3532 msgid "Confirm to delete this repository: %s"
3533 3533 msgstr ""
3534 3534
3535 3535 #: rhodecode/templates/data_table/_dt_elements.html:131
3536 3536 #, python-format
3537 3537 msgid "Confirm to delete this user: %s"
3538 3538 msgstr ""
3539 3539
3540 3540 #: rhodecode/templates/email_templates/changeset_comment.html:10
3541 3541 msgid "New status$"
3542 3542 msgstr ""
3543 3543
3544 3544 #: rhodecode/templates/email_templates/main.html:8
3545 3545 msgid "This is a notification from RhodeCode."
3546 3546 msgstr ""
3547 3547
3548 3548 #: rhodecode/templates/email_templates/password_reset.html:4
3549 3549 msgid "Hello"
3550 3550 msgstr ""
3551 3551
3552 3552 #: rhodecode/templates/email_templates/password_reset.html:6
3553 3553 msgid "We received a request to create a new password for your account."
3554 3554 msgstr ""
3555 3555
3556 3556 #: rhodecode/templates/email_templates/password_reset.html:8
3557 3557 msgid "You can generate it by clicking following URL"
3558 3558 msgstr ""
3559 3559
3560 3560 #: rhodecode/templates/email_templates/password_reset.html:12
3561 3561 msgid "If you didn't request new password please ignore this email."
3562 3562 msgstr ""
3563 3563
3564 3564 #: rhodecode/templates/email_templates/pull_request.html:4
3565 3565 #, python-format
3566 3566 msgid ""
3567 3567 "User %s opened pull request for repository %s and wants you to review "
3568 3568 "changes."
3569 3569 msgstr ""
3570 3570
3571 3571 #: rhodecode/templates/email_templates/pull_request.html:5
3572 3572 msgid "title"
3573 3573 msgstr ""
3574 3574
3575 3575 #: rhodecode/templates/email_templates/pull_request.html:6
3576 3576 #: rhodecode/templates/pullrequests/pullrequest.html:115
3577 3577 msgid "description"
3578 3578 msgstr ""
3579 3579
3580 3580 #: rhodecode/templates/email_templates/pull_request.html:7
3581 3581 msgid "View this pull request here"
3582 3582 msgstr ""
3583 3583
3584 3584 #: rhodecode/templates/email_templates/pull_request.html:12
3585 3585 msgid "revisions for reviewing"
3586 3586 msgstr ""
3587 3587
3588 3588 #: rhodecode/templates/email_templates/pull_request_comment.html:4
3589 3589 #, python-format
3590 3590 msgid "User %s commented on pull request #%s for repository %s"
3591 3591 msgstr ""
3592 3592
3593 3593 #: rhodecode/templates/email_templates/pull_request_comment.html:10
3594 3594 msgid "New status"
3595 3595 msgstr ""
3596 3596
3597 3597 #: rhodecode/templates/email_templates/pull_request_comment.html:14
3598 3598 msgid "View this comment here"
3599 3599 msgstr ""
3600 3600
3601 3601 #: rhodecode/templates/email_templates/registration.html:4
3602 3602 msgid "A new user have registered in RhodeCode"
3603 3603 msgstr ""
3604 3604
3605 3605 #: rhodecode/templates/email_templates/registration.html:9
3606 3606 msgid "View this user here"
3607 3607 msgstr ""
3608 3608
3609 3609 #: rhodecode/templates/errors/error_document.html:46
3610 3610 #, python-format
3611 3611 msgid "You will be redirected to %s in %s seconds"
3612 3612 msgstr ""
3613 3613
3614 3614 #: rhodecode/templates/files/file_diff.html:4
3615 3615 #, python-format
3616 3616 msgid "%s File diff"
3617 3617 msgstr ""
3618 3618
3619 3619 #: rhodecode/templates/files/file_diff.html:12
3620 3620 msgid "File diff"
3621 3621 msgstr ""
3622 3622
3623 3623 #: rhodecode/templates/files/files.html:4
3624 3624 #: rhodecode/templates/files/files.html:74
3625 3625 #, python-format
3626 3626 msgid "%s files"
3627 3627 msgstr ""
3628 3628
3629 3629 #: rhodecode/templates/files/files.html:12
3630 3630 #: rhodecode/templates/summary/summary.html:351
3631 3631 msgid "files"
3632 3632 msgstr ""
3633 3633
3634 3634 #: rhodecode/templates/files/files_add.html:4
3635 3635 #: rhodecode/templates/files/files_edit.html:4
3636 3636 #, python-format
3637 3637 msgid "%s Edit file"
3638 3638 msgstr ""
3639 3639
3640 3640 #: rhodecode/templates/files/files_add.html:19
3641 3641 msgid "add file"
3642 3642 msgstr ""
3643 3643
3644 3644 #: rhodecode/templates/files/files_add.html:40
3645 3645 msgid "Add new file"
3646 3646 msgstr ""
3647 3647
3648 3648 #: rhodecode/templates/files/files_add.html:45
3649 3649 msgid "File Name"
3650 3650 msgstr ""
3651 3651
3652 3652 #: rhodecode/templates/files/files_add.html:49
3653 3653 #: rhodecode/templates/files/files_add.html:58
3654 3654 msgid "or"
3655 3655 msgstr ""
3656 3656
3657 3657 #: rhodecode/templates/files/files_add.html:49
3658 3658 #: rhodecode/templates/files/files_add.html:54
3659 3659 msgid "Upload file"
3660 3660 msgstr ""
3661 3661
3662 3662 #: rhodecode/templates/files/files_add.html:58
3663 3663 msgid "Create new file"
3664 3664 msgstr ""
3665 3665
3666 3666 #: rhodecode/templates/files/files_add.html:63
3667 3667 #: rhodecode/templates/files/files_edit.html:39
3668 3668 #: rhodecode/templates/files/files_ypjax.html:3
3669 3669 msgid "Location"
3670 3670 msgstr ""
3671 3671
3672 3672 #: rhodecode/templates/files/files_add.html:67
3673 3673 msgid "use / to separate directories"
3674 3674 msgstr ""
3675 3675
3676 3676 #: rhodecode/templates/files/files_add.html:77
3677 3677 #: rhodecode/templates/files/files_edit.html:63
3678 3678 #: rhodecode/templates/shortlog/shortlog_data.html:6
3679 3679 msgid "commit message"
3680 3680 msgstr ""
3681 3681
3682 3682 #: rhodecode/templates/files/files_add.html:81
3683 3683 #: rhodecode/templates/files/files_edit.html:67
3684 3684 msgid "Commit changes"
3685 3685 msgstr ""
3686 3686
3687 3687 #: rhodecode/templates/files/files_browser.html:13
3688 3688 msgid "view"
3689 3689 msgstr ""
3690 3690
3691 3691 #: rhodecode/templates/files/files_browser.html:14
3692 3692 msgid "previous revision"
3693 3693 msgstr ""
3694 3694
3695 3695 #: rhodecode/templates/files/files_browser.html:16
3696 3696 msgid "next revision"
3697 3697 msgstr ""
3698 3698
3699 3699 #: rhodecode/templates/files/files_browser.html:23
3700 3700 msgid "follow current branch"
3701 3701 msgstr ""
3702 3702
3703 3703 #: rhodecode/templates/files/files_browser.html:27
3704 3704 msgid "search file list"
3705 3705 msgstr ""
3706 3706
3707 3707 #: rhodecode/templates/files/files_browser.html:31
3708 3708 #: rhodecode/templates/shortlog/shortlog_data.html:78
3709 3709 msgid "add new file"
3710 3710 msgstr ""
3711 3711
3712 3712 #: rhodecode/templates/files/files_browser.html:35
3713 3713 msgid "Loading file list..."
3714 3714 msgstr ""
3715 3715
3716 3716 #: rhodecode/templates/files/files_browser.html:48
3717 3717 msgid "Size"
3718 3718 msgstr ""
3719 3719
3720 3720 #: rhodecode/templates/files/files_browser.html:49
3721 3721 msgid "Mimetype"
3722 3722 msgstr ""
3723 3723
3724 3724 #: rhodecode/templates/files/files_browser.html:50
3725 3725 msgid "Last Revision"
3726 3726 msgstr ""
3727 3727
3728 3728 #: rhodecode/templates/files/files_browser.html:51
3729 3729 msgid "Last modified"
3730 3730 msgstr ""
3731 3731
3732 3732 #: rhodecode/templates/files/files_browser.html:52
3733 3733 msgid "Last committer"
3734 3734 msgstr ""
3735 3735
3736 3736 #: rhodecode/templates/files/files_edit.html:19
3737 3737 msgid "edit file"
3738 3738 msgstr ""
3739 3739
3740 3740 #: rhodecode/templates/files/files_edit.html:49
3741 3741 #: rhodecode/templates/files/files_source.html:23
3742 3742 msgid "show annotation"
3743 3743 msgstr ""
3744 3744
3745 3745 #: rhodecode/templates/files/files_edit.html:50
3746 3746 #: rhodecode/templates/files/files_source.html:25
3747 3747 #: rhodecode/templates/files/files_source.html:55
3748 3748 msgid "show as raw"
3749 3749 msgstr ""
3750 3750
3751 3751 #: rhodecode/templates/files/files_edit.html:51
3752 3752 #: rhodecode/templates/files/files_source.html:26
3753 3753 msgid "download as raw"
3754 3754 msgstr ""
3755 3755
3756 3756 #: rhodecode/templates/files/files_edit.html:54
3757 3757 msgid "source"
3758 3758 msgstr ""
3759 3759
3760 3760 #: rhodecode/templates/files/files_edit.html:59
3761 3761 msgid "Editing file"
3762 3762 msgstr ""
3763 3763
3764 3764 #: rhodecode/templates/files/files_history_box.html:2
3765 3765 msgid "History"
3766 3766 msgstr ""
3767 3767
3768 3768 #: rhodecode/templates/files/files_history_box.html:9
3769 3769 msgid "diff to revision"
3770 3770 msgstr ""
3771 3771
3772 3772 #: rhodecode/templates/files/files_history_box.html:10
3773 3773 #, fuzzy
3774 3774 msgid "show at revision"
3775 3775 msgstr ""
3776 3776
3777 3777 #: rhodecode/templates/files/files_history_box.html:11
3778 3778 msgid "show full history"
3779 3779 msgstr ""
3780 3780
3781 3781 #: rhodecode/templates/files/files_history_box.html:16
3782 3782 #, fuzzy, python-format
3783 3783 msgid "%s author"
3784 3784 msgid_plural "%s authors"
3785 3785 msgstr[0] ""
3786 3786 msgstr[1] ""
3787 3787
3788 3788 #: rhodecode/templates/files/files_source.html:6
3789 3789 msgid "Load file history"
3790 3790 msgstr ""
3791 3791
3792 3792 #: rhodecode/templates/files/files_source.html:21
3793 3793 msgid "show source"
3794 3794 msgstr ""
3795 3795
3796 3796 #: rhodecode/templates/files/files_source.html:29
3797 3797 #, python-format
3798 3798 msgid "edit on branch:%s"
3799 3799 msgstr ""
3800 3800
3801 3801 #: rhodecode/templates/files/files_source.html:31
3802 3802 msgid "edit on branch:?"
3803 3803 msgstr ""
3804 3804
3805 3805 #: rhodecode/templates/files/files_source.html:31
3806 3806 msgid "Editing files allowed only when on branch head revision"
3807 3807 msgstr ""
3808 3808
3809 3809 #: rhodecode/templates/files/files_source.html:46
3810 3810 #, python-format
3811 3811 msgid "Binary file (%s)"
3812 3812 msgstr ""
3813 3813
3814 3814 #: rhodecode/templates/files/files_source.html:55
3815 3815 msgid "File is too big to display"
3816 3816 msgstr ""
3817 3817
3818 3818 #: rhodecode/templates/files/files_ypjax.html:5
3819 3819 msgid "annotation"
3820 3820 msgstr ""
3821 3821
3822 3822 #: rhodecode/templates/files/files_ypjax.html:15
3823 3823 msgid "Go back"
3824 3824 msgstr ""
3825 3825
3826 3826 #: rhodecode/templates/files/files_ypjax.html:16
3827 3827 msgid "No files at given path"
3828 3828 msgstr ""
3829 3829
3830 3830 #: rhodecode/templates/followers/followers.html:5
3831 3831 #, python-format
3832 3832 msgid "%s Followers"
3833 3833 msgstr ""
3834 3834
3835 3835 #: rhodecode/templates/followers/followers.html:13
3836 3836 msgid "followers"
3837 3837 msgstr ""
3838 3838
3839 3839 #: rhodecode/templates/followers/followers_data.html:12
3840 3840 msgid "Started following -"
3841 3841 msgstr ""
3842 3842
3843 3843 #: rhodecode/templates/forks/fork.html:5
3844 3844 #, python-format
3845 3845 msgid "%s Fork"
3846 3846 msgstr ""
3847 3847
3848 3848 #: rhodecode/templates/forks/fork.html:31
3849 3849 msgid "Fork name"
3850 3850 msgstr ""
3851 3851
3852 3852 #: rhodecode/templates/forks/fork.html:68
3853 3853 msgid "Private"
3854 3854 msgstr ""
3855 3855
3856 3856 #: rhodecode/templates/forks/fork.html:77
3857 3857 msgid "Copy permissions"
3858 3858 msgstr ""
3859 3859
3860 3860 #: rhodecode/templates/forks/fork.html:81
3861 3861 msgid "Copy permissions from forked repository"
3862 3862 msgstr ""
3863 3863
3864 3864 #: rhodecode/templates/forks/fork.html:86
3865 3865 msgid "Update after clone"
3866 3866 msgstr ""
3867 3867
3868 3868 #: rhodecode/templates/forks/fork.html:90
3869 3869 msgid "Checkout source after making a clone"
3870 3870 msgstr ""
3871 3871
3872 3872 #: rhodecode/templates/forks/fork.html:94
3873 3873 msgid "fork this repository"
3874 3874 msgstr ""
3875 3875
3876 3876 #: rhodecode/templates/forks/forks.html:5
3877 3877 #, python-format
3878 3878 msgid "%s Forks"
3879 3879 msgstr ""
3880 3880
3881 3881 #: rhodecode/templates/forks/forks.html:13
3882 3882 msgid "forks"
3883 3883 msgstr ""
3884 3884
3885 3885 #: rhodecode/templates/forks/forks_data.html:17
3886 3886 msgid "forked"
3887 3887 msgstr ""
3888 3888
3889 3889 #: rhodecode/templates/forks/forks_data.html:21
3890 3890 msgid "Compare fork"
3891 3891 msgstr ""
3892 3892
3893 3893 #: rhodecode/templates/forks/forks_data.html:42
3894 3894 msgid "There are no forks yet"
3895 3895 msgstr ""
3896 3896
3897 3897 #: rhodecode/templates/journal/journal.html:21
3898 3898 msgid "ATOM journal feed"
3899 3899 msgstr ""
3900 3900
3901 3901 #: rhodecode/templates/journal/journal.html:22
3902 3902 msgid "RSS journal feed"
3903 3903 msgstr ""
3904 3904
3905 3905 #: rhodecode/templates/journal/journal.html:32
3906 3906 #: rhodecode/templates/pullrequests/pullrequest.html:55
3907 3907 msgid "Refresh"
3908 3908 msgstr ""
3909 3909
3910 3910 #: rhodecode/templates/journal/journal.html:35
3911 3911 #: rhodecode/templates/journal/public_journal.html:24
3912 3912 msgid "RSS feed"
3913 3913 msgstr ""
3914 3914
3915 3915 #: rhodecode/templates/journal/journal.html:38
3916 3916 #: rhodecode/templates/journal/public_journal.html:27
3917 3917 msgid "ATOM feed"
3918 3918 msgstr ""
3919 3919
3920 3920 #: rhodecode/templates/journal/journal.html:54
3921 3921 msgid "Watched"
3922 3922 msgstr ""
3923 3923
3924 3924 #: rhodecode/templates/journal/journal_data.html:55
3925 3925 msgid "No entries yet"
3926 3926 msgstr ""
3927 3927
3928 3928 #: rhodecode/templates/journal/public_journal.html:13
3929 3929 msgid "ATOM public journal feed"
3930 3930 msgstr ""
3931 3931
3932 3932 #: rhodecode/templates/journal/public_journal.html:14
3933 3933 msgid "RSS public journal feed"
3934 3934 msgstr ""
3935 3935
3936 3936 #: rhodecode/templates/journal/public_journal.html:21
3937 3937 msgid "Public Journal"
3938 3938 msgstr ""
3939 3939
3940 3940 #: rhodecode/templates/pullrequests/pullrequest.html:4
3941 3941 #: rhodecode/templates/pullrequests/pullrequest.html:12
3942 3942 msgid "New pull request"
3943 3943 msgstr ""
3944 3944
3945 3945 #: rhodecode/templates/pullrequests/pullrequest.html:54
3946 3946 msgid "refresh overview"
3947 3947 msgstr ""
3948 3948
3949 3949 #: rhodecode/templates/pullrequests/pullrequest.html:66
3950 3950 msgid "Detailed compare view"
3951 3951 msgstr ""
3952 3952
3953 3953 #: rhodecode/templates/pullrequests/pullrequest.html:70
3954 3954 #: rhodecode/templates/pullrequests/pullrequest_show.html:118
3955 3955 msgid "Pull request reviewers"
3956 3956 msgstr ""
3957 3957
3958 3958 #: rhodecode/templates/pullrequests/pullrequest.html:79
3959 3959 #: rhodecode/templates/pullrequests/pullrequest_show.html:130
3960 3960 msgid "owner"
3961 3961 msgstr ""
3962 3962
3963 3963 #: rhodecode/templates/pullrequests/pullrequest.html:91
3964 3964 #: rhodecode/templates/pullrequests/pullrequest_show.html:145
3965 3965 msgid "Add reviewer to this pull request."
3966 3966 msgstr ""
3967 3967
3968 3968 #: rhodecode/templates/pullrequests/pullrequest.html:97
3969 3969 msgid "Create new pull request"
3970 3970 msgstr ""
3971 3971
3972 3972 #: rhodecode/templates/pullrequests/pullrequest.html:106
3973 3973 #: rhodecode/templates/pullrequests/pullrequest_show.html:25
3974 3974 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:33
3975 3975 msgid "Title"
3976 3976 msgstr ""
3977 3977
3978 3978 #: rhodecode/templates/pullrequests/pullrequest.html:123
3979 3979 msgid "Send pull request"
3980 3980 msgstr ""
3981 3981
3982 3982 #: rhodecode/templates/pullrequests/pullrequest_show.html:23
3983 3983 #, python-format
3984 3984 msgid "Closed %s"
3985 3985 msgstr ""
3986 3986
3987 3987 #: rhodecode/templates/pullrequests/pullrequest_show.html:23
3988 3988 #, python-format
3989 3989 msgid "with status %s"
3990 3990 msgstr ""
3991 3991
3992 3992 #: rhodecode/templates/pullrequests/pullrequest_show.html:31
3993 3993 msgid "Status"
3994 3994 msgstr ""
3995 3995
3996 3996 #: rhodecode/templates/pullrequests/pullrequest_show.html:36
3997 3997 msgid "Pull request status"
3998 3998 msgstr ""
3999 3999
4000 4000 #: rhodecode/templates/pullrequests/pullrequest_show.html:44
4001 4001 msgid "Still not reviewed by"
4002 4002 msgstr ""
4003 4003
4004 4004 #: rhodecode/templates/pullrequests/pullrequest_show.html:48
4005 4005 #, python-format
4006 4006 msgid "%d reviewer"
4007 4007 msgid_plural "%d reviewers"
4008 4008 msgstr[0] ""
4009 4009 msgstr[1] ""
4010 4010
4011 4011 #: rhodecode/templates/pullrequests/pullrequest_show.html:50
4012 4012 msgid "pull request was reviewed by all reviewers"
4013 4013 msgstr ""
4014 4014
4015 4015 #: rhodecode/templates/pullrequests/pullrequest_show.html:56
4016 4016 msgid "Origin repository"
4017 4017 msgstr ""
4018 4018
4019 4019 #: rhodecode/templates/pullrequests/pullrequest_show.html:76
4020 4020 msgid "Created on"
4021 4021 msgstr ""
4022 4022
4023 4023 #: rhodecode/templates/pullrequests/pullrequest_show.html:83
4024 4024 msgid "Compare view"
4025 4025 msgstr ""
4026 4026
4027 4027 #: rhodecode/templates/pullrequests/pullrequest_show.html:130
4028 4028 #, fuzzy
4029 4029 msgid "reviewer"
4030 4030 msgstr ""
4031 4031
4032 4032 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:4
4033 4033 msgid "all pull requests"
4034 4034 msgstr ""
4035 4035
4036 4036 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:12
4037 4037 msgid "All pull requests"
4038 4038 msgstr ""
4039 4039
4040 4040 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:27
4041 4041 msgid "Closed"
4042 4042 msgstr ""
4043 4043
4044 4044 #: rhodecode/templates/search/search.html:6
4045 4045 #, python-format
4046 4046 msgid "Search \"%s\" in repository: %s"
4047 4047 msgstr ""
4048 4048
4049 4049 #: rhodecode/templates/search/search.html:8
4050 4050 #, python-format
4051 4051 msgid "Search \"%s\" in all repositories"
4052 4052 msgstr ""
4053 4053
4054 4054 #: rhodecode/templates/search/search.html:12
4055 4055 #: rhodecode/templates/search/search.html:32
4056 4056 #, python-format
4057 4057 msgid "Search in repository: %s"
4058 4058 msgstr ""
4059 4059
4060 4060 #: rhodecode/templates/search/search.html:14
4061 4061 #: rhodecode/templates/search/search.html:34
4062 4062 msgid "Search in all repositories"
4063 4063 msgstr ""
4064 4064
4065 4065 #: rhodecode/templates/search/search.html:48
4066 4066 msgid "Search term"
4067 4067 msgstr ""
4068 4068
4069 4069 #: rhodecode/templates/search/search.html:60
4070 4070 msgid "Search in"
4071 4071 msgstr ""
4072 4072
4073 4073 #: rhodecode/templates/search/search.html:63
4074 4074 msgid "File contents"
4075 4075 msgstr ""
4076 4076
4077 4077 #: rhodecode/templates/search/search.html:64
4078 4078 msgid "Commit messages"
4079 4079 msgstr ""
4080 4080
4081 4081 #: rhodecode/templates/search/search.html:65
4082 4082 msgid "File names"
4083 4083 msgstr ""
4084 4084
4085 4085 #: rhodecode/templates/search/search_commit.html:35
4086 4086 #: rhodecode/templates/search/search_content.html:21
4087 4087 #: rhodecode/templates/search/search_path.html:15
4088 4088 msgid "Permission denied"
4089 4089 msgstr ""
4090 4090
4091 4091 #: rhodecode/templates/settings/repo_settings.html:5
4092 4092 #, python-format
4093 4093 msgid "%s Settings"
4094 4094 msgstr ""
4095 4095
4096 4096 #: rhodecode/templates/settings/repo_settings.html:102
4097 4097 msgid "Delete repository"
4098 4098 msgstr ""
4099 4099
4100 4100 #: rhodecode/templates/settings/repo_settings.html:109
4101 4101 msgid "Remove repo"
4102 4102 msgstr ""
4103 4103
4104 4104 #: rhodecode/templates/shortlog/shortlog.html:5
4105 4105 #, python-format
4106 4106 msgid "%s Shortlog"
4107 4107 msgstr ""
4108 4108
4109 4109 #: rhodecode/templates/shortlog/shortlog.html:15
4110 4110 #: rhodecode/templates/shortlog/shortlog.html:19
4111 4111 msgid "shortlog"
4112 4112 msgstr ""
4113 4113
4114 4114 #: rhodecode/templates/shortlog/shortlog_data.html:5
4115 4115 msgid "revision"
4116 4116 msgstr ""
4117 4117
4118 4118 #: rhodecode/templates/shortlog/shortlog_data.html:7
4119 4119 msgid "age"
4120 4120 msgstr ""
4121 4121
4122 4122 #: rhodecode/templates/shortlog/shortlog_data.html:8
4123 4123 msgid "author"
4124 4124 msgstr ""
4125 4125
4126 4126 #: rhodecode/templates/shortlog/shortlog_data.html:75
4127 4127 msgid "Add or upload files directly via RhodeCode"
4128 4128 msgstr ""
4129 4129
4130 4130 #: rhodecode/templates/shortlog/shortlog_data.html:84
4131 4131 msgid "Push new repo"
4132 4132 msgstr ""
4133 4133
4134 4134 #: rhodecode/templates/shortlog/shortlog_data.html:92
4135 4135 msgid "Existing repository?"
4136 4136 msgstr ""
4137 4137
4138 4138 #: rhodecode/templates/summary/summary.html:4
4139 4139 #, python-format
4140 4140 msgid "%s Summary"
4141 4141 msgstr ""
4142 4142
4143 4143 #: rhodecode/templates/summary/summary.html:12
4144 4144 msgid "summary"
4145 4145 msgstr ""
4146 4146
4147 4147 #: rhodecode/templates/summary/summary.html:20
4148 4148 #, python-format
4149 4149 msgid "repo %s ATOM feed"
4150 4150 msgstr ""
4151 4151
4152 4152 #: rhodecode/templates/summary/summary.html:21
4153 4153 #, python-format
4154 4154 msgid "repo %s RSS feed"
4155 4155 msgstr ""
4156 4156
4157 4157 #: rhodecode/templates/summary/summary.html:49
4158 4158 #: rhodecode/templates/summary/summary.html:52
4159 4159 msgid "ATOM"
4160 4160 msgstr ""
4161 4161
4162 4162 #: rhodecode/templates/summary/summary.html:70
4163 4163 #, python-format
4164 4164 msgid "Repository locked by %s"
4165 4165 msgstr ""
4166 4166
4167 4167 #: rhodecode/templates/summary/summary.html:72
4168 4168 msgid "Repository unlocked"
4169 4169 msgstr ""
4170 4170
4171 4171 #: rhodecode/templates/summary/summary.html:91
4172 4172 #, python-format
4173 4173 msgid "Non changable ID %s"
4174 4174 msgstr ""
4175 4175
4176 4176 #: rhodecode/templates/summary/summary.html:96
4177 4177 msgid "public"
4178 4178 msgstr ""
4179 4179
4180 4180 #: rhodecode/templates/summary/summary.html:104
4181 4181 msgid "remote clone"
4182 4182 msgstr ""
4183 4183
4184 4184 #: rhodecode/templates/summary/summary.html:125
4185 4185 msgid "Contact"
4186 4186 msgstr ""
4187 4187
4188 4188 #: rhodecode/templates/summary/summary.html:139
4189 4189 msgid "Clone url"
4190 4190 msgstr ""
4191 4191
4192 4192 #: rhodecode/templates/summary/summary.html:142
4193 4193 msgid "Show by Name"
4194 4194 msgstr ""
4195 4195
4196 4196 #: rhodecode/templates/summary/summary.html:143
4197 4197 msgid "Show by ID"
4198 4198 msgstr ""
4199 4199
4200 4200 #: rhodecode/templates/summary/summary.html:151
4201 4201 msgid "Trending files"
4202 4202 msgstr ""
4203 4203
4204 4204 #: rhodecode/templates/summary/summary.html:159
4205 4205 #: rhodecode/templates/summary/summary.html:175
4206 4206 #: rhodecode/templates/summary/summary.html:203
4207 4207 msgid "enable"
4208 4208 msgstr ""
4209 4209
4210 4210 #: rhodecode/templates/summary/summary.html:167
4211 4211 msgid "Download"
4212 4212 msgstr ""
4213 4213
4214 4214 #: rhodecode/templates/summary/summary.html:171
4215 4215 msgid "There are no downloads yet"
4216 4216 msgstr ""
4217 4217
4218 4218 #: rhodecode/templates/summary/summary.html:173
4219 4219 msgid "Downloads are disabled for this repository"
4220 4220 msgstr ""
4221 4221
4222 4222 #: rhodecode/templates/summary/summary.html:179
4223 4223 msgid "Download as zip"
4224 4224 msgstr ""
4225 4225
4226 4226 #: rhodecode/templates/summary/summary.html:182
4227 4227 msgid "Check this to download archive with subrepos"
4228 4228 msgstr ""
4229 4229
4230 4230 #: rhodecode/templates/summary/summary.html:182
4231 4231 msgid "with subrepos"
4232 4232 msgstr ""
4233 4233
4234 4234 #: rhodecode/templates/summary/summary.html:195
4235 4235 msgid "Commit activity by day / author"
4236 4236 msgstr ""
4237 4237
4238 4238 #: rhodecode/templates/summary/summary.html:206
4239 4239 msgid "Stats gathered: "
4240 4240 msgstr ""
4241 4241
4242 4242 #: rhodecode/templates/summary/summary.html:227
4243 4243 msgid "Shortlog"
4244 4244 msgstr ""
4245 4245
4246 4246 #: rhodecode/templates/summary/summary.html:229
4247 4247 msgid "Quick start"
4248 4248 msgstr ""
4249 4249
4250 4250 #: rhodecode/templates/summary/summary.html:243
4251 4251 #, python-format
4252 4252 msgid "Readme file at revision '%s'"
4253 4253 msgstr ""
4254 4254
4255 4255 #: rhodecode/templates/summary/summary.html:246
4256 4256 msgid "Permalink to this readme"
4257 4257 msgstr ""
4258 4258
4259 4259 #: rhodecode/templates/summary/summary.html:304
4260 4260 #, python-format
4261 4261 msgid "Download %s as %s"
4262 4262 msgstr ""
4263 4263
4264 4264 #: rhodecode/templates/summary/summary.html:661
4265 4265 msgid "commits"
4266 4266 msgstr ""
4267 4267
4268 4268 #: rhodecode/templates/summary/summary.html:662
4269 4269 msgid "files added"
4270 4270 msgstr ""
4271 4271
4272 4272 #: rhodecode/templates/summary/summary.html:663
4273 4273 msgid "files changed"
4274 4274 msgstr ""
4275 4275
4276 4276 #: rhodecode/templates/summary/summary.html:664
4277 4277 msgid "files removed"
4278 4278 msgstr ""
4279 4279
4280 4280 #: rhodecode/templates/summary/summary.html:667
4281 4281 msgid "commit"
4282 4282 msgstr ""
4283 4283
4284 4284 #: rhodecode/templates/summary/summary.html:668
4285 4285 msgid "file added"
4286 4286 msgstr ""
4287 4287
4288 4288 #: rhodecode/templates/summary/summary.html:669
4289 4289 msgid "file changed"
4290 4290 msgstr ""
4291 4291
4292 4292 #: rhodecode/templates/summary/summary.html:670
4293 4293 msgid "file removed"
4294 4294 msgstr ""
4295 4295
4296 4296 #: rhodecode/templates/tags/tags.html:5
4297 4297 #, python-format
4298 4298 msgid "%s Tags"
4299 4299 msgstr ""
4300 4300
4301 4301 #: rhodecode/templates/tags/tags.html:29
4302 4302 msgid "Compare tags"
4303 4303 msgstr ""
4304 4304
1 NO CONTENT: modified file, binary diff hidden
@@ -1,4449 +1,4449 b''
1 1 # French translations for RhodeCode.
2 2 # Copyright (C) 2011 ORGANIZATION
3 3 # This file is distributed under the same license as the RhodeCode project.
4 4 # FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
5 5 #
6 6 msgid ""
7 7 msgstr ""
8 8 "Project-Id-Version: RhodeCode 1.1.5\n"
9 9 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
10 10 "POT-Creation-Date: 2013-01-28 00:24+0100\n"
11 11 "PO-Revision-Date: 2012-10-02 11:32+0100\n"
12 12 "Last-Translator: Vincent Duvert <vincent@duvert.net>\n"
13 13 "Language-Team: fr <LL@li.org>\n"
14 14 "Plural-Forms: nplurals=2; plural=(n > 1)\n"
15 15 "MIME-Version: 1.0\n"
16 16 "Content-Type: text/plain; charset=utf-8\n"
17 17 "Content-Transfer-Encoding: 8bit\n"
18 18 "Generated-By: Babel 0.9.6\n"
19 19
20 20 #: rhodecode/controllers/changelog.py:95
21 21 msgid "All Branches"
22 22 msgstr "Toutes les branches"
23 23
24 24 #: rhodecode/controllers/changeset.py:83
25 25 msgid "show white space"
26 26 msgstr "Afficher les espaces et tabulations"
27 27
28 28 #: rhodecode/controllers/changeset.py:90 rhodecode/controllers/changeset.py:97
29 29 msgid "ignore white space"
30 30 msgstr "Ignorer les espaces et tabulations"
31 31
32 32 #: rhodecode/controllers/changeset.py:163
33 33 #, python-format
34 34 msgid "%s line context"
35 35 msgstr "Afficher %s lignes de contexte"
36 36
37 37 #: rhodecode/controllers/changeset.py:329
38 38 #: rhodecode/controllers/pullrequests.py:416
39 39 #, python-format
40 40 msgid "Status change -> %s"
41 41 msgstr "Changement de statut -> %s"
42 42
43 43 #: rhodecode/controllers/changeset.py:360
44 44 #, fuzzy
45 45 msgid ""
46 46 "Changing status on a changeset associated with a closed pull request is "
47 47 "not allowed"
48 48 msgstr ""
49 49 "Le changement de statut d’un changeset associé à une pull request fermée "
50 50 "n’est pas autorisé."
51 51
52 52 #: rhodecode/controllers/compare.py:75
53 53 #: rhodecode/controllers/pullrequests.py:121
54 54 #: rhodecode/controllers/shortlog.py:100
55 55 msgid "There are no changesets yet"
56 56 msgstr "Il n’y a aucun changement pour le moment"
57 57
58 58 #: rhodecode/controllers/error.py:69
59 59 msgid "Home page"
60 60 msgstr "Accueil"
61 61
62 62 #: rhodecode/controllers/error.py:98
63 63 msgid "The request could not be understood by the server due to malformed syntax."
64 64 msgstr ""
65 65 "Le serveur n’a pas pu interpréter la requête à cause d’une erreur de "
66 66 "syntaxe"
67 67
68 68 #: rhodecode/controllers/error.py:101
69 69 msgid "Unauthorized access to resource"
70 70 msgstr "Accès interdit à cet ressource"
71 71
72 72 #: rhodecode/controllers/error.py:103
73 73 msgid "You don't have permission to view this page"
74 74 msgstr "Vous n’avez pas la permission de voir cette page"
75 75
76 76 #: rhodecode/controllers/error.py:105
77 77 msgid "The resource could not be found"
78 78 msgstr "Ressource introuvable"
79 79
80 80 #: rhodecode/controllers/error.py:107
81 81 msgid ""
82 82 "The server encountered an unexpected condition which prevented it from "
83 83 "fulfilling the request."
84 84 msgstr ""
85 85 "La requête n’a pu être traitée en raison d’une erreur survenue sur le "
86 86 "serveur."
87 87
88 88 #: rhodecode/controllers/feed.py:52
89 89 #, python-format
90 90 msgid "Changes on %s repository"
91 91 msgstr "Changements sur le dépôt %s"
92 92
93 93 #: rhodecode/controllers/feed.py:53
94 94 #, python-format
95 95 msgid "%s %s feed"
96 96 msgstr "Flux %s de %s"
97 97
98 98 #: rhodecode/controllers/feed.py:86
99 99 #: rhodecode/templates/changeset/changeset.html:137
100 100 #: rhodecode/templates/changeset/changeset.html:149
101 101 #: rhodecode/templates/compare/compare_diff.html:62
102 102 #: rhodecode/templates/compare/compare_diff.html:73
103 103 #: rhodecode/templates/pullrequests/pullrequest_show.html:112
104 104 #: rhodecode/templates/pullrequests/pullrequest_show.html:171
105 105 msgid "Changeset was too big and was cut off..."
106 106 msgstr "Cet ensemble de changements était trop important et a été découpé…"
107 107
108 108 #: rhodecode/controllers/feed.py:92
109 109 msgid "commited on"
110 110 msgstr "a commité, le"
111 111
112 112 #: rhodecode/controllers/files.py:86
113 113 msgid "click here to add new file"
114 114 msgstr "Ajouter un nouveau fichier"
115 115
116 116 #: rhodecode/controllers/files.py:87
117 117 #, python-format
118 118 msgid "There are no files yet %s"
119 119 msgstr "Il n’y a pas encore de fichiers %s"
120 120
121 121 #: rhodecode/controllers/files.py:269 rhodecode/controllers/files.py:338
122 122 #, python-format
123 123 msgid "This repository is has been locked by %s on %s"
124 124 msgstr "Ce dépôt a été verrouillé par %s sur %s."
125 125
126 126 #: rhodecode/controllers/files.py:281
127 127 msgid "You can only edit files with revision being a valid branch "
128 128 msgstr ""
129 129
130 130 #: rhodecode/controllers/files.py:295
131 131 #, fuzzy, python-format
132 132 msgid "Edited file %s via RhodeCode"
133 133 msgstr "%s édité via RhodeCode"
134 134
135 135 #: rhodecode/controllers/files.py:311
136 136 msgid "No changes"
137 137 msgstr "Aucun changement"
138 138
139 139 #: rhodecode/controllers/files.py:321 rhodecode/controllers/files.py:384
140 140 #, python-format
141 141 msgid "Successfully committed to %s"
142 142 msgstr "Commit réalisé avec succès sur %s"
143 143
144 144 #: rhodecode/controllers/files.py:326 rhodecode/controllers/files.py:390
145 145 msgid "Error occurred during commit"
146 146 msgstr "Une erreur est survenue durant le commit"
147 147
148 148 #: rhodecode/controllers/files.py:350
149 149 #, fuzzy
150 150 msgid "Added file via RhodeCode"
151 151 msgstr "%s ajouté par RhodeCode"
152 152
153 153 #: rhodecode/controllers/files.py:370
154 154 msgid "No content"
155 155 msgstr "Aucun contenu"
156 156
157 157 #: rhodecode/controllers/files.py:374
158 158 msgid "No filename"
159 159 msgstr "Aucun nom de fichier"
160 160
161 161 #: rhodecode/controllers/files.py:416
162 162 msgid "downloads disabled"
163 163 msgstr "Les téléchargements sont désactivés"
164 164
165 165 #: rhodecode/controllers/files.py:427
166 166 #, python-format
167 167 msgid "Unknown revision %s"
168 168 msgstr "Révision %s inconnue."
169 169
170 170 #: rhodecode/controllers/files.py:429
171 171 msgid "Empty repository"
172 172 msgstr "Dépôt vide."
173 173
174 174 #: rhodecode/controllers/files.py:431
175 175 msgid "Unknown archive type"
176 176 msgstr "Type d’archive inconnu"
177 177
178 178 #: rhodecode/controllers/files.py:576
179 179 #: rhodecode/templates/changeset/changeset_range.html:13
180 180 #: rhodecode/templates/changeset/changeset_range.html:31
181 181 msgid "Changesets"
182 182 msgstr "Changesets"
183 183
184 184 #: rhodecode/controllers/files.py:577 rhodecode/controllers/pullrequests.py:74
185 185 #: rhodecode/controllers/summary.py:236 rhodecode/model/scm.py:564
186 186 msgid "Branches"
187 187 msgstr "Branches"
188 188
189 189 #: rhodecode/controllers/files.py:578 rhodecode/controllers/pullrequests.py:78
190 190 #: rhodecode/controllers/summary.py:237 rhodecode/model/scm.py:575
191 191 msgid "Tags"
192 192 msgstr "Tags"
193 193
194 194 #: rhodecode/controllers/forks.py:165
195 195 #, python-format
196 196 msgid "forked %s repository as %s"
197 197 msgstr "dépôt %s forké en tant que %s"
198 198
199 199 #: rhodecode/controllers/forks.py:179
200 200 #, python-format
201 201 msgid "An error occurred during repository forking %s"
202 202 msgstr "Une erreur est survenue durant le fork du dépôt %s."
203 203
204 204 #: rhodecode/controllers/journal.py:275 rhodecode/controllers/journal.py:318
205 205 msgid "public journal"
206 206 msgstr "Journal public"
207 207
208 208 #: rhodecode/controllers/journal.py:279 rhodecode/controllers/journal.py:322
209 209 #: rhodecode/templates/base/base.html:238
210 210 #: rhodecode/templates/journal/journal.html:12
211 211 msgid "journal"
212 212 msgstr "Journal"
213 213
214 214 #: rhodecode/controllers/login.py:142
215 215 msgid "You have successfully registered into rhodecode"
216 216 msgstr "Vous vous êtes inscrits avec succès à RhodeCode"
217 217
218 218 #: rhodecode/controllers/login.py:163
219 219 msgid "Your password reset link was sent"
220 220 msgstr "Un lien de rénitialisation de votre mot de passe vous a été envoyé."
221 221
222 222 #: rhodecode/controllers/login.py:183
223 223 msgid ""
224 224 "Your password reset was successful, new password has been sent to your "
225 225 "email"
226 226 msgstr ""
227 227 "Votre mot de passe a été réinitialisé. Votre nouveau mot de passe vous a "
228 228 "été envoyé par e-mail."
229 229
230 230 #: rhodecode/controllers/pullrequests.py:76 rhodecode/model/scm.py:570
231 231 msgid "Bookmarks"
232 232 msgstr "Signets"
233 233
234 234 #: rhodecode/controllers/pullrequests.py:190
235 235 msgid "Pull request requires a title with min. 3 chars"
236 236 msgstr "Les requêtes de pull nécessitent un titre d’au moins 3 caractères."
237 237
238 238 #: rhodecode/controllers/pullrequests.py:192
239 239 msgid "error during creation of pull request"
240 240 msgstr "Une erreur est survenue lors de la création de la requête de pull."
241 241
242 242 #: rhodecode/controllers/pullrequests.py:224
243 243 msgid "Successfully opened new pull request"
244 244 msgstr "La requête de pull a été ouverte avec succès."
245 245
246 246 #: rhodecode/controllers/pullrequests.py:227
247 247 msgid "Error occurred during sending pull request"
248 248 msgstr "Une erreur est survenue durant l’envoi de la requête de pull."
249 249
250 250 #: rhodecode/controllers/pullrequests.py:260
251 251 msgid "Successfully deleted pull request"
252 252 msgstr "La requête de pull a été supprimée avec succès."
253 253
254 254 #: rhodecode/controllers/pullrequests.py:451
255 255 msgid "Closing pull request on other statuses than rejected or approved forbidden"
256 256 msgstr ""
257 257
258 258 #: rhodecode/controllers/search.py:134
259 259 msgid "Invalid search query. Try quoting it."
260 260 msgstr "Requête invalide. Essayer de la mettre entre guillemets."
261 261
262 262 #: rhodecode/controllers/search.py:139
263 263 msgid "There is no index to search in. Please run whoosh indexer"
264 264 msgstr ""
265 265 "L’index de recherche n’est pas présent. Veuillez exécuter l’indexeur de "
266 266 "code Whoosh."
267 267
268 268 #: rhodecode/controllers/search.py:143
269 269 msgid "An error occurred during this search operation"
270 270 msgstr "Une erreur est survenue durant l’opération de recherche."
271 271
272 272 #: rhodecode/controllers/settings.py:120
273 273 #: rhodecode/controllers/admin/repos.py:254
274 274 #, python-format
275 275 msgid "Repository %s updated successfully"
276 276 msgstr "Dépôt %s mis à jour avec succès."
277 277
278 278 #: rhodecode/controllers/settings.py:138
279 279 #: rhodecode/controllers/admin/repos.py:272
280 280 #, python-format
281 281 msgid "error occurred during update of repository %s"
282 282 msgstr "Une erreur est survenue lors de la mise à jour du dépôt %s."
283 283
284 284 #: rhodecode/controllers/settings.py:163
285 285 #: rhodecode/controllers/admin/repos.py:297
286 286 #, python-format
287 287 msgid "deleted repository %s"
288 288 msgstr "Dépôt %s supprimé"
289 289
290 290 #: rhodecode/controllers/settings.py:167
291 291 #: rhodecode/controllers/admin/repos.py:307
292 292 #: rhodecode/controllers/admin/repos.py:313
293 293 #, python-format
294 294 msgid "An error occurred during deletion of %s"
295 295 msgstr "Erreur pendant la suppression de %s"
296 296
297 297 #: rhodecode/controllers/settings.py:186
298 298 msgid "unlocked"
299 299 msgstr "déverrouillé"
300 300
301 301 #: rhodecode/controllers/settings.py:189
302 302 msgid "locked"
303 303 msgstr "verrouillé"
304 304
305 305 #: rhodecode/controllers/settings.py:191
306 306 #, python-format
307 307 msgid "Repository has been %s"
308 308 msgstr "Le dépôt a été %s."
309 309
310 310 #: rhodecode/controllers/settings.py:195
311 311 #: rhodecode/controllers/admin/repos.py:405
312 312 msgid "An error occurred during unlocking"
313 313 msgstr "Une erreur est survenue durant le déverrouillage."
314 314
315 315 #: rhodecode/controllers/summary.py:140
316 316 msgid "No data loaded yet"
317 317 msgstr "Aucune donnée actuellement disponible."
318 318
319 319 #: rhodecode/controllers/summary.py:144
320 320 #: rhodecode/templates/summary/summary.html:157
321 321 msgid "Statistics are disabled for this repository"
322 322 msgstr "La mise à jour des statistiques est désactivée pour ce dépôt."
323 323
324 324 #: rhodecode/controllers/admin/defaults.py:96
325 325 #, fuzzy
326 326 msgid "Default settings updated successfully"
327 327 msgstr "Mise à jour réussie des réglages LDAP"
328 328
329 329 #: rhodecode/controllers/admin/defaults.py:110
330 330 #, fuzzy
331 331 msgid "error occurred during update of defaults"
332 332 msgstr "Une erreur est survenue durant la mise à jour de l’utilisateur %s."
333 333
334 334 #: rhodecode/controllers/admin/ldap_settings.py:50
335 335 msgid "BASE"
336 336 msgstr "Base"
337 337
338 338 #: rhodecode/controllers/admin/ldap_settings.py:51
339 339 msgid "ONELEVEL"
340 340 msgstr "Un niveau"
341 341
342 342 #: rhodecode/controllers/admin/ldap_settings.py:52
343 343 msgid "SUBTREE"
344 344 msgstr "Sous-arbre"
345 345
346 346 #: rhodecode/controllers/admin/ldap_settings.py:56
347 347 msgid "NEVER"
348 348 msgstr "NEVER"
349 349
350 350 #: rhodecode/controllers/admin/ldap_settings.py:57
351 351 msgid "ALLOW"
352 352 msgstr "Autoriser"
353 353
354 354 #: rhodecode/controllers/admin/ldap_settings.py:58
355 355 msgid "TRY"
356 356 msgstr "TRY"
357 357
358 358 #: rhodecode/controllers/admin/ldap_settings.py:59
359 359 msgid "DEMAND"
360 360 msgstr "DEMAND"
361 361
362 362 #: rhodecode/controllers/admin/ldap_settings.py:60
363 363 msgid "HARD"
364 364 msgstr "HARD"
365 365
366 366 #: rhodecode/controllers/admin/ldap_settings.py:64
367 367 msgid "No encryption"
368 368 msgstr "Pas de chiffrement"
369 369
370 370 #: rhodecode/controllers/admin/ldap_settings.py:65
371 371 msgid "LDAPS connection"
372 372 msgstr "Connection LDAPS"
373 373
374 374 #: rhodecode/controllers/admin/ldap_settings.py:66
375 375 msgid "START_TLS on LDAP connection"
376 376 msgstr "START_TLS à la connexion"
377 377
378 378 #: rhodecode/controllers/admin/ldap_settings.py:126
379 msgid "Ldap settings updated successfully"
379 msgid "LDAP settings updated successfully"
380 380 msgstr "Mise à jour réussie des réglages LDAP"
381 381
382 382 #: rhodecode/controllers/admin/ldap_settings.py:130
383 383 msgid "Unable to activate ldap. The \"python-ldap\" library is missing."
384 384 msgstr "Impossible d’activer LDAP. La bibliothèque « python-ldap » est manquante."
385 385
386 386 #: rhodecode/controllers/admin/ldap_settings.py:147
387 387 msgid "error occurred during update of ldap settings"
388 388 msgstr "Une erreur est survenue durant la mise à jour des réglages du LDAP."
389 389
390 390 #: rhodecode/controllers/admin/permissions.py:60
391 391 #: rhodecode/controllers/admin/permissions.py:64
392 392 msgid "None"
393 393 msgstr "Aucun"
394 394
395 395 #: rhodecode/controllers/admin/permissions.py:61
396 396 #: rhodecode/controllers/admin/permissions.py:65
397 397 msgid "Read"
398 398 msgstr "Lire"
399 399
400 400 #: rhodecode/controllers/admin/permissions.py:62
401 401 #: rhodecode/controllers/admin/permissions.py:66
402 402 msgid "Write"
403 403 msgstr "Écrire"
404 404
405 405 #: rhodecode/controllers/admin/permissions.py:63
406 406 #: rhodecode/controllers/admin/permissions.py:67
407 407 #: rhodecode/templates/admin/defaults/defaults.html:9
408 408 #: rhodecode/templates/admin/ldap/ldap.html:9
409 409 #: rhodecode/templates/admin/permissions/permissions.html:9
410 410 #: rhodecode/templates/admin/repos/repo_add.html:9
411 411 #: rhodecode/templates/admin/repos/repo_edit.html:9
412 412 #: rhodecode/templates/admin/repos/repos.html:9
413 413 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:8
414 414 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:8
415 415 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:10
416 416 #: rhodecode/templates/admin/settings/hooks.html:9
417 417 #: rhodecode/templates/admin/settings/settings.html:9
418 418 #: rhodecode/templates/admin/users/user_add.html:8
419 419 #: rhodecode/templates/admin/users/user_edit.html:9
420 420 #: rhodecode/templates/admin/users/user_edit.html:130
421 421 #: rhodecode/templates/admin/users/users.html:9
422 422 #: rhodecode/templates/admin/users_groups/users_group_add.html:8
423 423 #: rhodecode/templates/admin/users_groups/users_group_edit.html:9
424 424 #: rhodecode/templates/admin/users_groups/users_groups.html:9
425 425 #: rhodecode/templates/base/base.html:203
426 426 #: rhodecode/templates/base/base.html:324
427 427 #: rhodecode/templates/base/base.html:326
428 428 #: rhodecode/templates/base/base.html:328
429 429 msgid "Admin"
430 430 msgstr "Administration"
431 431
432 432 #: rhodecode/controllers/admin/permissions.py:70
433 433 msgid "disabled"
434 434 msgstr "Désactivé"
435 435
436 436 #: rhodecode/controllers/admin/permissions.py:72
437 437 msgid "allowed with manual account activation"
438 438 msgstr "Autorisé avec activation manuelle du compte"
439 439
440 440 #: rhodecode/controllers/admin/permissions.py:74
441 441 msgid "allowed with automatic account activation"
442 442 msgstr "Autorisé avec activation automatique du compte"
443 443
444 444 #: rhodecode/controllers/admin/permissions.py:76
445 445 #: rhodecode/controllers/admin/permissions.py:79
446 446 msgid "Disabled"
447 447 msgstr "Interdite"
448 448
449 449 #: rhodecode/controllers/admin/permissions.py:77
450 450 #: rhodecode/controllers/admin/permissions.py:80
451 451 msgid "Enabled"
452 452 msgstr "Autorisée"
453 453
454 454 #: rhodecode/controllers/admin/permissions.py:128
455 455 msgid "Default permissions updated successfully"
456 456 msgstr "Permissions par défaut mises à jour avec succès"
457 457
458 458 #: rhodecode/controllers/admin/permissions.py:142
459 459 msgid "error occurred during update of permissions"
460 460 msgstr "erreur pendant la mise à jour des permissions"
461 461
462 462 #: rhodecode/controllers/admin/repos.py:123
463 463 msgid "--REMOVE FORK--"
464 464 msgstr "[Pas un fork]"
465 465
466 466 #: rhodecode/controllers/admin/repos.py:162
467 467 #, python-format
468 468 msgid "created repository %s from %s"
469 469 msgstr "Le dépôt %s a été créé depuis %s."
470 470
471 471 #: rhodecode/controllers/admin/repos.py:166
472 472 #, python-format
473 473 msgid "created repository %s"
474 474 msgstr "Le dépôt %s a été créé."
475 475
476 476 #: rhodecode/controllers/admin/repos.py:197
477 477 #, python-format
478 478 msgid "error occurred during creation of repository %s"
479 479 msgstr "Une erreur est survenue durant la création du dépôt %s."
480 480
481 481 #: rhodecode/controllers/admin/repos.py:302
482 482 #, python-format
483 483 msgid "Cannot delete %s it still contains attached forks"
484 484 msgstr "Impossible de supprimer le dépôt %s : Des forks y sont attachés."
485 485
486 486 #: rhodecode/controllers/admin/repos.py:331
487 487 msgid "An error occurred during deletion of repository user"
488 488 msgstr "Une erreur est survenue durant la suppression de l’utilisateur du dépôt."
489 489
490 490 #: rhodecode/controllers/admin/repos.py:350
491 491 msgid "An error occurred during deletion of repository users groups"
492 492 msgstr ""
493 493 "Une erreur est survenue durant la suppression du groupe d’utilisateurs de"
494 494 " ce dépôt."
495 495
496 496 #: rhodecode/controllers/admin/repos.py:368
497 497 msgid "An error occurred during deletion of repository stats"
498 498 msgstr "Une erreur est survenue durant la suppression des statistiques du dépôt."
499 499
500 500 #: rhodecode/controllers/admin/repos.py:385
501 501 msgid "An error occurred during cache invalidation"
502 502 msgstr "Une erreur est survenue durant l’invalidation du cache."
503 503
504 504 #: rhodecode/controllers/admin/repos.py:425
505 505 msgid "Updated repository visibility in public journal"
506 506 msgstr "La visibilité du dépôt dans le journal public a été mise à jour."
507 507
508 508 #: rhodecode/controllers/admin/repos.py:429
509 509 msgid "An error occurred during setting this repository in public journal"
510 510 msgstr ""
511 511 "Une erreur est survenue durant la configuration du journal public pour ce"
512 512 " dépôt."
513 513
514 514 #: rhodecode/controllers/admin/repos.py:434 rhodecode/model/validators.py:301
515 515 msgid "Token mismatch"
516 516 msgstr "Jeton d’authentification incorrect."
517 517
518 518 #: rhodecode/controllers/admin/repos.py:447
519 519 msgid "Pulled from remote location"
520 520 msgstr "Les changements distants ont été récupérés."
521 521
522 522 #: rhodecode/controllers/admin/repos.py:449
523 523 msgid "An error occurred during pull from remote location"
524 524 msgstr "Une erreur est survenue durant le pull depuis la source distante."
525 525
526 526 #: rhodecode/controllers/admin/repos.py:465
527 527 msgid "Nothing"
528 528 msgstr "[Aucun dépôt]"
529 529
530 530 #: rhodecode/controllers/admin/repos.py:467
531 531 #, python-format
532 532 msgid "Marked repo %s as fork of %s"
533 533 msgstr "Le dépôt %s a été marké comme fork de %s"
534 534
535 535 #: rhodecode/controllers/admin/repos.py:471
536 536 msgid "An error occurred during this operation"
537 537 msgstr "Une erreur est survenue durant cette opération."
538 538
539 539 #: rhodecode/controllers/admin/repos_groups.py:136
540 540 #, python-format
541 541 msgid "created repos group %s"
542 542 msgstr "Le groupe de dépôts %s a été créé."
543 543
544 544 #: rhodecode/controllers/admin/repos_groups.py:148
545 545 #, python-format
546 546 msgid "error occurred during creation of repos group %s"
547 547 msgstr "Une erreur est survenue durant la création du groupe de dépôts %s."
548 548
549 549 #: rhodecode/controllers/admin/repos_groups.py:205
550 550 #, python-format
551 551 msgid "updated repos group %s"
552 552 msgstr "Le groupe de dépôts %s a été mis à jour."
553 553
554 554 #: rhodecode/controllers/admin/repos_groups.py:220
555 555 #, python-format
556 556 msgid "error occurred during update of repos group %s"
557 557 msgstr "Une erreur est survenue durant la mise à jour du groupe de dépôts %s."
558 558
559 559 #: rhodecode/controllers/admin/repos_groups.py:238
560 560 #, python-format
561 561 msgid "This group contains %s repositores and cannot be deleted"
562 562 msgstr "Ce groupe contient %s dépôts et ne peut être supprimé."
563 563
564 564 #: rhodecode/controllers/admin/repos_groups.py:246
565 565 #, python-format
566 566 msgid "removed repos group %s"
567 567 msgstr "Le groupe de dépôts %s a été supprimé."
568 568
569 569 #: rhodecode/controllers/admin/repos_groups.py:252
570 570 msgid "Cannot delete this group it still contains subgroups"
571 571 msgstr "Impossible de supprimer ce groupe : Il contient des sous-groupes."
572 572
573 573 #: rhodecode/controllers/admin/repos_groups.py:257
574 574 #: rhodecode/controllers/admin/repos_groups.py:262
575 575 #, python-format
576 576 msgid "error occurred during deletion of repos group %s"
577 577 msgstr "Une erreur est survenue durant la suppression du groupe de dépôts %s."
578 578
579 579 #: rhodecode/controllers/admin/repos_groups.py:283
580 580 msgid "An error occurred during deletion of group user"
581 581 msgstr ""
582 582 "Une erreur est survenue durant la suppression de l’utilisateur du groupe "
583 583 "de dépôts."
584 584
585 585 #: rhodecode/controllers/admin/repos_groups.py:304
586 586 msgid "An error occurred during deletion of group users groups"
587 587 msgstr ""
588 588 "Une erreur est survenue durant la suppression du groupe d’utilisateurs du"
589 589 " groupe de dépôts."
590 590
591 591 #: rhodecode/controllers/admin/settings.py:124
592 592 #, fuzzy, python-format
593 593 msgid "Repositories successfully rescanned added: %s ; removed: %s"
594 594 msgstr "Après re-scan : %s ajouté(s), %s enlevé(s)"
595 595
596 596 #: rhodecode/controllers/admin/settings.py:133
597 597 msgid "Whoosh reindex task scheduled"
598 598 msgstr "La tâche de réindexation Whoosh a été planifiée."
599 599
600 600 #: rhodecode/controllers/admin/settings.py:164
601 601 msgid "Updated application settings"
602 602 msgstr "Réglages mis à jour"
603 603
604 604 #: rhodecode/controllers/admin/settings.py:168
605 605 #: rhodecode/controllers/admin/settings.py:301
606 606 msgid "error occurred during updating application settings"
607 607 msgstr "Une erreur est survenue durant la mise à jour des options."
608 608
609 609 #: rhodecode/controllers/admin/settings.py:209
610 610 msgid "Updated visualisation settings"
611 611 msgstr "Réglages d’affichage mis à jour."
612 612
613 613 #: rhodecode/controllers/admin/settings.py:214
614 614 msgid "error occurred during updating visualisation settings"
615 615 msgstr "Une erreur est survenue durant la mise à jour des réglages d’affichages."
616 616
617 617 #: rhodecode/controllers/admin/settings.py:297
618 618 msgid "Updated VCS settings"
619 619 msgstr "Réglages des gestionnaires de versions mis à jour."
620 620
621 621 #: rhodecode/controllers/admin/settings.py:311
622 622 msgid "Added new hook"
623 623 msgstr "Le nouveau hook a été ajouté."
624 624
625 625 #: rhodecode/controllers/admin/settings.py:323
626 626 msgid "Updated hooks"
627 627 msgstr "Hooks mis à jour"
628 628
629 629 #: rhodecode/controllers/admin/settings.py:327
630 630 msgid "error occurred during hook creation"
631 631 msgstr "Une erreur est survenue durant la création du hook."
632 632
633 633 #: rhodecode/controllers/admin/settings.py:346
634 634 msgid "Email task created"
635 635 msgstr "La tâche d’e-mail a été créée."
636 636
637 637 #: rhodecode/controllers/admin/settings.py:408
638 638 msgid "You can't edit this user since it's crucial for entire application"
639 639 msgstr ""
640 640 "Vous ne pouvez pas éditer cet utilisateur ; il est nécessaire pour le bon"
641 641 " fonctionnement de l’application."
642 642
643 643 #: rhodecode/controllers/admin/settings.py:448
644 644 msgid "Your account was updated successfully"
645 645 msgstr "Votre compte a été mis à jour avec succès"
646 646
647 647 #: rhodecode/controllers/admin/settings.py:463
648 648 #: rhodecode/controllers/admin/users.py:198
649 649 #, python-format
650 650 msgid "error occurred during update of user %s"
651 651 msgstr "Une erreur est survenue durant la mise à jour de l’utilisateur %s."
652 652
653 653 #: rhodecode/controllers/admin/users.py:130
654 654 #, python-format
655 655 msgid "created user %s"
656 656 msgstr "utilisateur %s créé"
657 657
658 658 #: rhodecode/controllers/admin/users.py:142
659 659 #, python-format
660 660 msgid "error occurred during creation of user %s"
661 661 msgstr "Une erreur est survenue durant la création de l’utilisateur %s."
662 662
663 663 #: rhodecode/controllers/admin/users.py:176
664 664 msgid "User updated successfully"
665 665 msgstr "L’utilisateur a été mis à jour avec succès."
666 666
667 667 #: rhodecode/controllers/admin/users.py:214
668 668 msgid "successfully deleted user"
669 669 msgstr "L’utilisateur a été supprimé avec succès."
670 670
671 671 #: rhodecode/controllers/admin/users.py:219
672 672 msgid "An error occurred during deletion of user"
673 673 msgstr "Une erreur est survenue durant la suppression de l’utilisateur."
674 674
675 675 #: rhodecode/controllers/admin/users.py:233
676 676 msgid "You can't edit this user"
677 677 msgstr "Vous ne pouvez pas éditer cet utilisateur"
678 678
679 679 #: rhodecode/controllers/admin/users.py:276
680 680 msgid "Granted 'repository create' permission to user"
681 681 msgstr "La permission de création de dépôts a été accordée à l’utilisateur."
682 682
683 683 #: rhodecode/controllers/admin/users.py:281
684 684 msgid "Revoked 'repository create' permission to user"
685 685 msgstr "La permission de création de dépôts a été révoquée à l’utilisateur."
686 686
687 687 #: rhodecode/controllers/admin/users.py:287
688 688 msgid "Granted 'repository fork' permission to user"
689 689 msgstr "La permission de fork de dépôts a été accordée à l’utilisateur."
690 690
691 691 #: rhodecode/controllers/admin/users.py:292
692 692 msgid "Revoked 'repository fork' permission to user"
693 693 msgstr "La permission de fork de dépôts a été révoquée à l’utilisateur."
694 694
695 695 #: rhodecode/controllers/admin/users.py:298
696 696 #: rhodecode/controllers/admin/users_groups.py:279
697 697 msgid "An error occurred during permissions saving"
698 698 msgstr "Une erreur est survenue durant l’enregistrement des permissions."
699 699
700 700 #: rhodecode/controllers/admin/users.py:312
701 701 #, python-format
702 702 msgid "Added email %s to user"
703 703 msgstr "L’e-mail « %s » a été ajouté à l’utilisateur."
704 704
705 705 #: rhodecode/controllers/admin/users.py:318
706 706 msgid "An error occurred during email saving"
707 707 msgstr "Une erreur est survenue durant l’enregistrement de l’e-mail."
708 708
709 709 #: rhodecode/controllers/admin/users.py:328
710 710 msgid "Removed email from user"
711 711 msgstr "L’e-mail a été enlevé de l’utilisateur."
712 712
713 713 #: rhodecode/controllers/admin/users.py:341
714 714 #, fuzzy, python-format
715 715 msgid "Added ip %s to user"
716 716 msgstr "L’e-mail « %s » a été ajouté à l’utilisateur."
717 717
718 718 #: rhodecode/controllers/admin/users.py:347
719 719 #, fuzzy
720 720 msgid "An error occurred during ip saving"
721 721 msgstr "Une erreur est survenue durant l’enregistrement de l’e-mail."
722 722
723 723 #: rhodecode/controllers/admin/users.py:359
724 724 #, fuzzy
725 725 msgid "Removed ip from user"
726 726 msgstr "L’e-mail a été enlevé de l’utilisateur."
727 727
728 728 #: rhodecode/controllers/admin/users_groups.py:86
729 729 #, python-format
730 730 msgid "created users group %s"
731 731 msgstr "Le groupe d’utilisateurs %s a été créé."
732 732
733 733 #: rhodecode/controllers/admin/users_groups.py:97
734 734 #, python-format
735 735 msgid "error occurred during creation of users group %s"
736 736 msgstr "Une erreur est survenue durant la création du groupe d’utilisateurs %s."
737 737
738 738 #: rhodecode/controllers/admin/users_groups.py:164
739 739 #, python-format
740 740 msgid "updated users group %s"
741 741 msgstr "Le groupe d’utilisateurs %s a été mis à jour."
742 742
743 743 #: rhodecode/controllers/admin/users_groups.py:186
744 744 #, python-format
745 745 msgid "error occurred during update of users group %s"
746 746 msgstr "Une erreur est survenue durant la mise à jour du groupe d’utilisateurs %s."
747 747
748 748 #: rhodecode/controllers/admin/users_groups.py:203
749 749 msgid "successfully deleted users group"
750 750 msgstr "Le groupe d’utilisateurs a été supprimé avec succès."
751 751
752 752 #: rhodecode/controllers/admin/users_groups.py:208
753 753 msgid "An error occurred during deletion of users group"
754 754 msgstr "Une erreur est survenue lors de la suppression du groupe d’utilisateurs."
755 755
756 756 #: rhodecode/controllers/admin/users_groups.py:257
757 757 msgid "Granted 'repository create' permission to users group"
758 758 msgstr ""
759 759 "La permission de création de dépôts a été accordée au groupe "
760 760 "d’utilisateurs."
761 761
762 762 #: rhodecode/controllers/admin/users_groups.py:262
763 763 msgid "Revoked 'repository create' permission to users group"
764 764 msgstr ""
765 765 "La permission de création de dépôts a été révoquée au groupe "
766 766 "d’utilisateurs."
767 767
768 768 #: rhodecode/controllers/admin/users_groups.py:268
769 769 msgid "Granted 'repository fork' permission to users group"
770 770 msgstr "La permission de fork de dépôts a été accordée au groupe d’utilisateur."
771 771
772 772 #: rhodecode/controllers/admin/users_groups.py:273
773 773 msgid "Revoked 'repository fork' permission to users group"
774 774 msgstr "La permission de fork de dépôts a été révoquée au groupe d’utilisateurs."
775 775
776 776 #: rhodecode/lib/auth.py:509
777 777 #, fuzzy, python-format
778 778 msgid "IP %s not allowed"
779 779 msgstr "Followers de %s"
780 780
781 781 #: rhodecode/lib/auth.py:558
782 782 msgid "You need to be a registered user to perform this action"
783 783 msgstr "Vous devez être un utilisateur enregistré pour effectuer cette action."
784 784
785 785 #: rhodecode/lib/auth.py:599
786 786 msgid "You need to be a signed in to view this page"
787 787 msgstr "Vous devez être connecté pour visualiser cette page."
788 788
789 789 #: rhodecode/lib/diffs.py:74
790 790 msgid "binary file"
791 791 msgstr "Fichier binaire"
792 792
793 793 #: rhodecode/lib/diffs.py:90
794 794 msgid "Changeset was too big and was cut off, use diff menu to display this diff"
795 795 msgstr ""
796 796 "Cet ensemble de changements était trop gros pour être affiché et a été "
797 797 "découpé, utilisez le menu « Diff » pour afficher les différences."
798 798
799 799 #: rhodecode/lib/diffs.py:100
800 800 msgid "No changes detected"
801 801 msgstr "Aucun changement détecté."
802 802
803 803 #: rhodecode/lib/helpers.py:374
804 804 #, python-format
805 805 msgid "%a, %d %b %Y %H:%M:%S"
806 806 msgstr "%d/%m/%Y à %H:%M:%S"
807 807
808 808 #: rhodecode/lib/helpers.py:486
809 809 msgid "True"
810 810 msgstr "Vrai"
811 811
812 812 #: rhodecode/lib/helpers.py:490
813 813 msgid "False"
814 814 msgstr "Faux"
815 815
816 816 #: rhodecode/lib/helpers.py:530
817 817 #, fuzzy, python-format
818 818 msgid "Deleted branch: %s"
819 819 msgstr "Dépôt %s supprimé"
820 820
821 821 #: rhodecode/lib/helpers.py:533
822 822 #, fuzzy, python-format
823 823 msgid "Created tag: %s"
824 824 msgstr "utilisateur %s créé"
825 825
826 826 #: rhodecode/lib/helpers.py:546
827 827 msgid "Changeset not found"
828 828 msgstr "Ensemble de changements non trouvé"
829 829
830 830 #: rhodecode/lib/helpers.py:589
831 831 #, python-format
832 832 msgid "Show all combined changesets %s->%s"
833 833 msgstr "Afficher les changements combinés %s->%s"
834 834
835 835 #: rhodecode/lib/helpers.py:595
836 836 msgid "compare view"
837 837 msgstr "vue de comparaison"
838 838
839 839 #: rhodecode/lib/helpers.py:615
840 840 msgid "and"
841 841 msgstr "et"
842 842
843 843 #: rhodecode/lib/helpers.py:616
844 844 #, python-format
845 845 msgid "%s more"
846 846 msgstr "%s de plus"
847 847
848 848 #: rhodecode/lib/helpers.py:617 rhodecode/templates/changelog/changelog.html:51
849 849 msgid "revisions"
850 850 msgstr "révisions"
851 851
852 852 #: rhodecode/lib/helpers.py:641
853 853 #, fuzzy, python-format
854 854 msgid "fork name %s"
855 855 msgstr "Nom du fork %s"
856 856
857 857 #: rhodecode/lib/helpers.py:658
858 858 #: rhodecode/templates/pullrequests/pullrequest_show.html:4
859 859 #: rhodecode/templates/pullrequests/pullrequest_show.html:12
860 860 #, python-format
861 861 msgid "Pull request #%s"
862 862 msgstr "Requête de pull #%s"
863 863
864 864 #: rhodecode/lib/helpers.py:664
865 865 msgid "[deleted] repository"
866 866 msgstr "[a supprimé] le dépôt"
867 867
868 868 #: rhodecode/lib/helpers.py:666 rhodecode/lib/helpers.py:676
869 869 msgid "[created] repository"
870 870 msgstr "[a créé] le dépôt"
871 871
872 872 #: rhodecode/lib/helpers.py:668
873 873 msgid "[created] repository as fork"
874 874 msgstr "[a créé] le dépôt en tant que fork"
875 875
876 876 #: rhodecode/lib/helpers.py:670 rhodecode/lib/helpers.py:678
877 877 msgid "[forked] repository"
878 878 msgstr "[a forké] le dépôt"
879 879
880 880 #: rhodecode/lib/helpers.py:672 rhodecode/lib/helpers.py:680
881 881 msgid "[updated] repository"
882 882 msgstr "[a mis à jour] le dépôt"
883 883
884 884 #: rhodecode/lib/helpers.py:674
885 885 msgid "[delete] repository"
886 886 msgstr "[a supprimé] le dépôt"
887 887
888 888 #: rhodecode/lib/helpers.py:682
889 889 msgid "[created] user"
890 890 msgstr "[a créé] l’utilisateur"
891 891
892 892 #: rhodecode/lib/helpers.py:684
893 893 msgid "[updated] user"
894 894 msgstr "[a mis à jour] l’utilisateur"
895 895
896 896 #: rhodecode/lib/helpers.py:686
897 897 msgid "[created] users group"
898 898 msgstr "[a créé] le groupe d’utilisateurs"
899 899
900 900 #: rhodecode/lib/helpers.py:688
901 901 msgid "[updated] users group"
902 902 msgstr "[a mis à jour] le groupe d’utilisateurs"
903 903
904 904 #: rhodecode/lib/helpers.py:690
905 905 msgid "[commented] on revision in repository"
906 906 msgstr "[a commenté] une révision du dépôt"
907 907
908 908 #: rhodecode/lib/helpers.py:692
909 909 msgid "[commented] on pull request for"
910 910 msgstr "[a commenté] la requête de pull pour"
911 911
912 912 #: rhodecode/lib/helpers.py:694
913 913 msgid "[closed] pull request for"
914 914 msgstr "[a fermé] la requête de pull de"
915 915
916 916 #: rhodecode/lib/helpers.py:696
917 917 msgid "[pushed] into"
918 918 msgstr "[a pushé] dans"
919 919
920 920 #: rhodecode/lib/helpers.py:698
921 921 msgid "[committed via RhodeCode] into repository"
922 922 msgstr "[a commité via RhodeCode] dans le dépôt"
923 923
924 924 #: rhodecode/lib/helpers.py:700
925 925 msgid "[pulled from remote] into repository"
926 926 msgstr "[a pullé depuis un site distant] dans le dépôt"
927 927
928 928 #: rhodecode/lib/helpers.py:702
929 929 msgid "[pulled] from"
930 930 msgstr "[a pullé] depuis"
931 931
932 932 #: rhodecode/lib/helpers.py:704
933 933 msgid "[started following] repository"
934 934 msgstr "[suit maintenant] le dépôt"
935 935
936 936 #: rhodecode/lib/helpers.py:706
937 937 msgid "[stopped following] repository"
938 938 msgstr "[ne suit plus] le dépôt"
939 939
940 940 #: rhodecode/lib/helpers.py:884
941 941 #, python-format
942 942 msgid " and %s more"
943 943 msgstr "et %s de plus"
944 944
945 945 #: rhodecode/lib/helpers.py:888
946 946 msgid "No Files"
947 947 msgstr "Aucun fichier"
948 948
949 949 #: rhodecode/lib/helpers.py:1164
950 950 #, python-format
951 951 msgid ""
952 952 "%s repository is not mapped to db perhaps it was created or renamed from "
953 953 "the filesystem please run the application again in order to rescan "
954 954 "repositories"
955 955 msgstr ""
956 956 "Le dépôt %s n’est pas représenté dans la base de données. Il a "
957 957 "probablement été créé ou renommé manuellement. Veuillez relancer "
958 958 "l’application pour rescanner les dépôts."
959 959
960 960 #: rhodecode/lib/utils2.py:403
961 961 #, python-format
962 962 msgid "%d year"
963 963 msgid_plural "%d years"
964 964 msgstr[0] "%d an"
965 965 msgstr[1] "%d ans"
966 966
967 967 #: rhodecode/lib/utils2.py:404
968 968 #, python-format
969 969 msgid "%d month"
970 970 msgid_plural "%d months"
971 971 msgstr[0] "%d mois"
972 972 msgstr[1] "%d mois"
973 973
974 974 #: rhodecode/lib/utils2.py:405
975 975 #, python-format
976 976 msgid "%d day"
977 977 msgid_plural "%d days"
978 978 msgstr[0] "%d jour"
979 979 msgstr[1] "%d jours"
980 980
981 981 #: rhodecode/lib/utils2.py:406
982 982 #, python-format
983 983 msgid "%d hour"
984 984 msgid_plural "%d hours"
985 985 msgstr[0] "%d heure"
986 986 msgstr[1] "%d heures"
987 987
988 988 #: rhodecode/lib/utils2.py:407
989 989 #, python-format
990 990 msgid "%d minute"
991 991 msgid_plural "%d minutes"
992 992 msgstr[0] "%d minute"
993 993 msgstr[1] "%d minutes"
994 994
995 995 #: rhodecode/lib/utils2.py:408
996 996 #, python-format
997 997 msgid "%d second"
998 998 msgid_plural "%d seconds"
999 999 msgstr[0] "%d seconde"
1000 1000 msgstr[1] "%d secondes"
1001 1001
1002 1002 #: rhodecode/lib/utils2.py:424
1003 1003 #, fuzzy, python-format
1004 1004 msgid "in %s"
1005 1005 msgstr "à la ligne %s"
1006 1006
1007 1007 #: rhodecode/lib/utils2.py:426
1008 1008 #, python-format
1009 1009 msgid "%s ago"
1010 1010 msgstr "Il y a %s"
1011 1011
1012 1012 #: rhodecode/lib/utils2.py:428
1013 1013 #, fuzzy, python-format
1014 1014 msgid "in %s and %s"
1015 1015 msgstr "Il y a %s et %s"
1016 1016
1017 1017 #: rhodecode/lib/utils2.py:431
1018 1018 #, python-format
1019 1019 msgid "%s and %s ago"
1020 1020 msgstr "Il y a %s et %s"
1021 1021
1022 1022 #: rhodecode/lib/utils2.py:434
1023 1023 msgid "just now"
1024 1024 msgstr "à l’instant"
1025 1025
1026 1026 #: rhodecode/lib/celerylib/tasks.py:270
1027 1027 msgid "password reset link"
1028 1028 msgstr "Réinitialisation du mot de passe"
1029 1029
1030 1030 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1163
1031 1031 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1183 rhodecode/model/db.py:1313
1032 1032 msgid "Repository no access"
1033 1033 msgstr "Aucun accès au dépôt"
1034 1034
1035 1035 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1164
1036 1036 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1184 rhodecode/model/db.py:1314
1037 1037 msgid "Repository read access"
1038 1038 msgstr "Accès en lecture au dépôt"
1039 1039
1040 1040 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1165
1041 1041 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1185 rhodecode/model/db.py:1315
1042 1042 msgid "Repository write access"
1043 1043 msgstr "Accès en écriture au dépôt"
1044 1044
1045 1045 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1166
1046 1046 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1186 rhodecode/model/db.py:1316
1047 1047 msgid "Repository admin access"
1048 1048 msgstr "Accès administrateur au dépôt"
1049 1049
1050 1050 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1168
1051 1051 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1188 rhodecode/model/db.py:1318
1052 1052 msgid "Repositories Group no access"
1053 1053 msgstr "Aucun accès au groupe de dépôts"
1054 1054
1055 1055 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1169
1056 1056 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1189 rhodecode/model/db.py:1319
1057 1057 msgid "Repositories Group read access"
1058 1058 msgstr "Accès en lecture au groupe de dépôts"
1059 1059
1060 1060 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1170
1061 1061 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1190 rhodecode/model/db.py:1320
1062 1062 msgid "Repositories Group write access"
1063 1063 msgstr "Accès en écriture au groupe de dépôts"
1064 1064
1065 1065 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1171
1066 1066 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1191 rhodecode/model/db.py:1321
1067 1067 msgid "Repositories Group admin access"
1068 1068 msgstr "Accès administrateur au groupe de dépôts"
1069 1069
1070 1070 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1173
1071 1071 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1193 rhodecode/model/db.py:1323
1072 1072 msgid "RhodeCode Administrator"
1073 1073 msgstr "Administrateur RhodeCode"
1074 1074
1075 1075 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1174
1076 1076 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1194 rhodecode/model/db.py:1324
1077 1077 msgid "Repository creation disabled"
1078 1078 msgstr "Création de dépôt désactivée"
1079 1079
1080 1080 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1175
1081 1081 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1195 rhodecode/model/db.py:1325
1082 1082 msgid "Repository creation enabled"
1083 1083 msgstr "Création de dépôt activée"
1084 1084
1085 1085 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1176
1086 1086 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1196 rhodecode/model/db.py:1326
1087 1087 msgid "Repository forking disabled"
1088 1088 msgstr "Fork de dépôt désactivé"
1089 1089
1090 1090 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1177
1091 1091 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1197 rhodecode/model/db.py:1327
1092 1092 msgid "Repository forking enabled"
1093 1093 msgstr "Fork de dépôt activé"
1094 1094
1095 1095 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1178
1096 1096 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1198 rhodecode/model/db.py:1328
1097 1097 msgid "Register disabled"
1098 1098 msgstr "Enregistrement désactivé"
1099 1099
1100 1100 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1179
1101 1101 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1199 rhodecode/model/db.py:1329
1102 1102 msgid "Register new user with RhodeCode with manual activation"
1103 1103 msgstr "Enregistrer un nouvel utilisateur Rhodecode manuellement activé"
1104 1104
1105 1105 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1182
1106 1106 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1202 rhodecode/model/db.py:1332
1107 1107 msgid "Register new user with RhodeCode with auto activation"
1108 1108 msgstr "Enregistrer un nouvel utilisateur Rhodecode auto-activé"
1109 1109
1110 1110 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1623
1111 1111 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1643 rhodecode/model/db.py:1776
1112 1112 msgid "Not Reviewed"
1113 1113 msgstr "Pas encore relue"
1114 1114
1115 1115 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1624
1116 1116 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1644 rhodecode/model/db.py:1777
1117 1117 msgid "Approved"
1118 1118 msgstr "Approuvée "
1119 1119
1120 1120 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1625
1121 1121 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1645 rhodecode/model/db.py:1778
1122 1122 msgid "Rejected"
1123 1123 msgstr "Rejetée"
1124 1124
1125 1125 #: rhodecode/lib/dbmigrate/schema/db_1_4_0.py:1626
1126 1126 #: rhodecode/lib/dbmigrate/schema/db_1_5_0.py:1646 rhodecode/model/db.py:1779
1127 1127 msgid "Under Review"
1128 1128 msgstr "En cours de relecture"
1129 1129
1130 1130 #: rhodecode/model/comment.py:109
1131 1131 #, python-format
1132 1132 msgid "on line %s"
1133 1133 msgstr "à la ligne %s"
1134 1134
1135 1135 #: rhodecode/model/comment.py:176
1136 1136 msgid "[Mention]"
1137 1137 msgstr "[Mention]"
1138 1138
1139 1139 #: rhodecode/model/forms.py:43
1140 1140 msgid "Please enter a login"
1141 1141 msgstr "Veuillez entrer un identifiant"
1142 1142
1143 1143 #: rhodecode/model/forms.py:44
1144 1144 #, python-format
1145 1145 msgid "Enter a value %(min)i characters long or more"
1146 1146 msgstr "Entrez une valeur d’au moins %(min)i caractères de long."
1147 1147
1148 1148 #: rhodecode/model/forms.py:52
1149 1149 msgid "Please enter a password"
1150 1150 msgstr "Veuillez entrer un mot de passe"
1151 1151
1152 1152 #: rhodecode/model/forms.py:53
1153 1153 #, python-format
1154 1154 msgid "Enter %(min)i characters or more"
1155 1155 msgstr "Entrez au moins %(min)i caractères"
1156 1156
1157 1157 #: rhodecode/model/notification.py:220
1158 1158 #, fuzzy, python-format
1159 1159 msgid "commented on commit at %(when)s"
1160 1160 msgstr "a posté un commentaire sur le commit %(when)s"
1161 1161
1162 1162 #: rhodecode/model/notification.py:221
1163 1163 #, fuzzy, python-format
1164 1164 msgid "sent message at %(when)s"
1165 1165 msgstr "a envoyé un message %(when)s"
1166 1166
1167 1167 #: rhodecode/model/notification.py:222
1168 1168 #, fuzzy, python-format
1169 1169 msgid "mentioned you at %(when)s"
1170 1170 msgstr "vous a mentioné %(when)s"
1171 1171
1172 1172 #: rhodecode/model/notification.py:223
1173 1173 #, fuzzy, python-format
1174 1174 msgid "registered in RhodeCode at %(when)s"
1175 1175 msgstr "s’est enregistré sur RhodeCode %(when)s"
1176 1176
1177 1177 #: rhodecode/model/notification.py:224
1178 1178 #, fuzzy, python-format
1179 1179 msgid "opened new pull request at %(when)s"
1180 1180 msgstr "a ouvert une nouvelle requête de pull %(when)s"
1181 1181
1182 1182 #: rhodecode/model/notification.py:225
1183 1183 #, fuzzy, python-format
1184 1184 msgid "commented on pull request at %(when)s"
1185 1185 msgstr "a commenté sur la requête de pull %(when)s"
1186 1186
1187 1187 #: rhodecode/model/pull_request.py:100
1188 1188 #, python-format
1189 1189 msgid "%(user)s wants you to review pull request #%(pr_id)s"
1190 1190 msgstr "%(user)s voudrait que vous examiniez sa requête de pull nº%(pr_id)s"
1191 1191
1192 1192 #: rhodecode/model/scm.py:556
1193 1193 msgid "latest tip"
1194 1194 msgstr "Dernier sommet"
1195 1195
1196 1196 #: rhodecode/model/user.py:231
1197 1197 msgid "new user registration"
1198 1198 msgstr "Nouveau compte utilisateur enregistré"
1199 1199
1200 1200 #: rhodecode/model/user.py:256 rhodecode/model/user.py:280
1201 1201 msgid "You can't Edit this user since it's crucial for entire application"
1202 1202 msgstr ""
1203 1203 "Vous ne pouvez pas éditer cet utilisateur ; il est nécessaire pour le bon"
1204 1204 " fonctionnement de l’application."
1205 1205
1206 1206 #: rhodecode/model/user.py:302
1207 1207 msgid "You can't remove this user since it's crucial for entire application"
1208 1208 msgstr ""
1209 1209 "Vous ne pouvez pas supprimer cet utilisateur ; il est nécessaire pour le "
1210 1210 "bon fonctionnement de l’application."
1211 1211
1212 1212 #: rhodecode/model/user.py:308
1213 1213 #, python-format
1214 1214 msgid ""
1215 1215 "user \"%s\" still owns %s repositories and cannot be removed. Switch "
1216 1216 "owners or remove those repositories. %s"
1217 1217 msgstr ""
1218 1218 "L’utilisateur « %s » possède %s dépôts et ne peut être supprimé. Changez "
1219 1219 "les propriétaires de ces dépôts. %s"
1220 1220
1221 1221 #: rhodecode/model/validators.py:37 rhodecode/model/validators.py:38
1222 1222 msgid "Value cannot be an empty list"
1223 1223 msgstr "Cette valeur ne peut être une liste vide."
1224 1224
1225 1225 #: rhodecode/model/validators.py:84
1226 1226 #, python-format
1227 1227 msgid "Username \"%(username)s\" already exists"
1228 1228 msgstr "Le nom d’utilisateur « %(username)s » existe déjà."
1229 1229
1230 1230 #: rhodecode/model/validators.py:86
1231 1231 #, python-format
1232 1232 msgid "Username \"%(username)s\" is forbidden"
1233 1233 msgstr "Le nom d’utilisateur « %(username)s » n’est pas autorisé"
1234 1234
1235 1235 #: rhodecode/model/validators.py:88
1236 1236 msgid ""
1237 1237 "Username may only contain alphanumeric characters underscores, periods or"
1238 1238 " dashes and must begin with alphanumeric character"
1239 1239 msgstr ""
1240 1240 "Le nom d’utilisateur peut contenir uniquement des caractères alpha-"
1241 1241 "numériques ainsi que les caractères suivants : « _ . - ». Il doit "
1242 1242 "commencer par un caractère alpha-numérique."
1243 1243
1244 1244 #: rhodecode/model/validators.py:116
1245 1245 #, python-format
1246 1246 msgid "Username %(username)s is not valid"
1247 1247 msgstr "Le nom d’utilisateur « %(username)s » n’est pas valide."
1248 1248
1249 1249 #: rhodecode/model/validators.py:135
1250 1250 msgid "Invalid users group name"
1251 1251 msgstr "Nom de groupe d’utilisateurs invalide."
1252 1252
1253 1253 #: rhodecode/model/validators.py:136
1254 1254 #, python-format
1255 1255 msgid "Users group \"%(usersgroup)s\" already exists"
1256 1256 msgstr "Le groupe d’utilisateurs « %(usersgroup)s » existe déjà."
1257 1257
1258 1258 #: rhodecode/model/validators.py:138
1259 1259 msgid ""
1260 1260 "users group name may only contain alphanumeric characters underscores, "
1261 1261 "periods or dashes and must begin with alphanumeric character"
1262 1262 msgstr ""
1263 1263 "Le nom de groupe d’utilisateurs peut contenir uniquement des caractères "
1264 1264 "alpha-numériques ainsi que les caractères suivants : « _ . - ». Il doit "
1265 1265 "commencer par un caractère alpha-numérique."
1266 1266
1267 1267 #: rhodecode/model/validators.py:176
1268 1268 msgid "Cannot assign this group as parent"
1269 1269 msgstr "Impossible d’assigner ce groupe en tant que parent."
1270 1270
1271 1271 #: rhodecode/model/validators.py:177
1272 1272 #, python-format
1273 1273 msgid "Group \"%(group_name)s\" already exists"
1274 1274 msgstr "Le groupe « %(group_name)s » existe déjà."
1275 1275
1276 1276 #: rhodecode/model/validators.py:179
1277 1277 #, python-format
1278 1278 msgid "Repository with name \"%(group_name)s\" already exists"
1279 1279 msgstr "Un dépôt portant le nom « %(group_name)s » existe déjà."
1280 1280
1281 1281 #: rhodecode/model/validators.py:237
1282 1282 msgid "Invalid characters (non-ascii) in password"
1283 1283 msgstr "Caractères incorrects (non-ASCII) dans le mot de passe."
1284 1284
1285 1285 #: rhodecode/model/validators.py:252
1286 1286 msgid "Passwords do not match"
1287 1287 msgstr "Les mots de passe ne correspondent pas."
1288 1288
1289 1289 #: rhodecode/model/validators.py:269
1290 1290 msgid "invalid password"
1291 1291 msgstr "mot de passe invalide"
1292 1292
1293 1293 #: rhodecode/model/validators.py:270
1294 1294 msgid "invalid user name"
1295 1295 msgstr "nom d’utilisateur invalide"
1296 1296
1297 1297 #: rhodecode/model/validators.py:271
1298 1298 msgid "Your account is disabled"
1299 1299 msgstr "Votre compte est désactivé"
1300 1300
1301 1301 #: rhodecode/model/validators.py:315
1302 1302 #, python-format
1303 1303 msgid "Repository name %(repo)s is disallowed"
1304 1304 msgstr "Le nom de dépôt « %(repo)s » n’est pas autorisé."
1305 1305
1306 1306 #: rhodecode/model/validators.py:317
1307 1307 #, python-format
1308 1308 msgid "Repository named %(repo)s already exists"
1309 1309 msgstr "Un dépôt portant le nom « %(repo)s » existe déjà."
1310 1310
1311 1311 #: rhodecode/model/validators.py:318
1312 1312 #, python-format
1313 1313 msgid "Repository \"%(repo)s\" already exists in group \"%(group)s\""
1314 1314 msgstr "Le dépôt « %(repo)s » existe déjà dans le groupe « %(group)s »."
1315 1315
1316 1316 #: rhodecode/model/validators.py:320
1317 1317 #, python-format
1318 1318 msgid "Repositories group with name \"%(repo)s\" already exists"
1319 1319 msgstr "Un groupe de dépôts portant le nom « %(repo)s » existe déjà."
1320 1320
1321 1321 #: rhodecode/model/validators.py:433
1322 1322 msgid "invalid clone url"
1323 1323 msgstr "URL de clonage invalide."
1324 1324
1325 1325 #: rhodecode/model/validators.py:434
1326 1326 msgid "Invalid clone url, provide a valid clone http(s)/svn+http(s) url"
1327 1327 msgstr ""
1328 1328 "URL à cloner invalide. Veuillez fournir une URL valide en http(s) ou "
1329 1329 "svn+http(s)."
1330 1330
1331 1331 #: rhodecode/model/validators.py:459
1332 1332 msgid "Fork have to be the same type as parent"
1333 1333 msgstr "Le fork doit être du même type que le parent."
1334 1334
1335 1335 #: rhodecode/model/validators.py:474
1336 1336 msgid "You don't have permissions to create repository in this group"
1337 1337 msgstr "Vous n’avez pas la permission de créer un dépôt dans ce groupe."
1338 1338
1339 1339 #: rhodecode/model/validators.py:501
1340 1340 #, fuzzy
1341 1341 msgid "You don't have permissions to create a group in this location"
1342 1342 msgstr "Vous n’avez pas la permission de créer un dépôt dans ce groupe."
1343 1343
1344 1344 #: rhodecode/model/validators.py:540
1345 1345 msgid "This username or users group name is not valid"
1346 1346 msgstr "Ce nom d’utilisateur ou de groupe n’est pas valide."
1347 1347
1348 1348 #: rhodecode/model/validators.py:636
1349 1349 msgid "This is not a valid path"
1350 1350 msgstr "Ceci n’est pas un chemin valide"
1351 1351
1352 1352 #: rhodecode/model/validators.py:651
1353 1353 msgid "This e-mail address is already taken"
1354 1354 msgstr "Cette adresse e-mail est déjà enregistrée"
1355 1355
1356 1356 #: rhodecode/model/validators.py:671
1357 1357 #, python-format
1358 1358 msgid "e-mail \"%(email)s\" does not exist."
1359 1359 msgstr "L’adresse e-mail « %(email)s » n’existe pas"
1360 1360
1361 1361 #: rhodecode/model/validators.py:708
1362 1362 msgid ""
1363 1363 "The LDAP Login attribute of the CN must be specified - this is the name "
1364 1364 "of the attribute that is equivalent to \"username\""
1365 1365 msgstr ""
1366 1366 "L’attribut Login du CN doit être spécifié. Cet attribut correspond au nom"
1367 1367 " d’utilisateur."
1368 1368
1369 1369 #: rhodecode/model/validators.py:727
1370 1370 #, python-format
1371 1371 msgid "Revisions %(revs)s are already part of pull request or have set status"
1372 1372 msgstr ""
1373 1373 "Les révisions %(revs)s font déjà partie de la requête de pull ou on des "
1374 1374 "statuts définis."
1375 1375
1376 1376 #: rhodecode/model/validators.py:759
1377 1377 msgid "Please enter a valid IPv4 or IpV6 address"
1378 1378 msgstr ""
1379 1379
1380 1380 #: rhodecode/model/validators.py:760
1381 1381 #, python-format
1382 1382 msgid "The network size (bits) must be within the range of 0-32 (not %(bits)r)"
1383 1383 msgstr ""
1384 1384
1385 1385 #: rhodecode/templates/index.html:3
1386 1386 msgid "Dashboard"
1387 1387 msgstr "Tableau de bord"
1388 1388
1389 1389 #: rhodecode/templates/index_base.html:6
1390 1390 #: rhodecode/templates/repo_switcher_list.html:4
1391 1391 #: rhodecode/templates/admin/repos/repos.html:9
1392 1392 #: rhodecode/templates/admin/users/user_edit_my_account.html:31
1393 1393 #: rhodecode/templates/admin/users/users.html:9
1394 1394 #: rhodecode/templates/bookmarks/bookmarks.html:10
1395 1395 #: rhodecode/templates/branches/branches.html:9
1396 1396 #: rhodecode/templates/journal/journal.html:9
1397 1397 #: rhodecode/templates/journal/journal.html:49
1398 1398 #: rhodecode/templates/journal/journal.html:50
1399 1399 #: rhodecode/templates/tags/tags.html:10
1400 1400 msgid "quick filter..."
1401 1401 msgstr "Filtre rapide…"
1402 1402
1403 1403 #: rhodecode/templates/index_base.html:6
1404 1404 #: rhodecode/templates/admin/repos/repos.html:9
1405 1405 #: rhodecode/templates/base/base.html:239
1406 1406 msgid "repositories"
1407 1407 msgstr "Dépôts"
1408 1408
1409 1409 #: rhodecode/templates/index_base.html:14
1410 1410 #: rhodecode/templates/index_base.html:17
1411 1411 #: rhodecode/templates/admin/repos/repo_add.html:5
1412 1412 #: rhodecode/templates/admin/repos/repo_add_create_repository.html:5
1413 1413 #: rhodecode/templates/admin/repos/repos.html:21
1414 1414 msgid "Add repository"
1415 1415 msgstr "Ajouter un dépôt"
1416 1416
1417 1417 #: rhodecode/templates/index_base.html:23
1418 1418 #, fuzzy
1419 1419 msgid "Edit group"
1420 1420 msgstr "Édition du groupe de dépôt"
1421 1421
1422 1422 #: rhodecode/templates/index_base.html:23
1423 1423 msgid "You have admin right to this group, and can edit it"
1424 1424 msgstr ""
1425 1425
1426 1426 #: rhodecode/templates/index_base.html:36
1427 1427 #: rhodecode/templates/index_base.html:140
1428 1428 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:32
1429 1429 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:37
1430 1430 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:33
1431 1431 #: rhodecode/templates/admin/users_groups/users_group_add.html:32
1432 1432 #: rhodecode/templates/admin/users_groups/users_group_edit.html:33
1433 1433 msgid "Group name"
1434 1434 msgstr "Nom de groupe"
1435 1435
1436 1436 #: rhodecode/templates/index_base.html:37
1437 1437 #: rhodecode/templates/index_base.html:79
1438 1438 #: rhodecode/templates/index_base.html:142
1439 1439 #: rhodecode/templates/index_base.html:180
1440 1440 #: rhodecode/templates/index_base.html:273
1441 1441 #: rhodecode/templates/admin/repos/repo_add_base.html:56
1442 1442 #: rhodecode/templates/admin/repos/repo_edit.html:75
1443 1443 #: rhodecode/templates/admin/repos/repos.html:73
1444 1444 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:41
1445 1445 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:46
1446 1446 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:34
1447 1447 #: rhodecode/templates/forks/fork.html:59
1448 1448 #: rhodecode/templates/settings/repo_settings.html:66
1449 1449 #: rhodecode/templates/summary/summary.html:114
1450 1450 msgid "Description"
1451 1451 msgstr "Description"
1452 1452
1453 1453 #: rhodecode/templates/index_base.html:47
1454 1454 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:47
1455 1455 msgid "Repositories group"
1456 1456 msgstr "Groupe de dépôts"
1457 1457
1458 1458 #: rhodecode/templates/index_base.html:78
1459 1459 #: rhodecode/templates/index_base.html:178
1460 1460 #: rhodecode/templates/index_base.html:271
1461 1461 #: rhodecode/templates/admin/permissions/permissions.html:117
1462 1462 #: rhodecode/templates/admin/repos/repo_add_base.html:9
1463 1463 #: rhodecode/templates/admin/repos/repo_edit.html:32
1464 1464 #: rhodecode/templates/admin/repos/repos.html:71
1465 1465 #: rhodecode/templates/admin/users/user_edit.html:200
1466 1466 #: rhodecode/templates/admin/users/user_edit_my_account.html:60
1467 1467 #: rhodecode/templates/admin/users/user_edit_my_account.html:211
1468 1468 #: rhodecode/templates/admin/users_groups/users_group_edit.html:184
1469 1469 #: rhodecode/templates/bookmarks/bookmarks.html:36
1470 1470 #: rhodecode/templates/bookmarks/bookmarks_data.html:6
1471 1471 #: rhodecode/templates/branches/branches.html:50
1472 1472 #: rhodecode/templates/branches/branches_data.html:6
1473 1473 #: rhodecode/templates/files/files_browser.html:47
1474 1474 #: rhodecode/templates/journal/journal.html:201
1475 1475 #: rhodecode/templates/journal/journal.html:305
1476 1476 #: rhodecode/templates/settings/repo_settings.html:31
1477 1477 #: rhodecode/templates/summary/summary.html:43
1478 1478 #: rhodecode/templates/summary/summary.html:132
1479 1479 #: rhodecode/templates/tags/tags.html:51
1480 1480 #: rhodecode/templates/tags/tags_data.html:6
1481 1481 msgid "Name"
1482 1482 msgstr "Nom"
1483 1483
1484 1484 #: rhodecode/templates/index_base.html:80
1485 1485 msgid "Last change"
1486 1486 msgstr "Dernière modification"
1487 1487
1488 1488 #: rhodecode/templates/index_base.html:81
1489 1489 #: rhodecode/templates/index_base.html:183
1490 1490 #: rhodecode/templates/index_base.html:276
1491 1491 #: rhodecode/templates/admin/repos/repos.html:74
1492 1492 #: rhodecode/templates/admin/users/user_edit_my_account.html:213
1493 1493 #: rhodecode/templates/journal/journal.html:203
1494 1494 #: rhodecode/templates/journal/journal.html:307
1495 1495 msgid "Tip"
1496 1496 msgstr "Sommet"
1497 1497
1498 1498 #: rhodecode/templates/index_base.html:82
1499 1499 #: rhodecode/templates/index_base.html:185
1500 1500 #: rhodecode/templates/index_base.html:278
1501 1501 #: rhodecode/templates/admin/repos/repo_edit.html:121
1502 1502 #: rhodecode/templates/admin/repos/repos.html:76
1503 1503 msgid "Owner"
1504 1504 msgstr "Propriétaire"
1505 1505
1506 1506 #: rhodecode/templates/index_base.html:83
1507 1507 #: rhodecode/templates/summary/summary.html:48
1508 1508 #: rhodecode/templates/summary/summary.html:51
1509 1509 msgid "RSS"
1510 1510 msgstr "RSS"
1511 1511
1512 1512 #: rhodecode/templates/index_base.html:84
1513 1513 msgid "Atom"
1514 1514 msgstr "Atom"
1515 1515
1516 1516 #: rhodecode/templates/index_base.html:171
1517 1517 #: rhodecode/templates/index_base.html:211
1518 1518 #: rhodecode/templates/index_base.html:300
1519 1519 #: rhodecode/templates/admin/repos/repos.html:97
1520 1520 #: rhodecode/templates/admin/users/user_edit_my_account.html:235
1521 1521 #: rhodecode/templates/admin/users/users.html:107
1522 1522 #: rhodecode/templates/bookmarks/bookmarks.html:60
1523 1523 #: rhodecode/templates/branches/branches.html:76
1524 1524 #: rhodecode/templates/journal/journal.html:225
1525 1525 #: rhodecode/templates/journal/journal.html:329
1526 1526 #: rhodecode/templates/tags/tags.html:77
1527 1527 msgid "Click to sort ascending"
1528 1528 msgstr "Tri ascendant"
1529 1529
1530 1530 #: rhodecode/templates/index_base.html:172
1531 1531 #: rhodecode/templates/index_base.html:212
1532 1532 #: rhodecode/templates/index_base.html:301
1533 1533 #: rhodecode/templates/admin/repos/repos.html:98
1534 1534 #: rhodecode/templates/admin/users/user_edit_my_account.html:236
1535 1535 #: rhodecode/templates/admin/users/users.html:108
1536 1536 #: rhodecode/templates/bookmarks/bookmarks.html:61
1537 1537 #: rhodecode/templates/branches/branches.html:77
1538 1538 #: rhodecode/templates/journal/journal.html:226
1539 1539 #: rhodecode/templates/journal/journal.html:330
1540 1540 #: rhodecode/templates/tags/tags.html:78
1541 1541 msgid "Click to sort descending"
1542 1542 msgstr "Tri descendant"
1543 1543
1544 1544 #: rhodecode/templates/index_base.html:181
1545 1545 #: rhodecode/templates/index_base.html:274
1546 1546 msgid "Last Change"
1547 1547 msgstr "Dernière modification"
1548 1548
1549 1549 #: rhodecode/templates/index_base.html:213
1550 1550 #: rhodecode/templates/index_base.html:302
1551 1551 #: rhodecode/templates/admin/repos/repos.html:99
1552 1552 #: rhodecode/templates/admin/users/user_edit_my_account.html:237
1553 1553 #: rhodecode/templates/admin/users/users.html:109
1554 1554 #: rhodecode/templates/bookmarks/bookmarks.html:62
1555 1555 #: rhodecode/templates/branches/branches.html:78
1556 1556 #: rhodecode/templates/journal/journal.html:227
1557 1557 #: rhodecode/templates/journal/journal.html:331
1558 1558 #: rhodecode/templates/tags/tags.html:79
1559 1559 msgid "No records found."
1560 1560 msgstr "Aucun élément n’a été trouvé."
1561 1561
1562 1562 #: rhodecode/templates/index_base.html:214
1563 1563 #: rhodecode/templates/index_base.html:303
1564 1564 #: rhodecode/templates/admin/repos/repos.html:100
1565 1565 #: rhodecode/templates/admin/users/user_edit_my_account.html:238
1566 1566 #: rhodecode/templates/admin/users/users.html:110
1567 1567 #: rhodecode/templates/bookmarks/bookmarks.html:63
1568 1568 #: rhodecode/templates/branches/branches.html:79
1569 1569 #: rhodecode/templates/journal/journal.html:228
1570 1570 #: rhodecode/templates/journal/journal.html:332
1571 1571 #: rhodecode/templates/tags/tags.html:80
1572 1572 msgid "Data error."
1573 1573 msgstr "Erreur d’intégrité des données."
1574 1574
1575 1575 #: rhodecode/templates/index_base.html:215
1576 1576 #: rhodecode/templates/index_base.html:304
1577 1577 #: rhodecode/templates/admin/repos/repos.html:101
1578 1578 #: rhodecode/templates/admin/users/user_edit_my_account.html:105
1579 1579 #: rhodecode/templates/admin/users/user_edit_my_account.html:239
1580 1580 #: rhodecode/templates/admin/users/users.html:111
1581 1581 #: rhodecode/templates/bookmarks/bookmarks.html:64
1582 1582 #: rhodecode/templates/branches/branches.html:80
1583 1583 #: rhodecode/templates/journal/journal.html:229
1584 1584 #: rhodecode/templates/journal/journal.html:333
1585 1585 #: rhodecode/templates/tags/tags.html:81
1586 1586 msgid "Loading..."
1587 1587 msgstr "Chargement…"
1588 1588
1589 1589 #: rhodecode/templates/login.html:5 rhodecode/templates/login.html:54
1590 1590 msgid "Sign In"
1591 1591 msgstr "Connexion"
1592 1592
1593 1593 #: rhodecode/templates/login.html:21
1594 1594 msgid "Sign In to"
1595 1595 msgstr "Connexion à"
1596 1596
1597 1597 #: rhodecode/templates/login.html:31 rhodecode/templates/register.html:20
1598 1598 #: rhodecode/templates/admin/admin_log.html:5
1599 1599 #: rhodecode/templates/admin/users/user_add.html:32
1600 1600 #: rhodecode/templates/admin/users/user_edit.html:54
1601 1601 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:26
1602 1602 #: rhodecode/templates/base/base.html:89
1603 1603 #: rhodecode/templates/summary/summary.html:131
1604 1604 msgid "Username"
1605 1605 msgstr "Nom d’utilisateur"
1606 1606
1607 1607 #: rhodecode/templates/login.html:40 rhodecode/templates/register.html:29
1608 1608 #: rhodecode/templates/admin/ldap/ldap.html:46
1609 1609 #: rhodecode/templates/admin/users/user_add.html:41
1610 1610 #: rhodecode/templates/base/base.html:98
1611 1611 msgid "Password"
1612 1612 msgstr "Mot de passe"
1613 1613
1614 1614 #: rhodecode/templates/login.html:50
1615 1615 msgid "Remember me"
1616 1616 msgstr "Se souvenir de moi"
1617 1617
1618 1618 #: rhodecode/templates/login.html:60
1619 1619 msgid "Forgot your password ?"
1620 1620 msgstr "Mot de passe oublié ?"
1621 1621
1622 1622 #: rhodecode/templates/login.html:63 rhodecode/templates/base/base.html:109
1623 1623 msgid "Don't have an account ?"
1624 1624 msgstr "Vous n’avez pas de compte ?"
1625 1625
1626 1626 #: rhodecode/templates/password_reset.html:5
1627 1627 msgid "Reset your password"
1628 1628 msgstr "Mot de passe oublié ?"
1629 1629
1630 1630 #: rhodecode/templates/password_reset.html:11
1631 1631 msgid "Reset your password to"
1632 1632 msgstr "Réinitialiser votre mot de passe"
1633 1633
1634 1634 #: rhodecode/templates/password_reset.html:21
1635 1635 msgid "Email address"
1636 1636 msgstr "Adresse e-mail"
1637 1637
1638 1638 #: rhodecode/templates/password_reset.html:30
1639 1639 msgid "Reset my password"
1640 1640 msgstr "Réinitialiser mon mot de passe"
1641 1641
1642 1642 #: rhodecode/templates/password_reset.html:31
1643 1643 msgid "Password reset link will be send to matching email address"
1644 1644 msgstr "Votre nouveau mot de passe sera envoyé à l’adresse correspondante."
1645 1645
1646 1646 #: rhodecode/templates/register.html:5 rhodecode/templates/register.html:74
1647 1647 msgid "Sign Up"
1648 1648 msgstr "Inscription"
1649 1649
1650 1650 #: rhodecode/templates/register.html:11
1651 1651 msgid "Sign Up to"
1652 1652 msgstr "Inscription à"
1653 1653
1654 1654 #: rhodecode/templates/register.html:38
1655 1655 msgid "Re-enter password"
1656 1656 msgstr "Confirmation"
1657 1657
1658 1658 #: rhodecode/templates/register.html:47
1659 1659 #: rhodecode/templates/admin/users/user_add.html:59
1660 1660 #: rhodecode/templates/admin/users/user_edit.html:94
1661 1661 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:57
1662 1662 msgid "First Name"
1663 1663 msgstr "Prénom"
1664 1664
1665 1665 #: rhodecode/templates/register.html:56
1666 1666 #: rhodecode/templates/admin/users/user_add.html:68
1667 1667 #: rhodecode/templates/admin/users/user_edit.html:103
1668 1668 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:66
1669 1669 msgid "Last Name"
1670 1670 msgstr "Nom"
1671 1671
1672 1672 #: rhodecode/templates/register.html:65
1673 1673 #: rhodecode/templates/admin/users/user_add.html:77
1674 1674 #: rhodecode/templates/admin/users/user_edit.html:112
1675 1675 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:75
1676 1676 #: rhodecode/templates/summary/summary.html:133
1677 1677 msgid "Email"
1678 1678 msgstr "E-mail"
1679 1679
1680 1680 #: rhodecode/templates/register.html:76
1681 1681 msgid "Your account will be activated right after registration"
1682 1682 msgstr "Votre compte utilisateur sera actif dès la fin de l’enregistrement."
1683 1683
1684 1684 #: rhodecode/templates/register.html:78
1685 1685 msgid "Your account must wait for activation by administrator"
1686 1686 msgstr "Votre compte utilisateur devra être activé par un administrateur."
1687 1687
1688 1688 #: rhodecode/templates/repo_switcher_list.html:11
1689 1689 #: rhodecode/templates/admin/defaults/defaults.html:44
1690 1690 #: rhodecode/templates/admin/repos/repo_add_base.html:65
1691 1691 #: rhodecode/templates/admin/repos/repo_edit.html:85
1692 1692 #: rhodecode/templates/settings/repo_settings.html:76
1693 1693 msgid "Private repository"
1694 1694 msgstr "Dépôt privé"
1695 1695
1696 1696 #: rhodecode/templates/repo_switcher_list.html:16
1697 1697 msgid "Public repository"
1698 1698 msgstr "Dépôt public"
1699 1699
1700 1700 #: rhodecode/templates/switch_to_list.html:3
1701 1701 #: rhodecode/templates/branches/branches.html:14
1702 1702 msgid "branches"
1703 1703 msgstr "Branches"
1704 1704
1705 1705 #: rhodecode/templates/switch_to_list.html:10
1706 1706 #: rhodecode/templates/branches/branches_data.html:57
1707 1707 msgid "There are no branches yet"
1708 1708 msgstr "Aucune branche n’a été créée pour le moment."
1709 1709
1710 1710 #: rhodecode/templates/switch_to_list.html:15
1711 1711 #: rhodecode/templates/shortlog/shortlog_data.html:10
1712 1712 #: rhodecode/templates/tags/tags.html:15
1713 1713 msgid "tags"
1714 1714 msgstr "Tags"
1715 1715
1716 1716 #: rhodecode/templates/switch_to_list.html:22
1717 1717 #: rhodecode/templates/tags/tags_data.html:38
1718 1718 msgid "There are no tags yet"
1719 1719 msgstr "Aucun tag n’a été créé pour le moment."
1720 1720
1721 1721 #: rhodecode/templates/switch_to_list.html:28
1722 1722 #: rhodecode/templates/bookmarks/bookmarks.html:15
1723 1723 msgid "bookmarks"
1724 1724 msgstr "Signets"
1725 1725
1726 1726 #: rhodecode/templates/switch_to_list.html:35
1727 1727 #: rhodecode/templates/bookmarks/bookmarks_data.html:32
1728 1728 msgid "There are no bookmarks yet"
1729 1729 msgstr "Aucun signet n’a été créé."
1730 1730
1731 1731 #: rhodecode/templates/admin/admin.html:5
1732 1732 #: rhodecode/templates/admin/admin.html:13
1733 1733 msgid "Admin journal"
1734 1734 msgstr "Historique d’administration"
1735 1735
1736 1736 #: rhodecode/templates/admin/admin.html:10
1737 1737 #, fuzzy
1738 1738 msgid "journal filter..."
1739 1739 msgstr "Filtre rapide…"
1740 1740
1741 1741 #: rhodecode/templates/admin/admin.html:12
1742 1742 #: rhodecode/templates/journal/journal.html:11
1743 1743 #, fuzzy
1744 1744 msgid "filter"
1745 1745 msgstr "Fichiers"
1746 1746
1747 1747 #: rhodecode/templates/admin/admin.html:13
1748 1748 #: rhodecode/templates/journal/journal.html:12
1749 1749 #, python-format
1750 1750 msgid "%s entry"
1751 1751 msgid_plural "%s entries"
1752 1752 msgstr[0] ""
1753 1753 msgstr[1] ""
1754 1754
1755 1755 #: rhodecode/templates/admin/admin_log.html:6
1756 1756 #: rhodecode/templates/admin/repos/repos.html:77
1757 1757 #: rhodecode/templates/admin/users/user_edit_my_account.html:215
1758 1758 #: rhodecode/templates/journal/journal.html:205
1759 1759 #: rhodecode/templates/journal/journal.html:309
1760 1760 msgid "Action"
1761 1761 msgstr "Action"
1762 1762
1763 1763 #: rhodecode/templates/admin/admin_log.html:7
1764 1764 #: rhodecode/templates/admin/permissions/permissions.html:41
1765 1765 msgid "Repository"
1766 1766 msgstr "Dépôt"
1767 1767
1768 1768 #: rhodecode/templates/admin/admin_log.html:8
1769 1769 #: rhodecode/templates/bookmarks/bookmarks.html:37
1770 1770 #: rhodecode/templates/bookmarks/bookmarks_data.html:7
1771 1771 #: rhodecode/templates/branches/branches.html:51
1772 1772 #: rhodecode/templates/branches/branches_data.html:7
1773 1773 #: rhodecode/templates/tags/tags.html:52
1774 1774 #: rhodecode/templates/tags/tags_data.html:7
1775 1775 msgid "Date"
1776 1776 msgstr "Date"
1777 1777
1778 1778 #: rhodecode/templates/admin/admin_log.html:9
1779 1779 msgid "From IP"
1780 1780 msgstr "Depuis l’adresse IP"
1781 1781
1782 1782 #: rhodecode/templates/admin/admin_log.html:63
1783 1783 msgid "No actions yet"
1784 1784 msgstr "Aucune action n’a été enregistrée pour le moment."
1785 1785
1786 1786 #: rhodecode/templates/admin/defaults/defaults.html:5
1787 1787 #: rhodecode/templates/admin/defaults/defaults.html:25
1788 1788 #, fuzzy
1789 1789 msgid "Repositories defaults"
1790 1790 msgstr "Groupes de dépôts"
1791 1791
1792 1792 #: rhodecode/templates/admin/defaults/defaults.html:11
1793 1793 #, fuzzy
1794 1794 msgid "Defaults"
1795 1795 msgstr "[Par défaut]"
1796 1796
1797 1797 #: rhodecode/templates/admin/defaults/defaults.html:35
1798 1798 #: rhodecode/templates/admin/repos/repo_add_base.html:38
1799 1799 #: rhodecode/templates/admin/repos/repo_edit.html:58
1800 1800 msgid "Type"
1801 1801 msgstr "Type"
1802 1802
1803 1803 #: rhodecode/templates/admin/defaults/defaults.html:48
1804 1804 #: rhodecode/templates/admin/repos/repo_add_base.html:69
1805 1805 #: rhodecode/templates/admin/repos/repo_edit.html:89
1806 1806 #: rhodecode/templates/forks/fork.html:72
1807 1807 #: rhodecode/templates/settings/repo_settings.html:80
1808 1808 msgid ""
1809 1809 "Private repositories are only visible to people explicitly added as "
1810 1810 "collaborators."
1811 1811 msgstr ""
1812 1812 "Les dépôts privés sont visibles seulement par les utilisateurs ajoutés "
1813 1813 "comme collaborateurs."
1814 1814
1815 1815 #: rhodecode/templates/admin/defaults/defaults.html:55
1816 1816 #: rhodecode/templates/admin/repos/repo_edit.html:94
1817 1817 msgid "Enable statistics"
1818 1818 msgstr "Activer les statistiques"
1819 1819
1820 1820 #: rhodecode/templates/admin/defaults/defaults.html:59
1821 1821 #: rhodecode/templates/admin/repos/repo_edit.html:98
1822 1822 msgid "Enable statistics window on summary page."
1823 1823 msgstr "Afficher les statistiques sur la page du dépôt."
1824 1824
1825 1825 #: rhodecode/templates/admin/defaults/defaults.html:65
1826 1826 #: rhodecode/templates/admin/repos/repo_edit.html:103
1827 1827 msgid "Enable downloads"
1828 1828 msgstr "Activer les téléchargements"
1829 1829
1830 1830 #: rhodecode/templates/admin/defaults/defaults.html:69
1831 1831 #: rhodecode/templates/admin/repos/repo_edit.html:107
1832 1832 msgid "Enable download menu on summary page."
1833 1833 msgstr "Afficher le menu de téléchargements sur la page du dépôt."
1834 1834
1835 1835 #: rhodecode/templates/admin/defaults/defaults.html:75
1836 1836 #: rhodecode/templates/admin/repos/repo_edit.html:112
1837 1837 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:71
1838 1838 msgid "Enable locking"
1839 1839 msgstr "Activer le verrouillage"
1840 1840
1841 1841 #: rhodecode/templates/admin/defaults/defaults.html:79
1842 1842 #: rhodecode/templates/admin/repos/repo_edit.html:116
1843 1843 msgid "Enable lock-by-pulling on repository."
1844 1844 msgstr "Activer le verrouillage lors d’un pull sur le dépôt."
1845 1845
1846 1846 #: rhodecode/templates/admin/defaults/defaults.html:84
1847 1847 #: rhodecode/templates/admin/ldap/ldap.html:89
1848 1848 #: rhodecode/templates/admin/permissions/permissions.html:92
1849 1849 #: rhodecode/templates/admin/repos/repo_edit.html:141
1850 1850 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:79
1851 1851 #: rhodecode/templates/admin/settings/hooks.html:73
1852 1852 #: rhodecode/templates/admin/users/user_edit.html:137
1853 1853 #: rhodecode/templates/admin/users/user_edit.html:182
1854 1854 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:83
1855 1855 #: rhodecode/templates/admin/users_groups/users_group_edit.html:135
1856 1856 #: rhodecode/templates/settings/repo_settings.html:94
1857 1857 msgid "Save"
1858 1858 msgstr "Enregistrer"
1859 1859
1860 1860 #: rhodecode/templates/admin/ldap/ldap.html:5
1861 1861 msgid "LDAP administration"
1862 1862 msgstr "Administration LDAP"
1863 1863
1864 1864 #: rhodecode/templates/admin/ldap/ldap.html:11
1865 1865 msgid "Ldap"
1866 1866 msgstr "LDAP"
1867 1867
1868 1868 #: rhodecode/templates/admin/ldap/ldap.html:28
1869 1869 msgid "Connection settings"
1870 1870 msgstr "Options de connexion"
1871 1871
1872 1872 #: rhodecode/templates/admin/ldap/ldap.html:30
1873 1873 msgid "Enable LDAP"
1874 1874 msgstr "Activer le LDAP"
1875 1875
1876 1876 #: rhodecode/templates/admin/ldap/ldap.html:34
1877 1877 msgid "Host"
1878 1878 msgstr "Serveur"
1879 1879
1880 1880 #: rhodecode/templates/admin/ldap/ldap.html:38
1881 1881 msgid "Port"
1882 1882 msgstr "Port"
1883 1883
1884 1884 #: rhodecode/templates/admin/ldap/ldap.html:42
1885 1885 msgid "Account"
1886 1886 msgstr "Compte"
1887 1887
1888 1888 #: rhodecode/templates/admin/ldap/ldap.html:50
1889 1889 msgid "Connection security"
1890 1890 msgstr "Connexion sécurisée"
1891 1891
1892 1892 #: rhodecode/templates/admin/ldap/ldap.html:54
1893 1893 msgid "Certificate Checks"
1894 1894 msgstr "Vérif. des certificats"
1895 1895
1896 1896 #: rhodecode/templates/admin/ldap/ldap.html:57
1897 1897 msgid "Search settings"
1898 1898 msgstr "Réglages de recherche"
1899 1899
1900 1900 #: rhodecode/templates/admin/ldap/ldap.html:59
1901 1901 msgid "Base DN"
1902 1902 msgstr "Base de recherche"
1903 1903
1904 1904 #: rhodecode/templates/admin/ldap/ldap.html:63
1905 1905 msgid "LDAP Filter"
1906 1906 msgstr "Filtre de recherche"
1907 1907
1908 1908 #: rhodecode/templates/admin/ldap/ldap.html:67
1909 1909 msgid "LDAP Search Scope"
1910 1910 msgstr "Portée de recherche"
1911 1911
1912 1912 #: rhodecode/templates/admin/ldap/ldap.html:70
1913 1913 msgid "Attribute mappings"
1914 1914 msgstr "Correspondance des attributs"
1915 1915
1916 1916 #: rhodecode/templates/admin/ldap/ldap.html:72
1917 1917 msgid "Login Attribute"
1918 1918 msgstr "Attribut pour le nom d’utilisateur"
1919 1919
1920 1920 #: rhodecode/templates/admin/ldap/ldap.html:76
1921 1921 msgid "First Name Attribute"
1922 1922 msgstr "Attribut pour le prénom"
1923 1923
1924 1924 #: rhodecode/templates/admin/ldap/ldap.html:80
1925 1925 msgid "Last Name Attribute"
1926 1926 msgstr "Attribut pour le nom de famille"
1927 1927
1928 1928 #: rhodecode/templates/admin/ldap/ldap.html:84
1929 1929 msgid "E-mail Attribute"
1930 1930 msgstr "Attribut pour l’e-mail"
1931 1931
1932 1932 #: rhodecode/templates/admin/notifications/notifications.html:5
1933 1933 #: rhodecode/templates/admin/notifications/notifications.html:9
1934 1934 msgid "My Notifications"
1935 1935 msgstr "Mes notifications"
1936 1936
1937 1937 #: rhodecode/templates/admin/notifications/notifications.html:29
1938 1938 msgid "All"
1939 1939 msgstr "Tous"
1940 1940
1941 1941 #: rhodecode/templates/admin/notifications/notifications.html:30
1942 1942 msgid "Comments"
1943 1943 msgstr "Commentaires"
1944 1944
1945 1945 #: rhodecode/templates/admin/notifications/notifications.html:31
1946 1946 #: rhodecode/templates/base/base.html:272
1947 1947 #: rhodecode/templates/base/base.html:274
1948 1948 msgid "Pull requests"
1949 1949 msgstr "Requêtes de pull"
1950 1950
1951 1951 #: rhodecode/templates/admin/notifications/notifications.html:35
1952 1952 msgid "Mark all read"
1953 1953 msgstr "Tout marquer comme lu"
1954 1954
1955 1955 #: rhodecode/templates/admin/notifications/notifications_data.html:39
1956 1956 msgid "No notifications here yet"
1957 1957 msgstr "Aucune notification pour le moment."
1958 1958
1959 1959 #: rhodecode/templates/admin/notifications/show_notification.html:5
1960 1960 #: rhodecode/templates/admin/notifications/show_notification.html:11
1961 1961 msgid "Show notification"
1962 1962 msgstr "Notification"
1963 1963
1964 1964 #: rhodecode/templates/admin/notifications/show_notification.html:9
1965 1965 msgid "Notifications"
1966 1966 msgstr "Notifications"
1967 1967
1968 1968 #: rhodecode/templates/admin/permissions/permissions.html:5
1969 1969 msgid "Permissions administration"
1970 1970 msgstr "Gestion des permissions"
1971 1971
1972 1972 #: rhodecode/templates/admin/permissions/permissions.html:11
1973 1973 #: rhodecode/templates/admin/repos/repo_edit.html:134
1974 1974 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:63
1975 1975 #: rhodecode/templates/admin/users/user_edit.html:147
1976 1976 #: rhodecode/templates/admin/users_groups/users_group_edit.html:100
1977 1977 #: rhodecode/templates/settings/repo_settings.html:86
1978 1978 msgid "Permissions"
1979 1979 msgstr "Permissions"
1980 1980
1981 1981 #: rhodecode/templates/admin/permissions/permissions.html:24
1982 1982 msgid "Default permissions"
1983 1983 msgstr "Permissions par défaut"
1984 1984
1985 1985 #: rhodecode/templates/admin/permissions/permissions.html:31
1986 1986 msgid "Anonymous access"
1987 1987 msgstr "Accès anonyme"
1988 1988
1989 1989 #: rhodecode/templates/admin/permissions/permissions.html:49
1990 1990 msgid ""
1991 1991 "All default permissions on each repository will be reset to choosen "
1992 1992 "permission, note that all custom default permission on repositories will "
1993 1993 "be lost"
1994 1994 msgstr ""
1995 1995 "Les permissions par défaut de chaque dépôt vont être remplacées par la "
1996 1996 "permission choisie. Toutes les permissions par défaut des dépôts seront "
1997 1997 "perdues."
1998 1998
1999 1999 #: rhodecode/templates/admin/permissions/permissions.html:50
2000 2000 #: rhodecode/templates/admin/permissions/permissions.html:63
2001 2001 msgid "overwrite existing settings"
2002 2002 msgstr "Écraser les permissions existantes"
2003 2003
2004 2004 #: rhodecode/templates/admin/permissions/permissions.html:55
2005 2005 #: rhodecode/templates/admin/repos/repo_add_base.html:29
2006 2006 #: rhodecode/templates/admin/repos/repo_edit.html:49
2007 2007 #: rhodecode/templates/admin/repos_groups/repos_groups.html:4
2008 2008 #: rhodecode/templates/forks/fork.html:50
2009 2009 #: rhodecode/templates/settings/repo_settings.html:48
2010 2010 msgid "Repository group"
2011 2011 msgstr "Groupe de dépôt"
2012 2012
2013 2013 #: rhodecode/templates/admin/permissions/permissions.html:62
2014 2014 #, fuzzy
2015 2015 msgid ""
2016 2016 "All default permissions on each repository group will be reset to choosen"
2017 2017 " permission, note that all custom default permission on repositories "
2018 2018 "group will be lost"
2019 2019 msgstr ""
2020 2020 "Les permissions par défaut de chaque dépôt vont être remplacées par la "
2021 2021 "permission choisie. Toutes les permissions par défaut des dépôts seront "
2022 2022 "perdues."
2023 2023
2024 2024 #: rhodecode/templates/admin/permissions/permissions.html:69
2025 2025 msgid "Registration"
2026 2026 msgstr "Enregistrement"
2027 2027
2028 2028 #: rhodecode/templates/admin/permissions/permissions.html:77
2029 2029 msgid "Repository creation"
2030 2030 msgstr "Création de dépôt"
2031 2031
2032 2032 #: rhodecode/templates/admin/permissions/permissions.html:85
2033 2033 msgid "Repository forking"
2034 2034 msgstr "Fork de dépôt"
2035 2035
2036 2036 #: rhodecode/templates/admin/permissions/permissions.html:93
2037 2037 #: rhodecode/templates/admin/permissions/permissions.html:209
2038 2038 #: rhodecode/templates/admin/repos/repo_edit.html:142
2039 2039 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:80
2040 2040 #: rhodecode/templates/admin/settings/settings.html:113
2041 2041 #: rhodecode/templates/admin/settings/settings.html:179
2042 2042 #: rhodecode/templates/admin/settings/settings.html:269
2043 2043 #: rhodecode/templates/admin/users/user_edit.html:138
2044 2044 #: rhodecode/templates/admin/users/user_edit.html:183
2045 2045 #: rhodecode/templates/admin/users/user_edit.html:286
2046 2046 #: rhodecode/templates/admin/users/user_edit.html:334
2047 2047 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:84
2048 2048 #: rhodecode/templates/admin/users_groups/users_group_edit.html:136
2049 2049 #: rhodecode/templates/files/files_add.html:82
2050 2050 #: rhodecode/templates/files/files_edit.html:68
2051 2051 #: rhodecode/templates/pullrequests/pullrequest.html:124
2052 2052 #: rhodecode/templates/settings/repo_settings.html:95
2053 2053 msgid "Reset"
2054 2054 msgstr "Réinitialiser"
2055 2055
2056 2056 #: rhodecode/templates/admin/permissions/permissions.html:103
2057 2057 #, fuzzy
2058 2058 msgid "Default User Permissions"
2059 2059 msgstr "Permissions par défaut"
2060 2060
2061 2061 #: rhodecode/templates/admin/permissions/permissions.html:111
2062 2062 #: rhodecode/templates/admin/users/user_edit.html:194
2063 2063 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:22
2064 2064 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:39
2065 2065 msgid "Nothing here yet"
2066 2066 msgstr "Rien ici pour le moment"
2067 2067
2068 2068 #: rhodecode/templates/admin/permissions/permissions.html:118
2069 2069 #: rhodecode/templates/admin/users/user_edit.html:201
2070 2070 #: rhodecode/templates/admin/users/user_edit_my_account.html:61
2071 2071 #: rhodecode/templates/admin/users_groups/users_group_edit.html:185
2072 2072 msgid "Permission"
2073 2073 msgstr "Permission"
2074 2074
2075 2075 #: rhodecode/templates/admin/permissions/permissions.html:119
2076 2076 #: rhodecode/templates/admin/users/user_edit.html:202
2077 2077 #: rhodecode/templates/admin/users_groups/users_group_edit.html:186
2078 2078 msgid "Edit Permission"
2079 2079 msgstr "Éditer"
2080 2080
2081 2081 #: rhodecode/templates/admin/permissions/permissions.html:149
2082 2082 #: rhodecode/templates/admin/permissions/permissions.html:151
2083 2083 #: rhodecode/templates/admin/repos/repo_edit.html:13
2084 2084 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:54
2085 2085 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:55
2086 2086 #: rhodecode/templates/admin/users/user_edit.html:13
2087 2087 #: rhodecode/templates/admin/users/user_edit.html:232
2088 2088 #: rhodecode/templates/admin/users/user_edit.html:234
2089 2089 #: rhodecode/templates/admin/users_groups/users_group_edit.html:13
2090 2090 #: rhodecode/templates/admin/users_groups/users_group_edit.html:207
2091 2091 #: rhodecode/templates/admin/users_groups/users_group_edit.html:209
2092 2092 #: rhodecode/templates/data_table/_dt_elements.html:116
2093 2093 #: rhodecode/templates/data_table/_dt_elements.html:117
2094 2094 msgid "edit"
2095 2095 msgstr "éditer"
2096 2096
2097 2097 #: rhodecode/templates/admin/permissions/permissions.html:168
2098 2098 #: rhodecode/templates/admin/users/user_edit.html:295
2099 2099 #, fuzzy
2100 2100 msgid "Allowed IP addresses"
2101 2101 msgstr "Adresses e-mail"
2102 2102
2103 2103 #: rhodecode/templates/admin/permissions/permissions.html:182
2104 2104 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:60
2105 2105 #: rhodecode/templates/admin/users/user_edit.html:263
2106 2106 #: rhodecode/templates/admin/users/user_edit.html:308
2107 2107 #: rhodecode/templates/admin/users_groups/users_groups.html:44
2108 2108 #: rhodecode/templates/data_table/_dt_elements.html:122
2109 2109 #: rhodecode/templates/data_table/_dt_elements.html:130
2110 2110 msgid "delete"
2111 2111 msgstr "Supprimer"
2112 2112
2113 2113 #: rhodecode/templates/admin/permissions/permissions.html:183
2114 2114 #: rhodecode/templates/admin/users/user_edit.html:309
2115 2115 #, fuzzy, python-format
2116 2116 msgid "Confirm to delete this ip: %s"
2117 2117 msgstr "Veuillez confirmer la suppression de l’e-mail : %s"
2118 2118
2119 2119 #: rhodecode/templates/admin/permissions/permissions.html:189
2120 2120 #: rhodecode/templates/admin/users/user_edit.html:315
2121 2121 msgid "All IP addresses are allowed"
2122 2122 msgstr ""
2123 2123
2124 2124 #: rhodecode/templates/admin/permissions/permissions.html:200
2125 2125 #: rhodecode/templates/admin/users/user_edit.html:326
2126 2126 #, fuzzy
2127 2127 msgid "New ip address"
2128 2128 msgstr "Nouvelle adrese"
2129 2129
2130 2130 #: rhodecode/templates/admin/permissions/permissions.html:208
2131 2131 #: rhodecode/templates/admin/users/user_edit.html:285
2132 2132 #: rhodecode/templates/admin/users/user_edit.html:333
2133 2133 msgid "Add"
2134 2134 msgstr "Ajouter"
2135 2135
2136 2136 #: rhodecode/templates/admin/repos/repo_add.html:11
2137 2137 #: rhodecode/templates/admin/repos/repo_edit.html:11
2138 2138 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:10
2139 2139 #: rhodecode/templates/base/base.html:154
2140 2140 msgid "Repositories"
2141 2141 msgstr "Dépôts"
2142 2142
2143 2143 #: rhodecode/templates/admin/repos/repo_add.html:13
2144 2144 msgid "add new"
2145 2145 msgstr "ajouter un nouveau"
2146 2146
2147 2147 #: rhodecode/templates/admin/repos/repo_add_base.html:20
2148 2148 #: rhodecode/templates/summary/summary.html:104
2149 2149 #: rhodecode/templates/summary/summary.html:105
2150 2150 msgid "Clone from"
2151 2151 msgstr "Cloner depuis"
2152 2152
2153 2153 #: rhodecode/templates/admin/repos/repo_add_base.html:24
2154 2154 #: rhodecode/templates/admin/repos/repo_edit.html:44
2155 2155 #: rhodecode/templates/settings/repo_settings.html:43
2156 2156 msgid "Optional http[s] url from which repository should be cloned."
2157 2157 msgstr "URL http(s) depuis laquelle le dépôt doit être cloné."
2158 2158
2159 2159 #: rhodecode/templates/admin/repos/repo_add_base.html:33
2160 2160 #: rhodecode/templates/forks/fork.html:54
2161 2161 msgid "Optionaly select a group to put this repository into."
2162 2162 msgstr "Sélectionnez un groupe (optionel) dans lequel sera placé le dépôt."
2163 2163
2164 2164 #: rhodecode/templates/admin/repos/repo_add_base.html:42
2165 2165 msgid "Type of repository to create."
2166 2166 msgstr "Type de dépôt à créer."
2167 2167
2168 2168 #: rhodecode/templates/admin/repos/repo_add_base.html:47
2169 2169 #: rhodecode/templates/admin/repos/repo_edit.html:66
2170 2170 #: rhodecode/templates/forks/fork.html:41
2171 2171 #: rhodecode/templates/settings/repo_settings.html:57
2172 2172 msgid "Landing revision"
2173 2173 msgstr "Révision d’arrivée"
2174 2174
2175 2175 #: rhodecode/templates/admin/repos/repo_add_base.html:51
2176 2176 #: rhodecode/templates/admin/repos/repo_edit.html:70
2177 2177 #: rhodecode/templates/forks/fork.html:45
2178 2178 #: rhodecode/templates/settings/repo_settings.html:61
2179 2179 msgid "Default revision for files page, downloads, whoosh and readme"
2180 2180 msgstr ""
2181 2181 "Révision par défaut pour les pages de fichiers, de téléchargements, de "
2182 2182 "recherche et de documentation."
2183 2183
2184 2184 #: rhodecode/templates/admin/repos/repo_add_base.html:60
2185 2185 #: rhodecode/templates/admin/repos/repo_edit.html:79
2186 2186 #: rhodecode/templates/forks/fork.html:63
2187 2187 #: rhodecode/templates/settings/repo_settings.html:70
2188 2188 msgid "Keep it short and to the point. Use a README file for longer descriptions."
2189 2189 msgstr ""
2190 2190 "Gardez cette description précise et concise. Utilisez un fichier README "
2191 2191 "pour des descriptions plus détaillées."
2192 2192
2193 2193 #: rhodecode/templates/admin/repos/repo_add_base.html:73
2194 2194 msgid "add"
2195 2195 msgstr "Ajouter"
2196 2196
2197 2197 #: rhodecode/templates/admin/repos/repo_add_create_repository.html:9
2198 2198 msgid "add new repository"
2199 2199 msgstr "ajouter un nouveau dépôt"
2200 2200
2201 2201 #: rhodecode/templates/admin/repos/repo_edit.html:5
2202 2202 msgid "Edit repository"
2203 2203 msgstr "Éditer le dépôt"
2204 2204
2205 2205 #: rhodecode/templates/admin/repos/repo_edit.html:40
2206 2206 #: rhodecode/templates/settings/repo_settings.html:39
2207 2207 msgid "Clone uri"
2208 2208 msgstr "URL de clone"
2209 2209
2210 2210 #: rhodecode/templates/admin/repos/repo_edit.html:53
2211 2211 #: rhodecode/templates/settings/repo_settings.html:52
2212 2212 msgid "Optional select a group to put this repository into."
2213 2213 msgstr "Sélectionnez un groupe (optionel) dans lequel sera placé le dépôt."
2214 2214
2215 2215 #: rhodecode/templates/admin/repos/repo_edit.html:126
2216 2216 msgid "Change owner of this repository."
2217 2217 msgstr "Changer le propriétaire de ce dépôt."
2218 2218
2219 2219 #: rhodecode/templates/admin/repos/repo_edit.html:152
2220 2220 msgid "Administration"
2221 2221 msgstr "Administration"
2222 2222
2223 2223 #: rhodecode/templates/admin/repos/repo_edit.html:155
2224 2224 msgid "Statistics"
2225 2225 msgstr "Statistiques"
2226 2226
2227 2227 #: rhodecode/templates/admin/repos/repo_edit.html:159
2228 2228 msgid "Reset current statistics"
2229 2229 msgstr "Réinitialiser les statistiques"
2230 2230
2231 2231 #: rhodecode/templates/admin/repos/repo_edit.html:159
2232 2232 msgid "Confirm to remove current statistics"
2233 2233 msgstr "Souhaitez-vous vraiment réinitialiser les statistiques de ce dépôt ?"
2234 2234
2235 2235 #: rhodecode/templates/admin/repos/repo_edit.html:162
2236 2236 msgid "Fetched to rev"
2237 2237 msgstr "Parcouru jusqu’à la révision"
2238 2238
2239 2239 #: rhodecode/templates/admin/repos/repo_edit.html:163
2240 2240 msgid "Stats gathered"
2241 2241 msgstr "Statistiques obtenues"
2242 2242
2243 2243 #: rhodecode/templates/admin/repos/repo_edit.html:171
2244 2244 msgid "Remote"
2245 2245 msgstr "Dépôt distant"
2246 2246
2247 2247 #: rhodecode/templates/admin/repos/repo_edit.html:175
2248 2248 msgid "Pull changes from remote location"
2249 2249 msgstr "Récupérer les changements depuis le site distant"
2250 2250
2251 2251 #: rhodecode/templates/admin/repos/repo_edit.html:175
2252 2252 msgid "Confirm to pull changes from remote side"
2253 2253 msgstr "Voulez-vous vraiment récupérer les changements depuis le site distant ?"
2254 2254
2255 2255 #: rhodecode/templates/admin/repos/repo_edit.html:186
2256 2256 msgid "Cache"
2257 2257 msgstr "Cache"
2258 2258
2259 2259 #: rhodecode/templates/admin/repos/repo_edit.html:190
2260 2260 msgid "Invalidate repository cache"
2261 2261 msgstr "Invalider le cache du dépôt"
2262 2262
2263 2263 #: rhodecode/templates/admin/repos/repo_edit.html:190
2264 2264 msgid "Confirm to invalidate repository cache"
2265 2265 msgstr "Voulez-vous vraiment invalider le cache du dépôt ?"
2266 2266
2267 2267 #: rhodecode/templates/admin/repos/repo_edit.html:193
2268 2268 msgid ""
2269 2269 "Manually invalidate cache for this repository. On first access repository"
2270 2270 " will be cached again"
2271 2271 msgstr ""
2272 2272 "Invalide manuellement le cache de ce dépôt. Au prochain accès sur ce "
2273 2273 "dépôt, il sera à nouveau mis en cache."
2274 2274
2275 2275 #: rhodecode/templates/admin/repos/repo_edit.html:198
2276 2276 msgid "List of cached values"
2277 2277 msgstr "Liste des valeurs en cache"
2278 2278
2279 2279 #: rhodecode/templates/admin/repos/repo_edit.html:201
2280 2280 msgid "Prefix"
2281 2281 msgstr ""
2282 2282
2283 2283 #: rhodecode/templates/admin/repos/repo_edit.html:202
2284 2284 #, fuzzy
2285 2285 msgid "Key"
2286 2286 msgstr "Clé d’API"
2287 2287
2288 2288 #: rhodecode/templates/admin/repos/repo_edit.html:203
2289 2289 #: rhodecode/templates/admin/users/user_add.html:86
2290 2290 #: rhodecode/templates/admin/users/user_edit.html:121
2291 2291 #: rhodecode/templates/admin/users_groups/users_group_add.html:41
2292 2292 #: rhodecode/templates/admin/users_groups/users_group_edit.html:42
2293 2293 msgid "Active"
2294 2294 msgstr "Actif"
2295 2295
2296 2296 #: rhodecode/templates/admin/repos/repo_edit.html:218
2297 2297 #: rhodecode/templates/base/base.html:306
2298 2298 #: rhodecode/templates/base/base.html:308
2299 2299 #: rhodecode/templates/base/base.html:310
2300 2300 msgid "Public journal"
2301 2301 msgstr "Journal public"
2302 2302
2303 2303 #: rhodecode/templates/admin/repos/repo_edit.html:224
2304 2304 msgid "Remove from public journal"
2305 2305 msgstr "Supprimer du journal public"
2306 2306
2307 2307 #: rhodecode/templates/admin/repos/repo_edit.html:226
2308 2308 msgid "Add to public journal"
2309 2309 msgstr "Ajouter le dépôt au journal public"
2310 2310
2311 2311 #: rhodecode/templates/admin/repos/repo_edit.html:231
2312 2312 msgid ""
2313 2313 "All actions made on this repository will be accessible to everyone in "
2314 2314 "public journal"
2315 2315 msgstr ""
2316 2316 "Le descriptif des actions réalisées sur ce dépôt sera visible à tous "
2317 2317 "depuis le journal public."
2318 2318
2319 2319 #: rhodecode/templates/admin/repos/repo_edit.html:238
2320 2320 msgid "Locking"
2321 2321 msgstr "Verrouillage"
2322 2322
2323 2323 #: rhodecode/templates/admin/repos/repo_edit.html:243
2324 2324 msgid "Unlock locked repo"
2325 2325 msgstr "Déverrouiller le dépôt"
2326 2326
2327 2327 #: rhodecode/templates/admin/repos/repo_edit.html:243
2328 2328 msgid "Confirm to unlock repository"
2329 2329 msgstr "Veuillez confirmer le déverrouillage de ce dépôt."
2330 2330
2331 2331 #: rhodecode/templates/admin/repos/repo_edit.html:246
2332 2332 msgid "lock repo"
2333 2333 msgstr "Verrouiller le dépôt"
2334 2334
2335 2335 #: rhodecode/templates/admin/repos/repo_edit.html:246
2336 2336 msgid "Confirm to lock repository"
2337 2337 msgstr "Veuillez confirmer le verrouillage de ce dépôt."
2338 2338
2339 2339 #: rhodecode/templates/admin/repos/repo_edit.html:247
2340 2340 msgid "Repository is not locked"
2341 2341 msgstr "Ce dépôt n’est pas verrouillé."
2342 2342
2343 2343 #: rhodecode/templates/admin/repos/repo_edit.html:252
2344 2344 msgid "Force locking on repository. Works only when anonymous access is disabled"
2345 2345 msgstr ""
2346 2346 "Forcer le verrouillage du dépôt. Ce réglage fonctionne uniquement quand "
2347 2347 "l‘accès anonyme est désactivé."
2348 2348
2349 2349 #: rhodecode/templates/admin/repos/repo_edit.html:259
2350 2350 msgid "Set as fork of"
2351 2351 msgstr "Indiquer comme fork"
2352 2352
2353 2353 #: rhodecode/templates/admin/repos/repo_edit.html:264
2354 2354 msgid "set"
2355 2355 msgstr "Définir"
2356 2356
2357 2357 #: rhodecode/templates/admin/repos/repo_edit.html:268
2358 2358 msgid "Manually set this repository as a fork of another from the list"
2359 2359 msgstr "Marquer ce dépôt comme fork d’un autre dépôt de la liste."
2360 2360
2361 2361 #: rhodecode/templates/admin/repos/repo_edit.html:274
2362 2362 #: rhodecode/templates/changeset/changeset_file_comment.html:41
2363 2363 msgid "Delete"
2364 2364 msgstr "Supprimer"
2365 2365
2366 2366 #: rhodecode/templates/admin/repos/repo_edit.html:278
2367 2367 #: rhodecode/templates/settings/repo_settings.html:115
2368 2368 msgid "Remove this repository"
2369 2369 msgstr "Supprimer ce dépôt"
2370 2370
2371 2371 #: rhodecode/templates/admin/repos/repo_edit.html:278
2372 2372 #: rhodecode/templates/settings/repo_settings.html:115
2373 2373 msgid "Confirm to delete this repository"
2374 2374 msgstr "Voulez-vous vraiment supprimer ce dépôt ?"
2375 2375
2376 2376 #: rhodecode/templates/admin/repos/repo_edit.html:282
2377 2377 #: rhodecode/templates/settings/repo_settings.html:119
2378 2378 #, fuzzy
2379 2379 msgid ""
2380 2380 "This repository will be renamed in a special way in order to be "
2381 2381 "unaccesible for RhodeCode and VCS systems. If you need fully delete it "
2382 2382 "from file system please do it manually"
2383 2383 msgstr ""
2384 2384 "Ce dépôt sera renommé de manière à le rendre inaccessible à RhodeCode et "
2385 2385 "au système de gestion de versions.\n"
2386 2386 "Si vous voulez le supprimer complètement, effectuez la suppression "
2387 2387 "manuellement. Ce dépôt sera renommé de manière à le rendre inaccessible à"
2388 2388 " RhodeCode et au système de gestion de versions.\n"
2389 2389 "Si vous voulez le supprimer complètement, effectuez la suppression "
2390 2390 "manuellement."
2391 2391
2392 2392 #: rhodecode/templates/admin/repos/repo_edit_perms.html:3
2393 2393 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:3
2394 2394 msgid "none"
2395 2395 msgstr "Aucune"
2396 2396
2397 2397 #: rhodecode/templates/admin/repos/repo_edit_perms.html:4
2398 2398 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:4
2399 2399 msgid "read"
2400 2400 msgstr "Lecture"
2401 2401
2402 2402 #: rhodecode/templates/admin/repos/repo_edit_perms.html:5
2403 2403 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:5
2404 2404 msgid "write"
2405 2405 msgstr "Écriture"
2406 2406
2407 2407 #: rhodecode/templates/admin/repos/repo_edit_perms.html:6
2408 2408 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:6
2409 2409 #: rhodecode/templates/admin/users/users.html:85
2410 2410 #: rhodecode/templates/base/base.html:235
2411 2411 msgid "admin"
2412 2412 msgstr "Administration"
2413 2413
2414 2414 #: rhodecode/templates/admin/repos/repo_edit_perms.html:7
2415 2415 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:7
2416 2416 msgid "member"
2417 2417 msgstr "Membre"
2418 2418
2419 2419 #: rhodecode/templates/admin/repos/repo_edit_perms.html:16
2420 2420 #: rhodecode/templates/data_table/_dt_elements.html:61
2421 2421 #: rhodecode/templates/summary/summary.html:85
2422 2422 msgid "private repository"
2423 2423 msgstr "Dépôt privé"
2424 2424
2425 2425 #: rhodecode/templates/admin/repos/repo_edit_perms.html:19
2426 2426 #: rhodecode/templates/admin/repos/repo_edit_perms.html:28
2427 2427 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:18
2428 2428 msgid "default"
2429 2429 msgstr "[Par défaut]"
2430 2430
2431 2431 #: rhodecode/templates/admin/repos/repo_edit_perms.html:33
2432 2432 #: rhodecode/templates/admin/repos/repo_edit_perms.html:58
2433 2433 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:23
2434 2434 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:42
2435 2435 msgid "revoke"
2436 2436 msgstr "Révoquer"
2437 2437
2438 2438 #: rhodecode/templates/admin/repos/repo_edit_perms.html:83
2439 2439 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:67
2440 2440 msgid "Add another member"
2441 2441 msgstr "Ajouter un utilisateur"
2442 2442
2443 2443 #: rhodecode/templates/admin/repos/repo_edit_perms.html:97
2444 2444 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:87
2445 2445 msgid "Failed to remove user"
2446 2446 msgstr "Échec de suppression de l’utilisateur"
2447 2447
2448 2448 #: rhodecode/templates/admin/repos/repo_edit_perms.html:112
2449 2449 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:103
2450 2450 msgid "Failed to remove users group"
2451 2451 msgstr "Erreur lors de la suppression du groupe d’utilisateurs."
2452 2452
2453 2453 #: rhodecode/templates/admin/repos/repos.html:5
2454 2454 msgid "Repositories administration"
2455 2455 msgstr "Administration des dépôts"
2456 2456
2457 2457 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:73
2458 2458 msgid "apply to children"
2459 2459 msgstr "Appliquer aux enfants"
2460 2460
2461 2461 #: rhodecode/templates/admin/repos_groups/repos_group_edit_perms.html:74
2462 2462 #, fuzzy
2463 2463 msgid ""
2464 2464 "Set or revoke permission to all children of that group, including non-"
2465 2465 "private repositories and other groups"
2466 2466 msgstr ""
2467 2467 "Applique ou révoque les permissions sur tous les éléments de ce groupe, "
2468 2468 "notamment les dépôts et sous-groupes."
2469 2469
2470 2470 #: rhodecode/templates/admin/repos_groups/repos_groups.html:9
2471 2471 #: rhodecode/templates/base/base.html:128
2472 2472 #: rhodecode/templates/bookmarks/bookmarks.html:11
2473 2473 #: rhodecode/templates/branches/branches.html:10
2474 2474 #: rhodecode/templates/changelog/changelog.html:10
2475 2475 #: rhodecode/templates/changeset/changeset.html:10
2476 2476 #: rhodecode/templates/changeset/changeset_range.html:9
2477 2477 #: rhodecode/templates/compare/compare_diff.html:9
2478 2478 #: rhodecode/templates/files/file_diff.html:8
2479 2479 #: rhodecode/templates/files/files.html:8
2480 2480 #: rhodecode/templates/files/files_add.html:15
2481 2481 #: rhodecode/templates/files/files_edit.html:15
2482 2482 #: rhodecode/templates/followers/followers.html:9
2483 2483 #: rhodecode/templates/forks/fork.html:9 rhodecode/templates/forks/forks.html:9
2484 2484 #: rhodecode/templates/pullrequests/pullrequest.html:8
2485 2485 #: rhodecode/templates/pullrequests/pullrequest_show.html:8
2486 2486 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:8
2487 2487 #: rhodecode/templates/settings/repo_settings.html:9
2488 2488 #: rhodecode/templates/shortlog/shortlog.html:10
2489 2489 #: rhodecode/templates/summary/summary.html:8
2490 2490 #: rhodecode/templates/tags/tags.html:11
2491 2491 msgid "Home"
2492 2492 msgstr "Accueil"
2493 2493
2494 2494 #: rhodecode/templates/admin/repos_groups/repos_groups.html:13
2495 2495 msgid "with"
2496 2496 msgstr "comprenant"
2497 2497
2498 2498 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:5
2499 2499 msgid "Add repos group"
2500 2500 msgstr "Créer un groupe de dépôt"
2501 2501
2502 2502 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:10
2503 2503 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:10
2504 2504 msgid "Repos groups"
2505 2505 msgstr "Groupes de dépôts"
2506 2506
2507 2507 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:12
2508 2508 msgid "add new repos group"
2509 2509 msgstr "Nouveau groupe de dépôt"
2510 2510
2511 2511 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:50
2512 2512 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:55
2513 2513 msgid "Group parent"
2514 2514 msgstr "Parent du groupe"
2515 2515
2516 2516 #: rhodecode/templates/admin/repos_groups/repos_groups_add.html:58
2517 2517 #: rhodecode/templates/admin/users/user_add.html:94
2518 2518 #: rhodecode/templates/admin/users_groups/users_group_add.html:49
2519 2519 #: rhodecode/templates/admin/users_groups/users_group_edit.html:90
2520 2520 #: rhodecode/templates/pullrequests/pullrequest_show.html:149
2521 2521 msgid "save"
2522 2522 msgstr "Enregistrer"
2523 2523
2524 2524 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:5
2525 2525 msgid "Edit repos group"
2526 2526 msgstr "Éditer le groupe de dépôt"
2527 2527
2528 2528 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:12
2529 2529 msgid "edit repos group"
2530 2530 msgstr "Édition du groupe de dépôt"
2531 2531
2532 2532 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:26
2533 2533 #, fuzzy
2534 2534 msgid "Add new child group"
2535 2535 msgstr "Ajouter un nouveau groupe"
2536 2536
2537 2537 #: rhodecode/templates/admin/repos_groups/repos_groups_edit.html:75
2538 2538 msgid ""
2539 2539 "Enable lock-by-pulling on group. This option will be applied to all other"
2540 2540 " groups and repositories inside"
2541 2541 msgstr ""
2542 2542 "Activer le verrou lors d’un pull sur le groupe. Cette option sera "
2543 2543 "appliquée à tous les sous-groupes et dépôts de ce groupe."
2544 2544
2545 2545 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:5
2546 2546 msgid "Repositories groups administration"
2547 2547 msgstr "Administration des groupes de dépôts"
2548 2548
2549 2549 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:22
2550 2550 #, fuzzy
2551 2551 msgid "Add new group"
2552 2552 msgstr "Ajouter un nouveau groupe"
2553 2553
2554 2554 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:35
2555 2555 msgid "Number of toplevel repositories"
2556 2556 msgstr "Nombre de sous-dépôts"
2557 2557
2558 2558 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:36
2559 2559 #: rhodecode/templates/admin/users/users.html:87
2560 2560 #: rhodecode/templates/admin/users_groups/users_groups.html:35
2561 2561 msgid "action"
2562 2562 msgstr "Action"
2563 2563
2564 2564 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:60
2565 2565 #, fuzzy, python-format
2566 2566 msgid "Confirm to delete this group: %s with %s repository"
2567 2567 msgid_plural "Confirm to delete this group: %s with %s repositories"
2568 2568 msgstr[0] ""
2569 2569 msgstr[1] ""
2570 2570
2571 2571 #: rhodecode/templates/admin/repos_groups/repos_groups_show.html:68
2572 2572 msgid "There are no repositories groups yet"
2573 2573 msgstr "Aucun groupe de dépôts n’a été créé pour le moment."
2574 2574
2575 2575 #: rhodecode/templates/admin/settings/hooks.html:5
2576 2576 #: rhodecode/templates/admin/settings/settings.html:5
2577 2577 msgid "Settings administration"
2578 2578 msgstr "Administration générale"
2579 2579
2580 2580 #: rhodecode/templates/admin/settings/hooks.html:9
2581 2581 #: rhodecode/templates/admin/settings/settings.html:9
2582 2582 #: rhodecode/templates/settings/repo_settings.html:13
2583 2583 msgid "Settings"
2584 2584 msgstr "Options"
2585 2585
2586 2586 #: rhodecode/templates/admin/settings/hooks.html:24
2587 2587 msgid "Built in hooks - read only"
2588 2588 msgstr "Hooks prédéfinis (lecture seule)"
2589 2589
2590 2590 #: rhodecode/templates/admin/settings/hooks.html:40
2591 2591 msgid "Custom hooks"
2592 2592 msgstr "Hooks personnalisés"
2593 2593
2594 2594 #: rhodecode/templates/admin/settings/hooks.html:56
2595 2595 msgid "remove"
2596 2596 msgstr "Enlever"
2597 2597
2598 2598 #: rhodecode/templates/admin/settings/hooks.html:88
2599 2599 msgid "Failed to remove hook"
2600 2600 msgstr "Erreur lors de la suppression du hook."
2601 2601
2602 2602 #: rhodecode/templates/admin/settings/settings.html:24
2603 2603 msgid "Remap and rescan repositories"
2604 2604 msgstr "Ré-associer et re-scanner les dépôts"
2605 2605
2606 2606 #: rhodecode/templates/admin/settings/settings.html:32
2607 2607 msgid "rescan option"
2608 2608 msgstr "Option de re-scan"
2609 2609
2610 2610 #: rhodecode/templates/admin/settings/settings.html:38
2611 2611 msgid ""
2612 2612 "In case a repository was deleted from filesystem and there are leftovers "
2613 2613 "in the database check this option to scan obsolete data in database and "
2614 2614 "remove it."
2615 2615 msgstr ""
2616 2616 "Cochez cette option pour supprimer d’éventuelles données obsolètes "
2617 2617 "(concernant des dépôts manuellement supprimés) de la base de données."
2618 2618
2619 2619 #: rhodecode/templates/admin/settings/settings.html:39
2620 2620 msgid "destroy old data"
2621 2621 msgstr "Supprimer les données obsolètes"
2622 2622
2623 2623 #: rhodecode/templates/admin/settings/settings.html:41
2624 2624 msgid ""
2625 2625 "Rescan repositories location for new repositories. Also deletes obsolete "
2626 2626 "if `destroy` flag is checked "
2627 2627 msgstr ""
2628 2628 "Rescanner le dossier contenant les dépôts pour en trouver de nouveaux. "
2629 2629 "Supprime égalements les entrées de dépôts obsolètes si « Supprimer les "
2630 2630 "données obsolètes » est coché."
2631 2631
2632 2632 #: rhodecode/templates/admin/settings/settings.html:46
2633 2633 msgid "Rescan repositories"
2634 2634 msgstr "Re-scanner les dépôts"
2635 2635
2636 2636 #: rhodecode/templates/admin/settings/settings.html:52
2637 2637 msgid "Whoosh indexing"
2638 2638 msgstr "Indexation Whoosh"
2639 2639
2640 2640 #: rhodecode/templates/admin/settings/settings.html:60
2641 2641 msgid "index build option"
2642 2642 msgstr "Option d’indexation"
2643 2643
2644 2644 #: rhodecode/templates/admin/settings/settings.html:65
2645 2645 msgid "build from scratch"
2646 2646 msgstr "Purger et reconstruire l’index"
2647 2647
2648 2648 #: rhodecode/templates/admin/settings/settings.html:71
2649 2649 msgid "Reindex"
2650 2650 msgstr "Mettre à jour l’index"
2651 2651
2652 2652 #: rhodecode/templates/admin/settings/settings.html:77
2653 2653 msgid "Global application settings"
2654 2654 msgstr "Réglages d’application globaux"
2655 2655
2656 2656 #: rhodecode/templates/admin/settings/settings.html:86
2657 2657 msgid "Application name"
2658 2658 msgstr "Nom de l’application"
2659 2659
2660 2660 #: rhodecode/templates/admin/settings/settings.html:95
2661 2661 msgid "Realm text"
2662 2662 msgstr "Texte du royaume"
2663 2663
2664 2664 #: rhodecode/templates/admin/settings/settings.html:104
2665 2665 msgid "GA code"
2666 2666 msgstr "Code GA"
2667 2667
2668 2668 #: rhodecode/templates/admin/settings/settings.html:112
2669 2669 #: rhodecode/templates/admin/settings/settings.html:178
2670 2670 #: rhodecode/templates/admin/settings/settings.html:268
2671 2671 msgid "Save settings"
2672 2672 msgstr "Enregister les options"
2673 2673
2674 2674 #: rhodecode/templates/admin/settings/settings.html:119
2675 2675 msgid "Visualisation settings"
2676 2676 msgstr "Réglages d’affichage"
2677 2677
2678 2678 #: rhodecode/templates/admin/settings/settings.html:127
2679 2679 #, fuzzy
2680 2680 msgid "General"
2681 2681 msgstr "Activer"
2682 2682
2683 2683 #: rhodecode/templates/admin/settings/settings.html:132
2684 2684 msgid "Use lightweight dashboard"
2685 2685 msgstr ""
2686 2686
2687 2687 #: rhodecode/templates/admin/settings/settings.html:139
2688 2688 msgid "Icons"
2689 2689 msgstr "Icônes"
2690 2690
2691 2691 #: rhodecode/templates/admin/settings/settings.html:144
2692 2692 msgid "Show public repo icon on repositories"
2693 2693 msgstr "Afficher l’icône de dépôt public sur les dépôts"
2694 2694
2695 2695 #: rhodecode/templates/admin/settings/settings.html:148
2696 2696 msgid "Show private repo icon on repositories"
2697 2697 msgstr "Afficher l’icône de dépôt privé sur les dépôts"
2698 2698
2699 2699 #: rhodecode/templates/admin/settings/settings.html:155
2700 2700 msgid "Meta-Tagging"
2701 2701 msgstr "Meta-Tagging"
2702 2702
2703 2703 #: rhodecode/templates/admin/settings/settings.html:160
2704 2704 msgid "Stylify recognised metatags:"
2705 2705 msgstr "Styliser les méta-tags reconnus :"
2706 2706
2707 2707 #: rhodecode/templates/admin/settings/settings.html:187
2708 2708 msgid "VCS settings"
2709 2709 msgstr "Réglages de gestionnaire de version"
2710 2710
2711 2711 #: rhodecode/templates/admin/settings/settings.html:196
2712 2712 msgid "Web"
2713 2713 msgstr "Web"
2714 2714
2715 2715 #: rhodecode/templates/admin/settings/settings.html:201
2716 2716 msgid "require ssl for vcs operations"
2717 2717 msgstr "SSL requis pour les opérations de push/pull"
2718 2718
2719 2719 #: rhodecode/templates/admin/settings/settings.html:203
2720 2720 msgid ""
2721 2721 "RhodeCode will require SSL for pushing or pulling. If SSL is missing it "
2722 2722 "will return HTTP Error 406: Not Acceptable"
2723 2723 msgstr ""
2724 2724 "RhodeCode requièrera SSL pour les pushs et pulls. Si le SSL n’est pas "
2725 2725 "utilisé l’erreur HTTP 406 (Non Acceptable) sera renvoyée."
2726 2726
2727 2727 #: rhodecode/templates/admin/settings/settings.html:209
2728 2728 msgid "Hooks"
2729 2729 msgstr "Hooks"
2730 2730
2731 2731 #: rhodecode/templates/admin/settings/settings.html:214
2732 2732 msgid "Update repository after push (hg update)"
2733 2733 msgstr "Mettre à jour les dépôts après un push (hg update)"
2734 2734
2735 2735 #: rhodecode/templates/admin/settings/settings.html:218
2736 2736 msgid "Show repository size after push"
2737 2737 msgstr "Afficher la taille du dépôt après un push"
2738 2738
2739 2739 #: rhodecode/templates/admin/settings/settings.html:222
2740 2740 msgid "Log user push commands"
2741 2741 msgstr "Journaliser les commandes de push"
2742 2742
2743 2743 #: rhodecode/templates/admin/settings/settings.html:226
2744 2744 msgid "Log user pull commands"
2745 2745 msgstr "Journaliser les commandes de pull"
2746 2746
2747 2747 #: rhodecode/templates/admin/settings/settings.html:230
2748 2748 msgid "advanced setup"
2749 2749 msgstr "Avancé"
2750 2750
2751 2751 #: rhodecode/templates/admin/settings/settings.html:235
2752 2752 msgid "Mercurial Extensions"
2753 2753 msgstr "Extensions Mercurial"
2754 2754
2755 2755 #: rhodecode/templates/admin/settings/settings.html:240
2756 2756 msgid "largefiles extensions"
2757 2757 msgstr "Extensions largefiles"
2758 2758
2759 2759 #: rhodecode/templates/admin/settings/settings.html:244
2760 2760 msgid "hgsubversion extensions"
2761 2761 msgstr "Extensions hgsubversion"
2762 2762
2763 2763 #: rhodecode/templates/admin/settings/settings.html:246
2764 2764 msgid ""
2765 2765 "Requires hgsubversion library installed. Allows clonning from svn remote "
2766 2766 "locations"
2767 2767 msgstr ""
2768 2768 "Ceci nécessite l’installation de la bibliothèque hgsubversion. Permet de "
2769 2769 "clôner à partir de dépôts Suversion."
2770 2770
2771 2771 #: rhodecode/templates/admin/settings/settings.html:256
2772 2772 msgid "Repositories location"
2773 2773 msgstr "Emplacement des dépôts"
2774 2774
2775 2775 #: rhodecode/templates/admin/settings/settings.html:261
2776 2776 msgid ""
2777 2777 "This a crucial application setting. If you are really sure you need to "
2778 2778 "change this, you must restart application in order to make this setting "
2779 2779 "take effect. Click this label to unlock."
2780 2780 msgstr ""
2781 2781 "Ce réglage ne devrait pas être modifié en temps normal. Si vous devez "
2782 2782 "vraiment le faire, redémarrer l’application une fois le changement "
2783 2783 "effectué. Cliquez sur ce texte pour déverrouiller."
2784 2784
2785 2785 #: rhodecode/templates/admin/settings/settings.html:262
2786 2786 #: rhodecode/templates/base/base.html:227
2787 2787 msgid "unlock"
2788 2788 msgstr "Déverrouiller"
2789 2789
2790 2790 #: rhodecode/templates/admin/settings/settings.html:263
2791 2791 msgid ""
2792 2792 "Location where repositories are stored. After changing this value a "
2793 2793 "restart, and rescan is required"
2794 2794 msgstr ""
2795 2795 "Emplacement de stockage des dépôts. Si cette valeur est changée, "
2796 2796 "Rhodecode devra être redémarré les les dépôts rescannés."
2797 2797
2798 2798 #: rhodecode/templates/admin/settings/settings.html:283
2799 2799 msgid "Test Email"
2800 2800 msgstr "E-mail de test"
2801 2801
2802 2802 #: rhodecode/templates/admin/settings/settings.html:291
2803 2803 msgid "Email to"
2804 2804 msgstr "Envoyer l’e-mail à"
2805 2805
2806 2806 #: rhodecode/templates/admin/settings/settings.html:299
2807 2807 msgid "Send"
2808 2808 msgstr "Envoyer"
2809 2809
2810 2810 #: rhodecode/templates/admin/settings/settings.html:305
2811 2811 msgid "System Info and Packages"
2812 2812 msgstr "Information système et paquets"
2813 2813
2814 2814 #: rhodecode/templates/admin/settings/settings.html:308
2815 2815 msgid "show"
2816 2816 msgstr "Montrer"
2817 2817
2818 2818 #: rhodecode/templates/admin/users/user_add.html:5
2819 2819 msgid "Add user"
2820 2820 msgstr "Ajouter un utilisateur"
2821 2821
2822 2822 #: rhodecode/templates/admin/users/user_add.html:10
2823 2823 #: rhodecode/templates/admin/users/user_edit.html:11
2824 2824 msgid "Users"
2825 2825 msgstr "Utilisateurs"
2826 2826
2827 2827 #: rhodecode/templates/admin/users/user_add.html:12
2828 2828 msgid "add new user"
2829 2829 msgstr "nouvel utilisateur"
2830 2830
2831 2831 #: rhodecode/templates/admin/users/user_add.html:50
2832 2832 msgid "Password confirmation"
2833 2833 msgstr "Confirmation"
2834 2834
2835 2835 #: rhodecode/templates/admin/users/user_edit.html:5
2836 2836 msgid "Edit user"
2837 2837 msgstr "Éditer l'utilisateur"
2838 2838
2839 2839 #: rhodecode/templates/admin/users/user_edit.html:34
2840 2840 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:10
2841 2841 msgid "Change your avatar at"
2842 2842 msgstr "Vous pouvez changer votre avatar sur"
2843 2843
2844 2844 #: rhodecode/templates/admin/users/user_edit.html:35
2845 2845 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:11
2846 2846 msgid "Using"
2847 2847 msgstr "en utilisant l’adresse"
2848 2848
2849 2849 #: rhodecode/templates/admin/users/user_edit.html:43
2850 2850 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:20
2851 2851 msgid "API key"
2852 2852 msgstr "Clé d’API"
2853 2853
2854 2854 #: rhodecode/templates/admin/users/user_edit.html:48
2855 2855 msgid "Your IP"
2856 2856 msgstr ""
2857 2857
2858 2858 #: rhodecode/templates/admin/users/user_edit.html:67
2859 2859 msgid "LDAP DN"
2860 2860 msgstr "DN LDAP"
2861 2861
2862 2862 #: rhodecode/templates/admin/users/user_edit.html:76
2863 2863 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:39
2864 2864 msgid "New password"
2865 2865 msgstr "Nouveau mot de passe"
2866 2866
2867 2867 #: rhodecode/templates/admin/users/user_edit.html:85
2868 2868 #: rhodecode/templates/admin/users/user_edit_my_account_form.html:48
2869 2869 msgid "New password confirmation"
2870 2870 msgstr "Confirmation du nouveau mot de passe"
2871 2871
2872 2872 #: rhodecode/templates/admin/users/user_edit.html:155
2873 2873 #: rhodecode/templates/admin/users_groups/users_group_edit.html:108
2874 2874 msgid "Inherit default permissions"
2875 2875 msgstr "Utiliser les permissions par défaut"
2876 2876
2877 2877 #: rhodecode/templates/admin/users/user_edit.html:160
2878 2878 #: rhodecode/templates/admin/users_groups/users_group_edit.html:113
2879 2879 #, python-format
2880 2880 msgid ""
2881 2881 "Select to inherit permissions from %s settings. With this selected below "
2882 2882 "options does not have any action"
2883 2883 msgstr ""
2884 2884 "Cochez pour utiliser les permissions des les réglages %s. Si cette option"
2885 2885 " est activée, les réglages ci-dessous n’auront pas d’effet."
2886 2886
2887 2887 #: rhodecode/templates/admin/users/user_edit.html:166
2888 2888 #: rhodecode/templates/admin/users_groups/users_group_edit.html:119
2889 2889 msgid "Create repositories"
2890 2890 msgstr "Création de dépôts"
2891 2891
2892 2892 #: rhodecode/templates/admin/users/user_edit.html:174
2893 2893 #: rhodecode/templates/admin/users_groups/users_group_edit.html:127
2894 2894 msgid "Fork repositories"
2895 2895 msgstr "Forker les dépôts"
2896 2896
2897 2897 #: rhodecode/templates/admin/users/user_edit.html:251
2898 2898 msgid "Email addresses"
2899 2899 msgstr "Adresses e-mail"
2900 2900
2901 2901 #: rhodecode/templates/admin/users/user_edit.html:264
2902 2902 #, python-format
2903 2903 msgid "Confirm to delete this email: %s"
2904 2904 msgstr "Veuillez confirmer la suppression de l’e-mail : %s"
2905 2905
2906 2906 #: rhodecode/templates/admin/users/user_edit.html:278
2907 2907 msgid "New email address"
2908 2908 msgstr "Nouvelle adrese"
2909 2909
2910 2910 #: rhodecode/templates/admin/users/user_edit_my_account.html:5
2911 2911 #: rhodecode/templates/base/base.html:130
2912 2912 msgid "My account"
2913 2913 msgstr "Mon compte"
2914 2914
2915 2915 #: rhodecode/templates/admin/users/user_edit_my_account.html:9
2916 2916 msgid "My Account"
2917 2917 msgstr "Mon compte"
2918 2918
2919 2919 #: rhodecode/templates/admin/users/user_edit_my_account.html:35
2920 2920 msgid "My permissions"
2921 2921 msgstr "Mes permissions"
2922 2922
2923 2923 #: rhodecode/templates/admin/users/user_edit_my_account.html:38
2924 2924 #: rhodecode/templates/journal/journal.html:57
2925 2925 msgid "My repos"
2926 2926 msgstr "Mes dépôts"
2927 2927
2928 2928 #: rhodecode/templates/admin/users/user_edit_my_account.html:41
2929 2929 msgid "My pull requests"
2930 2930 msgstr "Mes requêtes de pull"
2931 2931
2932 2932 #: rhodecode/templates/admin/users/user_edit_my_account.html:45
2933 2933 #: rhodecode/templates/journal/journal.html:61
2934 2934 msgid "Add repo"
2935 2935 msgstr "Ajouter un dépôt"
2936 2936
2937 2937 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:2
2938 2938 msgid "Opened by me"
2939 2939 msgstr "Ouvertes par moi"
2940 2940
2941 2941 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:10
2942 2942 #, python-format
2943 2943 msgid "Pull request #%s opened on %s"
2944 2944 msgstr "Requête de pull nº%s ouverte le %s"
2945 2945
2946 2946 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:15
2947 2947 msgid "Confirm to delete this pull request"
2948 2948 msgstr "Veuillez confirmer la suppression de cette requête de pull."
2949 2949
2950 2950 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:26
2951 2951 msgid "I participate in"
2952 2952 msgstr "Je participe à"
2953 2953
2954 2954 #: rhodecode/templates/admin/users/user_edit_my_account_pullrequests.html:33
2955 2955 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:30
2956 2956 #, python-format
2957 2957 msgid "Pull request #%s opened by %s on %s"
2958 2958 msgstr "Requête de pull nº%s ouverte par %s le %s"
2959 2959
2960 2960 #: rhodecode/templates/admin/users/users.html:5
2961 2961 msgid "Users administration"
2962 2962 msgstr "Administration des utilisateurs"
2963 2963
2964 2964 #: rhodecode/templates/admin/users/users.html:9
2965 2965 #: rhodecode/templates/base/base.html:241
2966 2966 msgid "users"
2967 2967 msgstr "Utilisateurs"
2968 2968
2969 2969 #: rhodecode/templates/admin/users/users.html:23
2970 2970 #, fuzzy
2971 2971 msgid "Add new user"
2972 2972 msgstr "nouvel utilisateur"
2973 2973
2974 2974 #: rhodecode/templates/admin/users/users.html:77
2975 2975 msgid "username"
2976 2976 msgstr "Nom d’utilisateur"
2977 2977
2978 2978 #: rhodecode/templates/admin/users/users.html:80
2979 2979 msgid "firstname"
2980 2980 msgstr "Prénom"
2981 2981
2982 2982 #: rhodecode/templates/admin/users/users.html:81
2983 2983 msgid "lastname"
2984 2984 msgstr "Nom de famille"
2985 2985
2986 2986 #: rhodecode/templates/admin/users/users.html:82
2987 2987 msgid "last login"
2988 2988 msgstr "Dernière connexion"
2989 2989
2990 2990 #: rhodecode/templates/admin/users/users.html:84
2991 2991 #: rhodecode/templates/admin/users_groups/users_groups.html:34
2992 2992 msgid "active"
2993 2993 msgstr "Actif"
2994 2994
2995 2995 #: rhodecode/templates/admin/users/users.html:86
2996 2996 #: rhodecode/templates/base/base.html:244
2997 2997 msgid "ldap"
2998 2998 msgstr "LDAP"
2999 2999
3000 3000 #: rhodecode/templates/admin/users_groups/users_group_add.html:5
3001 3001 msgid "Add users group"
3002 3002 msgstr "Ajouter un groupe d’utilisateur"
3003 3003
3004 3004 #: rhodecode/templates/admin/users_groups/users_group_add.html:10
3005 3005 #: rhodecode/templates/admin/users_groups/users_groups.html:9
3006 3006 msgid "Users groups"
3007 3007 msgstr "Groupes d’utilisateurs"
3008 3008
3009 3009 #: rhodecode/templates/admin/users_groups/users_group_add.html:12
3010 3010 msgid "add new users group"
3011 3011 msgstr "Ajouter un nouveau groupe"
3012 3012
3013 3013 #: rhodecode/templates/admin/users_groups/users_group_edit.html:5
3014 3014 msgid "Edit users group"
3015 3015 msgstr "Éditer le groupe d’utilisateurs"
3016 3016
3017 3017 #: rhodecode/templates/admin/users_groups/users_group_edit.html:11
3018 3018 msgid "UsersGroups"
3019 3019 msgstr "UsersGroups"
3020 3020
3021 3021 #: rhodecode/templates/admin/users_groups/users_group_edit.html:50
3022 3022 msgid "Members"
3023 3023 msgstr "Membres"
3024 3024
3025 3025 #: rhodecode/templates/admin/users_groups/users_group_edit.html:58
3026 3026 msgid "Choosen group members"
3027 3027 msgstr "Membres du groupe"
3028 3028
3029 3029 #: rhodecode/templates/admin/users_groups/users_group_edit.html:61
3030 3030 msgid "Remove all elements"
3031 3031 msgstr "Tout enlever"
3032 3032
3033 3033 #: rhodecode/templates/admin/users_groups/users_group_edit.html:75
3034 3034 msgid "Available members"
3035 3035 msgstr "Membres disponibles"
3036 3036
3037 3037 #: rhodecode/templates/admin/users_groups/users_group_edit.html:79
3038 3038 msgid "Add all elements"
3039 3039 msgstr "Tout ajouter"
3040 3040
3041 3041 #: rhodecode/templates/admin/users_groups/users_group_edit.html:146
3042 3042 msgid "Group members"
3043 3043 msgstr "Membres du groupe"
3044 3044
3045 3045 #: rhodecode/templates/admin/users_groups/users_group_edit.html:163
3046 3046 #, fuzzy
3047 3047 msgid "No members yet"
3048 3048 msgstr "Membres"
3049 3049
3050 3050 #: rhodecode/templates/admin/users_groups/users_group_edit.html:171
3051 3051 #, fuzzy
3052 3052 msgid "Permissions defined for this group"
3053 3053 msgstr "Gestion des permissions"
3054 3054
3055 3055 #: rhodecode/templates/admin/users_groups/users_group_edit.html:178
3056 3056 #, fuzzy
3057 3057 msgid "No permissions set yet"
3058 3058 msgstr "Copier les permissions"
3059 3059
3060 3060 #: rhodecode/templates/admin/users_groups/users_groups.html:5
3061 3061 msgid "Users groups administration"
3062 3062 msgstr "Gestion des groupes d’utilisateurs"
3063 3063
3064 3064 #: rhodecode/templates/admin/users_groups/users_groups.html:23
3065 3065 #, fuzzy
3066 3066 msgid "Add new user group"
3067 3067 msgstr "Ajouter un nouveau groupe"
3068 3068
3069 3069 #: rhodecode/templates/admin/users_groups/users_groups.html:32
3070 3070 msgid "group name"
3071 3071 msgstr "Nom du groupe"
3072 3072
3073 3073 #: rhodecode/templates/admin/users_groups/users_groups.html:33
3074 3074 #: rhodecode/templates/base/root.html:46
3075 3075 msgid "members"
3076 3076 msgstr "Membres"
3077 3077
3078 3078 #: rhodecode/templates/admin/users_groups/users_groups.html:45
3079 3079 #, python-format
3080 3080 msgid "Confirm to delete this users group: %s"
3081 3081 msgstr "Voulez-vous vraiment supprimer le groupe d‘utilisateurs « %s » ?"
3082 3082
3083 3083 #: rhodecode/templates/base/base.html:41
3084 3084 msgid "Submit a bug"
3085 3085 msgstr "Signaler un bogue"
3086 3086
3087 3087 #: rhodecode/templates/base/base.html:76
3088 3088 #, fuzzy
3089 3089 msgid "Not logged in"
3090 3090 msgstr "Dernière connexion"
3091 3091
3092 3092 #: rhodecode/templates/base/base.html:83
3093 3093 msgid "Login to your account"
3094 3094 msgstr "Connexion à votre compte"
3095 3095
3096 3096 #: rhodecode/templates/base/base.html:106
3097 3097 msgid "Forgot password ?"
3098 3098 msgstr "Mot de passe oublié ?"
3099 3099
3100 3100 #: rhodecode/templates/base/base.html:113
3101 3101 msgid "Log In"
3102 3102 msgstr "Connexion"
3103 3103
3104 3104 #: rhodecode/templates/base/base.html:124
3105 3105 msgid "Inbox"
3106 3106 msgstr "Boîte de réception"
3107 3107
3108 3108 #: rhodecode/templates/base/base.html:129
3109 3109 #: rhodecode/templates/base/base.html:297
3110 3110 #: rhodecode/templates/base/base.html:299
3111 3111 #: rhodecode/templates/base/base.html:301
3112 3112 #: rhodecode/templates/journal/journal.html:4
3113 3113 #: rhodecode/templates/journal/public_journal.html:4
3114 3114 msgid "Journal"
3115 3115 msgstr "Historique"
3116 3116
3117 3117 #: rhodecode/templates/base/base.html:131
3118 3118 msgid "Log Out"
3119 3119 msgstr "Se déconnecter"
3120 3120
3121 3121 #: rhodecode/templates/base/base.html:150
3122 3122 msgid "Switch repository"
3123 3123 msgstr "Aller au dépôt"
3124 3124
3125 3125 #: rhodecode/templates/base/base.html:152
3126 3126 msgid "Products"
3127 3127 msgstr "Produits"
3128 3128
3129 3129 #: rhodecode/templates/base/base.html:158
3130 3130 #: rhodecode/templates/base/base.html:189 rhodecode/templates/base/root.html:47
3131 3131 msgid "loading..."
3132 3132 msgstr "Chargement…"
3133 3133
3134 3134 #: rhodecode/templates/base/base.html:166
3135 3135 #: rhodecode/templates/base/base.html:168
3136 3136 #: rhodecode/templates/base/base.html:170
3137 3137 #: rhodecode/templates/data_table/_dt_elements.html:9
3138 3138 #: rhodecode/templates/data_table/_dt_elements.html:11
3139 3139 #: rhodecode/templates/data_table/_dt_elements.html:13
3140 3140 msgid "Summary"
3141 3141 msgstr "Résumé"
3142 3142
3143 3143 #: rhodecode/templates/base/base.html:174
3144 3144 #: rhodecode/templates/base/base.html:176
3145 3145 #: rhodecode/templates/base/base.html:178
3146 3146 #: rhodecode/templates/changelog/changelog.html:15
3147 3147 #: rhodecode/templates/data_table/_dt_elements.html:17
3148 3148 #: rhodecode/templates/data_table/_dt_elements.html:19
3149 3149 #: rhodecode/templates/data_table/_dt_elements.html:21
3150 3150 msgid "Changelog"
3151 3151 msgstr "Historique"
3152 3152
3153 3153 #: rhodecode/templates/base/base.html:182
3154 3154 #: rhodecode/templates/base/base.html:184
3155 3155 #: rhodecode/templates/base/base.html:186
3156 3156 msgid "Switch to"
3157 3157 msgstr "Aller"
3158 3158
3159 3159 #: rhodecode/templates/base/base.html:193
3160 3160 #: rhodecode/templates/base/base.html:195
3161 3161 #: rhodecode/templates/base/base.html:197
3162 3162 #: rhodecode/templates/data_table/_dt_elements.html:25
3163 3163 #: rhodecode/templates/data_table/_dt_elements.html:27
3164 3164 #: rhodecode/templates/data_table/_dt_elements.html:29
3165 3165 msgid "Files"
3166 3166 msgstr "Fichiers"
3167 3167
3168 3168 #: rhodecode/templates/base/base.html:201
3169 3169 #: rhodecode/templates/base/base.html:205
3170 3170 msgid "Options"
3171 3171 msgstr "Options"
3172 3172
3173 3173 #: rhodecode/templates/base/base.html:210
3174 3174 #: rhodecode/templates/base/base.html:212
3175 3175 msgid "repository settings"
3176 3176 msgstr "Réglages de dépôt"
3177 3177
3178 3178 #: rhodecode/templates/base/base.html:216
3179 3179 #: rhodecode/templates/data_table/_dt_elements.html:74
3180 3180 #: rhodecode/templates/forks/fork.html:13
3181 3181 msgid "fork"
3182 3182 msgstr "Fork"
3183 3183
3184 3184 #: rhodecode/templates/base/base.html:218
3185 3185 #: rhodecode/templates/changelog/changelog.html:43
3186 3186 #, fuzzy
3187 3187 msgid "open new pull request"
3188 3188 msgstr "Nouvelle requête de pull"
3189 3189
3190 3190 #: rhodecode/templates/base/base.html:221
3191 3191 #, fuzzy
3192 3192 msgid "compare fork"
3193 3193 msgstr "Comparer le fork"
3194 3194
3195 3195 #: rhodecode/templates/base/base.html:223
3196 3196 msgid "search"
3197 3197 msgstr "Rechercher"
3198 3198
3199 3199 #: rhodecode/templates/base/base.html:229
3200 3200 msgid "lock"
3201 3201 msgstr "Verrouiller"
3202 3202
3203 3203 #: rhodecode/templates/base/base.html:240
3204 3204 msgid "repositories groups"
3205 3205 msgstr "Groupes de dépôts"
3206 3206
3207 3207 #: rhodecode/templates/base/base.html:242
3208 3208 msgid "users groups"
3209 3209 msgstr "Groupes d’utilisateurs"
3210 3210
3211 3211 #: rhodecode/templates/base/base.html:243
3212 3212 msgid "permissions"
3213 3213 msgstr "Permissions"
3214 3214
3215 3215 #: rhodecode/templates/base/base.html:245
3216 3216 #, fuzzy
3217 3217 msgid "defaults"
3218 3218 msgstr "[Par défaut]"
3219 3219
3220 3220 #: rhodecode/templates/base/base.html:246
3221 3221 msgid "settings"
3222 3222 msgstr "Réglages"
3223 3223
3224 3224 #: rhodecode/templates/base/base.html:256
3225 3225 #: rhodecode/templates/base/base.html:258
3226 3226 msgid "Followers"
3227 3227 msgstr "Followers"
3228 3228
3229 3229 #: rhodecode/templates/base/base.html:264
3230 3230 #: rhodecode/templates/base/base.html:266
3231 3231 msgid "Forks"
3232 3232 msgstr "Forks"
3233 3233
3234 3234 #: rhodecode/templates/base/base.html:315
3235 3235 #: rhodecode/templates/base/base.html:317
3236 3236 #: rhodecode/templates/base/base.html:319
3237 3237 #: rhodecode/templates/search/search.html:52
3238 3238 msgid "Search"
3239 3239 msgstr "Rechercher"
3240 3240
3241 3241 #: rhodecode/templates/base/root.html:42
3242 3242 msgid "add another comment"
3243 3243 msgstr "Nouveau commentaire"
3244 3244
3245 3245 #: rhodecode/templates/base/root.html:43
3246 3246 #: rhodecode/templates/data_table/_dt_elements.html:140
3247 3247 #: rhodecode/templates/summary/summary.html:57
3248 3248 msgid "Stop following this repository"
3249 3249 msgstr "Arrêter de suivre ce dépôt"
3250 3250
3251 3251 #: rhodecode/templates/base/root.html:44
3252 3252 #: rhodecode/templates/summary/summary.html:61
3253 3253 msgid "Start following this repository"
3254 3254 msgstr "Suivre ce dépôt"
3255 3255
3256 3256 #: rhodecode/templates/base/root.html:45
3257 3257 msgid "Group"
3258 3258 msgstr "Groupe"
3259 3259
3260 3260 #: rhodecode/templates/base/root.html:48
3261 3261 msgid "search truncated"
3262 3262 msgstr "Résultats tronqués"
3263 3263
3264 3264 #: rhodecode/templates/base/root.html:49
3265 3265 msgid "no matching files"
3266 3266 msgstr "Aucun fichier ne correspond"
3267 3267
3268 3268 #: rhodecode/templates/base/root.html:50
3269 3269 msgid "Open new pull request"
3270 3270 msgstr "Nouvelle requête de pull"
3271 3271
3272 3272 #: rhodecode/templates/base/root.html:51
3273 3273 #, fuzzy
3274 3274 msgid "Open new pull request for selected changesets"
3275 3275 msgstr "a ouvert une nouvelle requête de pull"
3276 3276
3277 3277 #: rhodecode/templates/base/root.html:52
3278 3278 msgid "Show selected changes __S -> __E"
3279 3279 msgstr "Afficher les changements sélections de __S à __E"
3280 3280
3281 3281 #: rhodecode/templates/base/root.html:53
3282 3282 msgid "Selection link"
3283 3283 msgstr "Lien vers la sélection"
3284 3284
3285 3285 #: rhodecode/templates/bookmarks/bookmarks.html:5
3286 3286 #, python-format
3287 3287 msgid "%s Bookmarks"
3288 3288 msgstr "Signets de %s"
3289 3289
3290 3290 #: rhodecode/templates/bookmarks/bookmarks.html:39
3291 3291 #: rhodecode/templates/bookmarks/bookmarks_data.html:8
3292 3292 #: rhodecode/templates/branches/branches.html:53
3293 3293 #: rhodecode/templates/branches/branches_data.html:8
3294 3294 #: rhodecode/templates/tags/tags.html:54
3295 3295 #: rhodecode/templates/tags/tags_data.html:8
3296 3296 msgid "Author"
3297 3297 msgstr "Auteur"
3298 3298
3299 3299 #: rhodecode/templates/bookmarks/bookmarks.html:40
3300 3300 #: rhodecode/templates/bookmarks/bookmarks_data.html:9
3301 3301 #: rhodecode/templates/branches/branches.html:54
3302 3302 #: rhodecode/templates/branches/branches_data.html:9
3303 3303 #: rhodecode/templates/tags/tags.html:55
3304 3304 #: rhodecode/templates/tags/tags_data.html:9
3305 3305 msgid "Revision"
3306 3306 msgstr "Révision"
3307 3307
3308 3308 #: rhodecode/templates/branches/branches.html:5
3309 3309 #, python-format
3310 3310 msgid "%s Branches"
3311 3311 msgstr "Branches de %s"
3312 3312
3313 3313 #: rhodecode/templates/branches/branches.html:29
3314 3314 msgid "Compare branches"
3315 3315 msgstr "Comparer les branches"
3316 3316
3317 3317 #: rhodecode/templates/branches/branches.html:56
3318 3318 #: rhodecode/templates/branches/branches_data.html:10
3319 3319 #: rhodecode/templates/compare/compare_diff.html:5
3320 3320 #: rhodecode/templates/compare/compare_diff.html:13
3321 3321 #: rhodecode/templates/tags/tags.html:57
3322 3322 #: rhodecode/templates/tags/tags_data.html:10
3323 3323 msgid "Compare"
3324 3324 msgstr "Comparer"
3325 3325
3326 3326 #: rhodecode/templates/changelog/changelog.html:6
3327 3327 #, python-format
3328 3328 msgid "%s Changelog"
3329 3329 msgstr "Historique de %s"
3330 3330
3331 3331 #: rhodecode/templates/changelog/changelog.html:15
3332 3332 #, python-format
3333 3333 msgid "showing %d out of %d revision"
3334 3334 msgid_plural "showing %d out of %d revisions"
3335 3335 msgstr[0] "Affichage de %d révision sur %d"
3336 3336 msgstr[1] "Affichage de %d révisions sur %d"
3337 3337
3338 3338 #: rhodecode/templates/changelog/changelog.html:37
3339 3339 #, fuzzy
3340 3340 msgid "Clear selection"
3341 3341 msgstr "Réglages de recherche"
3342 3342
3343 3343 #: rhodecode/templates/changelog/changelog.html:40
3344 3344 #: rhodecode/templates/forks/forks_data.html:19
3345 3345 #, python-format
3346 3346 msgid "compare fork with %s"
3347 3347 msgstr "Comparer le fork avec %s"
3348 3348
3349 3349 #: rhodecode/templates/changelog/changelog.html:40
3350 3350 #, fuzzy
3351 3351 msgid "Compare fork with parent"
3352 3352 msgstr "Comparer le fork avec %s"
3353 3353
3354 3354 #: rhodecode/templates/changelog/changelog.html:49
3355 3355 msgid "Show"
3356 3356 msgstr "Afficher"
3357 3357
3358 3358 #: rhodecode/templates/changelog/changelog.html:74
3359 3359 #: rhodecode/templates/summary/summary.html:375
3360 3360 msgid "show more"
3361 3361 msgstr "montrer plus"
3362 3362
3363 3363 #: rhodecode/templates/changelog/changelog.html:78
3364 3364 msgid "Affected number of files, click to show more details"
3365 3365 msgstr "Nombre de fichiers modifiés, cliquez pour plus de détails"
3366 3366
3367 3367 #: rhodecode/templates/changelog/changelog.html:91
3368 3368 #: rhodecode/templates/changeset/changeset.html:65
3369 3369 #: rhodecode/templates/changeset/changeset_file_comment.html:20
3370 3370 #: rhodecode/templates/changeset/changeset_range.html:46
3371 3371 msgid "Changeset status"
3372 3372 msgstr "Statut du changeset"
3373 3373
3374 3374 #: rhodecode/templates/changelog/changelog.html:94
3375 3375 #: rhodecode/templates/shortlog/shortlog_data.html:20
3376 3376 #, python-format
3377 3377 msgid "Click to open associated pull request #%s"
3378 3378 msgstr "Cliquez ici pour ouvrir la requête de pull associée #%s."
3379 3379
3380 3380 #: rhodecode/templates/changelog/changelog.html:104
3381 3381 msgid "Parent"
3382 3382 msgstr "Parent"
3383 3383
3384 3384 #: rhodecode/templates/changelog/changelog.html:110
3385 3385 #: rhodecode/templates/changeset/changeset.html:42
3386 3386 msgid "No parents"
3387 3387 msgstr "Aucun parent"
3388 3388
3389 3389 #: rhodecode/templates/changelog/changelog.html:115
3390 3390 #: rhodecode/templates/changeset/changeset.html:106
3391 3391 #: rhodecode/templates/changeset/changeset_range.html:79
3392 3392 msgid "merge"
3393 3393 msgstr "Fusion"
3394 3394
3395 3395 #: rhodecode/templates/changelog/changelog.html:118
3396 3396 #: rhodecode/templates/changeset/changeset.html:109
3397 3397 #: rhodecode/templates/changeset/changeset_range.html:82
3398 3398 #: rhodecode/templates/files/files.html:29
3399 3399 #: rhodecode/templates/files/files_add.html:33
3400 3400 #: rhodecode/templates/files/files_edit.html:33
3401 3401 #: rhodecode/templates/shortlog/shortlog_data.html:9
3402 3402 msgid "branch"
3403 3403 msgstr "Branche"
3404 3404
3405 3405 #: rhodecode/templates/changelog/changelog.html:124
3406 3406 #: rhodecode/templates/changeset/changeset_range.html:88
3407 3407 msgid "bookmark"
3408 3408 msgstr "Signet"
3409 3409
3410 3410 #: rhodecode/templates/changelog/changelog.html:130
3411 3411 #: rhodecode/templates/changeset/changeset.html:114
3412 3412 #: rhodecode/templates/changeset/changeset_range.html:94
3413 3413 msgid "tag"
3414 3414 msgstr "Tag"
3415 3415
3416 3416 #: rhodecode/templates/changelog/changelog.html:302
3417 3417 msgid "There are no changes yet"
3418 3418 msgstr "Il n’y a aucun changement pour le moment"
3419 3419
3420 3420 #: rhodecode/templates/changelog/changelog_details.html:4
3421 3421 #: rhodecode/templates/changeset/changeset.html:94
3422 3422 msgid "removed"
3423 3423 msgstr "Supprimés"
3424 3424
3425 3425 #: rhodecode/templates/changelog/changelog_details.html:5
3426 3426 #: rhodecode/templates/changeset/changeset.html:95
3427 3427 msgid "changed"
3428 3428 msgstr "Modifiés"
3429 3429
3430 3430 #: rhodecode/templates/changelog/changelog_details.html:6
3431 3431 #: rhodecode/templates/changeset/changeset.html:96
3432 3432 msgid "added"
3433 3433 msgstr "Ajoutés"
3434 3434
3435 3435 #: rhodecode/templates/changelog/changelog_details.html:8
3436 3436 #: rhodecode/templates/changelog/changelog_details.html:9
3437 3437 #: rhodecode/templates/changelog/changelog_details.html:10
3438 3438 #: rhodecode/templates/changeset/changeset.html:98
3439 3439 #: rhodecode/templates/changeset/changeset.html:99
3440 3440 #: rhodecode/templates/changeset/changeset.html:100
3441 3441 #, python-format
3442 3442 msgid "affected %s files"
3443 3443 msgstr "%s fichiers affectés"
3444 3444
3445 3445 #: rhodecode/templates/changeset/changeset.html:6
3446 3446 #, python-format
3447 3447 msgid "%s Changeset"
3448 3448 msgstr "Changeset de %s"
3449 3449
3450 3450 #: rhodecode/templates/changeset/changeset.html:14
3451 3451 msgid "Changeset"
3452 3452 msgstr "Changements"
3453 3453
3454 3454 #: rhodecode/templates/changeset/changeset.html:52
3455 3455 #, fuzzy
3456 3456 msgid "No children"
3457 3457 msgstr "Appliquer aux enfants"
3458 3458
3459 3459 #: rhodecode/templates/changeset/changeset.html:70
3460 3460 #: rhodecode/templates/changeset/diff_block.html:20
3461 3461 msgid "raw diff"
3462 3462 msgstr "Diff brut"
3463 3463
3464 3464 #: rhodecode/templates/changeset/changeset.html:71
3465 3465 #, fuzzy
3466 3466 msgid "patch diff"
3467 3467 msgstr "Diff brut"
3468 3468
3469 3469 #: rhodecode/templates/changeset/changeset.html:72
3470 3470 #: rhodecode/templates/changeset/diff_block.html:21
3471 3471 msgid "download diff"
3472 3472 msgstr "Télécharger le diff"
3473 3473
3474 3474 #: rhodecode/templates/changeset/changeset.html:76
3475 3475 #: rhodecode/templates/changeset/changeset_file_comment.html:97
3476 3476 #, python-format
3477 3477 msgid "%d comment"
3478 3478 msgid_plural "%d comments"
3479 3479 msgstr[0] "%d commentaire"
3480 3480 msgstr[1] "%d commentaires"
3481 3481
3482 3482 #: rhodecode/templates/changeset/changeset.html:76
3483 3483 #: rhodecode/templates/changeset/changeset_file_comment.html:97
3484 3484 #, python-format
3485 3485 msgid "(%d inline)"
3486 3486 msgid_plural "(%d inline)"
3487 3487 msgstr[0] "(et %d en ligne)"
3488 3488 msgstr[1] "(et %d en ligne)"
3489 3489
3490 3490 #: rhodecode/templates/changeset/changeset.html:122
3491 3491 #: rhodecode/templates/compare/compare_diff.html:44
3492 3492 #: rhodecode/templates/pullrequests/pullrequest_show.html:94
3493 3493 #, fuzzy, python-format
3494 3494 msgid "%s file changed"
3495 3495 msgid_plural "%s files changed"
3496 3496 msgstr[0] "%s fichié modifié"
3497 3497 msgstr[1] "%s fichié modifié"
3498 3498
3499 3499 #: rhodecode/templates/changeset/changeset.html:124
3500 3500 #: rhodecode/templates/compare/compare_diff.html:46
3501 3501 #: rhodecode/templates/pullrequests/pullrequest_show.html:96
3502 3502 #, fuzzy, python-format
3503 3503 msgid "%s file changed with %s insertions and %s deletions"
3504 3504 msgid_plural "%s files changed with %s insertions and %s deletions"
3505 3505 msgstr[0] "%s fichiers affectés avec %s insertions et %s suppressions"
3506 3506 msgstr[1] "%s fichiers affectés avec %s insertions et %s suppressions"
3507 3507
3508 3508 #: rhodecode/templates/changeset/changeset_file_comment.html:30
3509 3509 #, python-format
3510 3510 msgid "Status from pull request %s"
3511 3511 msgstr "Requêtes de pull %s"
3512 3512
3513 3513 #: rhodecode/templates/changeset/changeset_file_comment.html:32
3514 3514 #, python-format
3515 3515 msgid "Comment from pull request %s"
3516 3516 msgstr "[a commenté] la requête de pull pour %s"
3517 3517
3518 3518 #: rhodecode/templates/changeset/changeset_file_comment.html:57
3519 3519 msgid "Submitting..."
3520 3520 msgstr "Envoi…"
3521 3521
3522 3522 #: rhodecode/templates/changeset/changeset_file_comment.html:60
3523 3523 msgid "Commenting on line {1}."
3524 3524 msgstr "Commentaire sur la ligne {1}."
3525 3525
3526 3526 #: rhodecode/templates/changeset/changeset_file_comment.html:61
3527 3527 #: rhodecode/templates/changeset/changeset_file_comment.html:140
3528 3528 #, python-format
3529 3529 msgid "Comments parsed using %s syntax with %s support."
3530 3530 msgstr ""
3531 3531 "Les commentaires sont analysés avec la syntaxe %s, avec le support de la "
3532 3532 "commande %s."
3533 3533
3534 3534 #: rhodecode/templates/changeset/changeset_file_comment.html:63
3535 3535 #: rhodecode/templates/changeset/changeset_file_comment.html:142
3536 3536 msgid "Use @username inside this text to send notification to this RhodeCode user"
3537 3537 msgstr ""
3538 3538 "Utilisez @nomutilisateur dans ce texte pour envoyer une notification à "
3539 3539 "l’utilisateur RhodeCode en question."
3540 3540
3541 3541 #: rhodecode/templates/changeset/changeset_file_comment.html:74
3542 3542 #: rhodecode/templates/changeset/changeset_file_comment.html:162
3543 3543 msgid "Comment"
3544 3544 msgstr "Commentaire"
3545 3545
3546 3546 #: rhodecode/templates/changeset/changeset_file_comment.html:75
3547 3547 #: rhodecode/templates/changeset/changeset_file_comment.html:86
3548 3548 msgid "Hide"
3549 3549 msgstr "Masquer"
3550 3550
3551 3551 #: rhodecode/templates/changeset/changeset_file_comment.html:82
3552 3552 msgid "You need to be logged in to comment."
3553 3553 msgstr "Vous devez être connecté pour poster des commentaires."
3554 3554
3555 3555 #: rhodecode/templates/changeset/changeset_file_comment.html:82
3556 3556 msgid "Login now"
3557 3557 msgstr "Se connecter maintenant"
3558 3558
3559 3559 #: rhodecode/templates/changeset/changeset_file_comment.html:137
3560 3560 msgid "Leave a comment"
3561 3561 msgstr "Laisser un commentaire"
3562 3562
3563 3563 #: rhodecode/templates/changeset/changeset_file_comment.html:144
3564 3564 msgid "Check this to change current status of code-review for this changeset"
3565 3565 msgstr "Cochez pour changer le statut de la relecture de code pour ce changeset"
3566 3566
3567 3567 #: rhodecode/templates/changeset/changeset_file_comment.html:144
3568 3568 msgid "change status"
3569 3569 msgstr "Modifier le statut"
3570 3570
3571 3571 #: rhodecode/templates/changeset/changeset_file_comment.html:164
3572 3572 msgid "Comment and close"
3573 3573 msgstr "Commenter et fermer"
3574 3574
3575 3575 #: rhodecode/templates/changeset/changeset_range.html:5
3576 3576 #, python-format
3577 3577 msgid "%s Changesets"
3578 3578 msgstr "Changesets de %s"
3579 3579
3580 3580 #: rhodecode/templates/changeset/changeset_range.html:29
3581 3581 #: rhodecode/templates/compare/compare_diff.html:29
3582 3582 msgid "Compare View"
3583 3583 msgstr "Comparaison"
3584 3584
3585 3585 #: rhodecode/templates/changeset/changeset_range.html:29
3586 3586 #, fuzzy
3587 3587 msgid "Show combined compare"
3588 3588 msgstr "Afficher les commentaires"
3589 3589
3590 3590 #: rhodecode/templates/changeset/changeset_range.html:54
3591 3591 msgid "Files affected"
3592 3592 msgstr "Fichiers affectés"
3593 3593
3594 3594 #: rhodecode/templates/changeset/diff_block.html:19
3595 3595 msgid "show full diff for this file"
3596 3596 msgstr ""
3597 3597
3598 3598 #: rhodecode/templates/changeset/diff_block.html:27
3599 3599 msgid "show inline comments"
3600 3600 msgstr "Afficher les commentaires"
3601 3601
3602 3602 #: rhodecode/templates/compare/compare_cs.html:5
3603 3603 msgid "No changesets"
3604 3604 msgstr "Aucun changeset"
3605 3605
3606 3606 #: rhodecode/templates/compare/compare_diff.html:37
3607 3607 #: rhodecode/templates/pullrequests/pullrequest_show.html:87
3608 3608 #, fuzzy, python-format
3609 3609 msgid "Showing %s commit"
3610 3610 msgid_plural "Showing %s commits"
3611 3611 msgstr[0] "Afficher %s les commentaires"
3612 3612 msgstr[1] "Afficher %s les commentaires"
3613 3613
3614 3614 #: rhodecode/templates/compare/compare_diff.html:52
3615 3615 #: rhodecode/templates/pullrequests/pullrequest_show.html:102
3616 3616 #, fuzzy
3617 3617 msgid "No files"
3618 3618 msgstr "Fichiers"
3619 3619
3620 3620 #: rhodecode/templates/data_table/_dt_elements.html:33
3621 3621 #: rhodecode/templates/data_table/_dt_elements.html:35
3622 3622 #: rhodecode/templates/data_table/_dt_elements.html:37
3623 3623 msgid "Fork"
3624 3624 msgstr "Fork"
3625 3625
3626 3626 #: rhodecode/templates/data_table/_dt_elements.html:54
3627 3627 #: rhodecode/templates/summary/summary.html:77
3628 3628 msgid "Mercurial repository"
3629 3629 msgstr "Dépôt Mercurial"
3630 3630
3631 3631 #: rhodecode/templates/data_table/_dt_elements.html:56
3632 3632 #: rhodecode/templates/summary/summary.html:80
3633 3633 msgid "Git repository"
3634 3634 msgstr "Dépôt Git"
3635 3635
3636 3636 #: rhodecode/templates/data_table/_dt_elements.html:63
3637 3637 #: rhodecode/templates/summary/summary.html:87
3638 3638 msgid "public repository"
3639 3639 msgstr "Dépôt public"
3640 3640
3641 3641 #: rhodecode/templates/data_table/_dt_elements.html:74
3642 3642 #: rhodecode/templates/summary/summary.html:96
3643 3643 #: rhodecode/templates/summary/summary.html:97
3644 3644 msgid "Fork of"
3645 3645 msgstr "Fork de"
3646 3646
3647 3647 #: rhodecode/templates/data_table/_dt_elements.html:88
3648 3648 msgid "No changesets yet"
3649 3649 msgstr "Dépôt vide"
3650 3650
3651 3651 #: rhodecode/templates/data_table/_dt_elements.html:95
3652 3652 #: rhodecode/templates/data_table/_dt_elements.html:97
3653 3653 #, python-format
3654 3654 msgid "Subscribe to %s rss feed"
3655 3655 msgstr "S’abonner au flux RSS de %s"
3656 3656
3657 3657 #: rhodecode/templates/data_table/_dt_elements.html:103
3658 3658 #: rhodecode/templates/data_table/_dt_elements.html:105
3659 3659 #, python-format
3660 3660 msgid "Subscribe to %s atom feed"
3661 3661 msgstr "S’abonner au flux ATOM de %s"
3662 3662
3663 3663 #: rhodecode/templates/data_table/_dt_elements.html:122
3664 3664 #, python-format
3665 3665 msgid "Confirm to delete this repository: %s"
3666 3666 msgstr "Voulez-vous vraiment supprimer le dépôt %s ?"
3667 3667
3668 3668 #: rhodecode/templates/data_table/_dt_elements.html:131
3669 3669 #, python-format
3670 3670 msgid "Confirm to delete this user: %s"
3671 3671 msgstr "Voulez-vous vraiment supprimer l’utilisateur « %s » ?"
3672 3672
3673 3673 #: rhodecode/templates/email_templates/changeset_comment.html:10
3674 3674 #, fuzzy
3675 3675 msgid "New status$"
3676 3676 msgstr "Modifier le statut"
3677 3677
3678 3678 #: rhodecode/templates/email_templates/main.html:8
3679 3679 #, fuzzy
3680 3680 msgid "This is a notification from RhodeCode."
3681 3681 msgstr "Ceci est une notification de RhodeCode."
3682 3682
3683 3683 #: rhodecode/templates/email_templates/password_reset.html:4
3684 3684 msgid "Hello"
3685 3685 msgstr ""
3686 3686
3687 3687 #: rhodecode/templates/email_templates/password_reset.html:6
3688 3688 msgid "We received a request to create a new password for your account."
3689 3689 msgstr ""
3690 3690
3691 3691 #: rhodecode/templates/email_templates/password_reset.html:8
3692 3692 msgid "You can generate it by clicking following URL"
3693 3693 msgstr ""
3694 3694
3695 3695 #: rhodecode/templates/email_templates/password_reset.html:12
3696 3696 msgid "If you didn't request new password please ignore this email."
3697 3697 msgstr ""
3698 3698
3699 3699 #: rhodecode/templates/email_templates/pull_request.html:4
3700 3700 #, python-format
3701 3701 msgid ""
3702 3702 "User %s opened pull request for repository %s and wants you to review "
3703 3703 "changes."
3704 3704 msgstr ""
3705 3705
3706 3706 #: rhodecode/templates/email_templates/pull_request.html:5
3707 3707 #, fuzzy
3708 3708 msgid "title"
3709 3709 msgstr "Titre"
3710 3710
3711 3711 #: rhodecode/templates/email_templates/pull_request.html:6
3712 3712 #: rhodecode/templates/pullrequests/pullrequest.html:115
3713 3713 msgid "description"
3714 3714 msgstr "Description"
3715 3715
3716 3716 #: rhodecode/templates/email_templates/pull_request.html:7
3717 3717 #, fuzzy
3718 3718 msgid "View this pull request here"
3719 3719 msgstr "Ajouter un relecteur à cette requête de pull."
3720 3720
3721 3721 #: rhodecode/templates/email_templates/pull_request.html:12
3722 3722 msgid "revisions for reviewing"
3723 3723 msgstr ""
3724 3724
3725 3725 #: rhodecode/templates/email_templates/pull_request_comment.html:4
3726 3726 #, fuzzy, python-format
3727 3727 msgid "User %s commented on pull request #%s for repository %s"
3728 3728 msgstr ""
3729 3729
3730 3730 #: rhodecode/templates/email_templates/pull_request_comment.html:10
3731 3731 #, fuzzy
3732 3732 msgid "New status"
3733 3733 msgstr "Modifier le statut"
3734 3734
3735 3735 #: rhodecode/templates/email_templates/pull_request_comment.html:14
3736 3736 msgid "View this comment here"
3737 3737 msgstr ""
3738 3738
3739 3739 #: rhodecode/templates/email_templates/registration.html:4
3740 3740 #, fuzzy
3741 3741 msgid "A new user have registered in RhodeCode"
3742 3742 msgstr "Vous vous êtes inscrits avec succès à RhodeCode"
3743 3743
3744 3744 #: rhodecode/templates/email_templates/registration.html:9
3745 3745 msgid "View this user here"
3746 3746 msgstr ""
3747 3747
3748 3748 #: rhodecode/templates/errors/error_document.html:46
3749 3749 #, python-format
3750 3750 msgid "You will be redirected to %s in %s seconds"
3751 3751 msgstr "Vous serez redirigé vers %s dans %s secondes."
3752 3752
3753 3753 #: rhodecode/templates/files/file_diff.html:4
3754 3754 #, python-format
3755 3755 msgid "%s File diff"
3756 3756 msgstr "Diff de fichier de %s"
3757 3757
3758 3758 #: rhodecode/templates/files/file_diff.html:12
3759 3759 msgid "File diff"
3760 3760 msgstr "Diff de fichier"
3761 3761
3762 3762 #: rhodecode/templates/files/files.html:4
3763 3763 #: rhodecode/templates/files/files.html:74
3764 3764 #, python-format
3765 3765 msgid "%s files"
3766 3766 msgstr "Fichiers de %s"
3767 3767
3768 3768 #: rhodecode/templates/files/files.html:12
3769 3769 #: rhodecode/templates/summary/summary.html:351
3770 3770 msgid "files"
3771 3771 msgstr "Fichiers"
3772 3772
3773 3773 #: rhodecode/templates/files/files_add.html:4
3774 3774 #: rhodecode/templates/files/files_edit.html:4
3775 3775 #, python-format
3776 3776 msgid "%s Edit file"
3777 3777 msgstr "Edition de fichier de %s"
3778 3778
3779 3779 #: rhodecode/templates/files/files_add.html:19
3780 3780 msgid "add file"
3781 3781 msgstr "Ajouter un fichier"
3782 3782
3783 3783 #: rhodecode/templates/files/files_add.html:40
3784 3784 msgid "Add new file"
3785 3785 msgstr "Ajouter un nouveau fichier"
3786 3786
3787 3787 #: rhodecode/templates/files/files_add.html:45
3788 3788 msgid "File Name"
3789 3789 msgstr "Nom de fichier"
3790 3790
3791 3791 #: rhodecode/templates/files/files_add.html:49
3792 3792 #: rhodecode/templates/files/files_add.html:58
3793 3793 msgid "or"
3794 3794 msgstr "ou"
3795 3795
3796 3796 #: rhodecode/templates/files/files_add.html:49
3797 3797 #: rhodecode/templates/files/files_add.html:54
3798 3798 msgid "Upload file"
3799 3799 msgstr "Téléverser un fichier"
3800 3800
3801 3801 #: rhodecode/templates/files/files_add.html:58
3802 3802 msgid "Create new file"
3803 3803 msgstr "Créer un nouveau fichier"
3804 3804
3805 3805 #: rhodecode/templates/files/files_add.html:63
3806 3806 #: rhodecode/templates/files/files_edit.html:39
3807 3807 #: rhodecode/templates/files/files_ypjax.html:3
3808 3808 msgid "Location"
3809 3809 msgstr "Emplacement"
3810 3810
3811 3811 #: rhodecode/templates/files/files_add.html:67
3812 3812 msgid "use / to separate directories"
3813 3813 msgstr "Utilisez / pour séparer les répertoires"
3814 3814
3815 3815 #: rhodecode/templates/files/files_add.html:77
3816 3816 #: rhodecode/templates/files/files_edit.html:63
3817 3817 #: rhodecode/templates/shortlog/shortlog_data.html:6
3818 3818 msgid "commit message"
3819 3819 msgstr "Message de commit"
3820 3820
3821 3821 #: rhodecode/templates/files/files_add.html:81
3822 3822 #: rhodecode/templates/files/files_edit.html:67
3823 3823 msgid "Commit changes"
3824 3824 msgstr "Commiter les changements"
3825 3825
3826 3826 #: rhodecode/templates/files/files_browser.html:13
3827 3827 msgid "view"
3828 3828 msgstr "voir"
3829 3829
3830 3830 #: rhodecode/templates/files/files_browser.html:14
3831 3831 msgid "previous revision"
3832 3832 msgstr "révision précédente"
3833 3833
3834 3834 #: rhodecode/templates/files/files_browser.html:16
3835 3835 msgid "next revision"
3836 3836 msgstr "révision suivante"
3837 3837
3838 3838 #: rhodecode/templates/files/files_browser.html:23
3839 3839 msgid "follow current branch"
3840 3840 msgstr "Suivre la branche actuelle"
3841 3841
3842 3842 #: rhodecode/templates/files/files_browser.html:27
3843 3843 msgid "search file list"
3844 3844 msgstr "Rechercher un fichier"
3845 3845
3846 3846 #: rhodecode/templates/files/files_browser.html:31
3847 3847 #: rhodecode/templates/shortlog/shortlog_data.html:78
3848 3848 msgid "add new file"
3849 3849 msgstr "Ajouter un fichier"
3850 3850
3851 3851 #: rhodecode/templates/files/files_browser.html:35
3852 3852 msgid "Loading file list..."
3853 3853 msgstr "Chargement de la liste des fichiers…"
3854 3854
3855 3855 #: rhodecode/templates/files/files_browser.html:48
3856 3856 msgid "Size"
3857 3857 msgstr "Taille"
3858 3858
3859 3859 #: rhodecode/templates/files/files_browser.html:49
3860 3860 msgid "Mimetype"
3861 3861 msgstr "Type MIME"
3862 3862
3863 3863 #: rhodecode/templates/files/files_browser.html:50
3864 3864 msgid "Last Revision"
3865 3865 msgstr "Dernière révision"
3866 3866
3867 3867 #: rhodecode/templates/files/files_browser.html:51
3868 3868 msgid "Last modified"
3869 3869 msgstr "Dernière modification"
3870 3870
3871 3871 #: rhodecode/templates/files/files_browser.html:52
3872 3872 msgid "Last committer"
3873 3873 msgstr "Dernier commiteur"
3874 3874
3875 3875 #: rhodecode/templates/files/files_edit.html:19
3876 3876 msgid "edit file"
3877 3877 msgstr "Éditer le fichier"
3878 3878
3879 3879 #: rhodecode/templates/files/files_edit.html:49
3880 3880 #: rhodecode/templates/files/files_source.html:23
3881 3881 msgid "show annotation"
3882 3882 msgstr "Afficher les annotations"
3883 3883
3884 3884 #: rhodecode/templates/files/files_edit.html:50
3885 3885 #: rhodecode/templates/files/files_source.html:25
3886 3886 #: rhodecode/templates/files/files_source.html:55
3887 3887 msgid "show as raw"
3888 3888 msgstr "montrer le fichier brut"
3889 3889
3890 3890 #: rhodecode/templates/files/files_edit.html:51
3891 3891 #: rhodecode/templates/files/files_source.html:26
3892 3892 msgid "download as raw"
3893 3893 msgstr "télécharger le fichier brut"
3894 3894
3895 3895 #: rhodecode/templates/files/files_edit.html:54
3896 3896 msgid "source"
3897 3897 msgstr "Source"
3898 3898
3899 3899 #: rhodecode/templates/files/files_edit.html:59
3900 3900 msgid "Editing file"
3901 3901 msgstr "Édition du fichier"
3902 3902
3903 3903 #: rhodecode/templates/files/files_history_box.html:2
3904 3904 msgid "History"
3905 3905 msgstr "Historique"
3906 3906
3907 3907 #: rhodecode/templates/files/files_history_box.html:9
3908 3908 msgid "diff to revision"
3909 3909 msgstr "Diff avec la révision"
3910 3910
3911 3911 #: rhodecode/templates/files/files_history_box.html:10
3912 3912 msgid "show at revision"
3913 3913 msgstr "Afficher à la révision"
3914 3914
3915 3915 #: rhodecode/templates/files/files_history_box.html:11
3916 3916 #, fuzzy
3917 3917 msgid "show full history"
3918 3918 msgstr "Chargement de la liste des fichiers…"
3919 3919
3920 3920 #: rhodecode/templates/files/files_history_box.html:16
3921 3921 #, python-format
3922 3922 msgid "%s author"
3923 3923 msgid_plural "%s authors"
3924 3924 msgstr[0] "%s auteur"
3925 3925 msgstr[1] "%s auteurs"
3926 3926
3927 3927 #: rhodecode/templates/files/files_source.html:6
3928 3928 #, fuzzy
3929 3929 msgid "Load file history"
3930 3930 msgstr "Chargement de la liste des fichiers…"
3931 3931
3932 3932 #: rhodecode/templates/files/files_source.html:21
3933 3933 msgid "show source"
3934 3934 msgstr "montrer les sources"
3935 3935
3936 3936 #: rhodecode/templates/files/files_source.html:29
3937 3937 #, fuzzy, python-format
3938 3938 msgid "edit on branch:%s"
3939 3939 msgstr "Dépôt %s supprimé"
3940 3940
3941 3941 #: rhodecode/templates/files/files_source.html:31
3942 3942 msgid "edit on branch:?"
3943 3943 msgstr ""
3944 3944
3945 3945 #: rhodecode/templates/files/files_source.html:31
3946 3946 msgid "Editing files allowed only when on branch head revision"
3947 3947 msgstr ""
3948 3948
3949 3949 #: rhodecode/templates/files/files_source.html:46
3950 3950 #, python-format
3951 3951 msgid "Binary file (%s)"
3952 3952 msgstr "Fichier binaire (%s)"
3953 3953
3954 3954 #: rhodecode/templates/files/files_source.html:55
3955 3955 msgid "File is too big to display"
3956 3956 msgstr "Ce fichier est trop gros pour être affiché."
3957 3957
3958 3958 #: rhodecode/templates/files/files_ypjax.html:5
3959 3959 msgid "annotation"
3960 3960 msgstr "annotation"
3961 3961
3962 3962 #: rhodecode/templates/files/files_ypjax.html:15
3963 3963 msgid "Go back"
3964 3964 msgstr "Revenir en arrière"
3965 3965
3966 3966 #: rhodecode/templates/files/files_ypjax.html:16
3967 3967 msgid "No files at given path"
3968 3968 msgstr "Aucun fichier à cet endroit"
3969 3969
3970 3970 #: rhodecode/templates/followers/followers.html:5
3971 3971 #, python-format
3972 3972 msgid "%s Followers"
3973 3973 msgstr "Followers de %s"
3974 3974
3975 3975 #: rhodecode/templates/followers/followers.html:13
3976 3976 msgid "followers"
3977 3977 msgstr "followers"
3978 3978
3979 3979 #: rhodecode/templates/followers/followers_data.html:12
3980 3980 msgid "Started following -"
3981 3981 msgstr "A commencé à suivre le dépôt :"
3982 3982
3983 3983 #: rhodecode/templates/forks/fork.html:5
3984 3984 #, python-format
3985 3985 msgid "%s Fork"
3986 3986 msgstr "Fork de %s"
3987 3987
3988 3988 #: rhodecode/templates/forks/fork.html:31
3989 3989 msgid "Fork name"
3990 3990 msgstr "Nom du fork"
3991 3991
3992 3992 #: rhodecode/templates/forks/fork.html:68
3993 3993 msgid "Private"
3994 3994 msgstr "Privé"
3995 3995
3996 3996 #: rhodecode/templates/forks/fork.html:77
3997 3997 msgid "Copy permissions"
3998 3998 msgstr "Copier les permissions"
3999 3999
4000 4000 #: rhodecode/templates/forks/fork.html:81
4001 4001 msgid "Copy permissions from forked repository"
4002 4002 msgstr "Copier les permissions depuis le dépôt forké"
4003 4003
4004 4004 #: rhodecode/templates/forks/fork.html:86
4005 4005 msgid "Update after clone"
4006 4006 msgstr "MÀJ après le clonage"
4007 4007
4008 4008 #: rhodecode/templates/forks/fork.html:90
4009 4009 msgid "Checkout source after making a clone"
4010 4010 msgstr "Mettre à jour depuis la source après clonage"
4011 4011
4012 4012 #: rhodecode/templates/forks/fork.html:94
4013 4013 msgid "fork this repository"
4014 4014 msgstr "Forker ce dépôt"
4015 4015
4016 4016 #: rhodecode/templates/forks/forks.html:5
4017 4017 #, python-format
4018 4018 msgid "%s Forks"
4019 4019 msgstr "Forks de %s"
4020 4020
4021 4021 #: rhodecode/templates/forks/forks.html:13
4022 4022 msgid "forks"
4023 4023 msgstr "forks"
4024 4024
4025 4025 #: rhodecode/templates/forks/forks_data.html:17
4026 4026 msgid "forked"
4027 4027 msgstr "forké"
4028 4028
4029 4029 #: rhodecode/templates/forks/forks_data.html:21
4030 4030 msgid "Compare fork"
4031 4031 msgstr "Comparer le fork"
4032 4032
4033 4033 #: rhodecode/templates/forks/forks_data.html:42
4034 4034 msgid "There are no forks yet"
4035 4035 msgstr "Il n’y a pas encore de forks."
4036 4036
4037 4037 #: rhodecode/templates/journal/journal.html:21
4038 4038 msgid "ATOM journal feed"
4039 4039 msgstr "Flux ATOM du journal"
4040 4040
4041 4041 #: rhodecode/templates/journal/journal.html:22
4042 4042 msgid "RSS journal feed"
4043 4043 msgstr "Flux RSS du journal"
4044 4044
4045 4045 #: rhodecode/templates/journal/journal.html:32
4046 4046 #: rhodecode/templates/pullrequests/pullrequest.html:55
4047 4047 msgid "Refresh"
4048 4048 msgstr "Rafraîchir"
4049 4049
4050 4050 #: rhodecode/templates/journal/journal.html:35
4051 4051 #: rhodecode/templates/journal/public_journal.html:24
4052 4052 msgid "RSS feed"
4053 4053 msgstr "Flux RSS"
4054 4054
4055 4055 #: rhodecode/templates/journal/journal.html:38
4056 4056 #: rhodecode/templates/journal/public_journal.html:27
4057 4057 msgid "ATOM feed"
4058 4058 msgstr "Flux ATOM"
4059 4059
4060 4060 #: rhodecode/templates/journal/journal.html:54
4061 4061 msgid "Watched"
4062 4062 msgstr "Surveillé"
4063 4063
4064 4064 #: rhodecode/templates/journal/journal_data.html:55
4065 4065 msgid "No entries yet"
4066 4066 msgstr "Aucune entrée pour le moment"
4067 4067
4068 4068 #: rhodecode/templates/journal/public_journal.html:13
4069 4069 msgid "ATOM public journal feed"
4070 4070 msgstr "Flux ATOM du journal public"
4071 4071
4072 4072 #: rhodecode/templates/journal/public_journal.html:14
4073 4073 msgid "RSS public journal feed"
4074 4074 msgstr "Flux RSS du journal public"
4075 4075
4076 4076 #: rhodecode/templates/journal/public_journal.html:21
4077 4077 msgid "Public Journal"
4078 4078 msgstr "Journal public"
4079 4079
4080 4080 #: rhodecode/templates/pullrequests/pullrequest.html:4
4081 4081 #: rhodecode/templates/pullrequests/pullrequest.html:12
4082 4082 msgid "New pull request"
4083 4083 msgstr "Nouvelle requête de pull"
4084 4084
4085 4085 #: rhodecode/templates/pullrequests/pullrequest.html:54
4086 4086 msgid "refresh overview"
4087 4087 msgstr "Rafraîchir les informations"
4088 4088
4089 4089 #: rhodecode/templates/pullrequests/pullrequest.html:66
4090 4090 msgid "Detailed compare view"
4091 4091 msgstr "Comparaison détaillée"
4092 4092
4093 4093 #: rhodecode/templates/pullrequests/pullrequest.html:70
4094 4094 #: rhodecode/templates/pullrequests/pullrequest_show.html:118
4095 4095 msgid "Pull request reviewers"
4096 4096 msgstr "Relecteurs de la requête de pull"
4097 4097
4098 4098 #: rhodecode/templates/pullrequests/pullrequest.html:79
4099 4099 #: rhodecode/templates/pullrequests/pullrequest_show.html:130
4100 4100 msgid "owner"
4101 4101 msgstr "Propriétaire"
4102 4102
4103 4103 #: rhodecode/templates/pullrequests/pullrequest.html:91
4104 4104 #: rhodecode/templates/pullrequests/pullrequest_show.html:145
4105 4105 msgid "Add reviewer to this pull request."
4106 4106 msgstr "Ajouter un relecteur à cette requête de pull."
4107 4107
4108 4108 #: rhodecode/templates/pullrequests/pullrequest.html:97
4109 4109 msgid "Create new pull request"
4110 4110 msgstr "Nouvelle requête de pull"
4111 4111
4112 4112 #: rhodecode/templates/pullrequests/pullrequest.html:106
4113 4113 #: rhodecode/templates/pullrequests/pullrequest_show.html:25
4114 4114 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:33
4115 4115 msgid "Title"
4116 4116 msgstr "Titre"
4117 4117
4118 4118 #: rhodecode/templates/pullrequests/pullrequest.html:123
4119 4119 msgid "Send pull request"
4120 4120 msgstr "Envoyer la requête de pull"
4121 4121
4122 4122 #: rhodecode/templates/pullrequests/pullrequest_show.html:23
4123 4123 #, python-format
4124 4124 msgid "Closed %s"
4125 4125 msgstr "Fermée %s"
4126 4126
4127 4127 #: rhodecode/templates/pullrequests/pullrequest_show.html:23
4128 4128 #, python-format
4129 4129 msgid "with status %s"
4130 4130 msgstr "avec %s comme statut."
4131 4131
4132 4132 #: rhodecode/templates/pullrequests/pullrequest_show.html:31
4133 4133 msgid "Status"
4134 4134 msgstr "Statut"
4135 4135
4136 4136 #: rhodecode/templates/pullrequests/pullrequest_show.html:36
4137 4137 msgid "Pull request status"
4138 4138 msgstr "Statut de la requête de pull"
4139 4139
4140 4140 #: rhodecode/templates/pullrequests/pullrequest_show.html:44
4141 4141 msgid "Still not reviewed by"
4142 4142 msgstr "Pas encore relue par"
4143 4143
4144 4144 #: rhodecode/templates/pullrequests/pullrequest_show.html:48
4145 4145 #, python-format
4146 4146 msgid "%d reviewer"
4147 4147 msgid_plural "%d reviewers"
4148 4148 msgstr[0] "%d relecteur"
4149 4149 msgstr[1] "%d relecteurs"
4150 4150
4151 4151 #: rhodecode/templates/pullrequests/pullrequest_show.html:50
4152 4152 msgid "pull request was reviewed by all reviewers"
4153 4153 msgstr "La requête de pull a été relue par tous les relecteurs."
4154 4154
4155 4155 #: rhodecode/templates/pullrequests/pullrequest_show.html:56
4156 4156 #, fuzzy
4157 4157 msgid "Origin repository"
4158 4158 msgstr "Dépôt Git"
4159 4159
4160 4160 #: rhodecode/templates/pullrequests/pullrequest_show.html:76
4161 4161 msgid "Created on"
4162 4162 msgstr "Créé le"
4163 4163
4164 4164 #: rhodecode/templates/pullrequests/pullrequest_show.html:83
4165 4165 msgid "Compare view"
4166 4166 msgstr "Vue de comparaison"
4167 4167
4168 4168 #: rhodecode/templates/pullrequests/pullrequest_show.html:130
4169 4169 #, fuzzy
4170 4170 msgid "reviewer"
4171 4171 msgstr "%d relecteur"
4172 4172
4173 4173 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:4
4174 4174 msgid "all pull requests"
4175 4175 msgstr "Requêtes de pull"
4176 4176
4177 4177 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:12
4178 4178 msgid "All pull requests"
4179 4179 msgstr "Toutes les requêtes de pull"
4180 4180
4181 4181 #: rhodecode/templates/pullrequests/pullrequest_show_all.html:27
4182 4182 msgid "Closed"
4183 4183 msgstr "Fermée"
4184 4184
4185 4185 #: rhodecode/templates/search/search.html:6
4186 4186 #, python-format
4187 4187 msgid "Search \"%s\" in repository: %s"
4188 4188 msgstr "Rechercher « %s » dans le dépôt : %s"
4189 4189
4190 4190 #: rhodecode/templates/search/search.html:8
4191 4191 #, python-format
4192 4192 msgid "Search \"%s\" in all repositories"
4193 4193 msgstr "Rechercher « %s » dans tous les dépôts"
4194 4194
4195 4195 #: rhodecode/templates/search/search.html:12
4196 4196 #: rhodecode/templates/search/search.html:32
4197 4197 #, python-format
4198 4198 msgid "Search in repository: %s"
4199 4199 msgstr "Rechercher dans le dépôt : %s"
4200 4200
4201 4201 #: rhodecode/templates/search/search.html:14
4202 4202 #: rhodecode/templates/search/search.html:34
4203 4203 msgid "Search in all repositories"
4204 4204 msgstr "Rechercher dans tous les dépôts"
4205 4205
4206 4206 #: rhodecode/templates/search/search.html:48
4207 4207 msgid "Search term"
4208 4208 msgstr "Termes de la recherches"
4209 4209
4210 4210 #: rhodecode/templates/search/search.html:60
4211 4211 msgid "Search in"
4212 4212 msgstr "Rechercher dans"
4213 4213
4214 4214 #: rhodecode/templates/search/search.html:63
4215 4215 msgid "File contents"
4216 4216 msgstr "Le contenu des fichiers"
4217 4217
4218 4218 #: rhodecode/templates/search/search.html:64
4219 4219 msgid "Commit messages"
4220 4220 msgstr "Les messages de commit"
4221 4221
4222 4222 #: rhodecode/templates/search/search.html:65
4223 4223 msgid "File names"
4224 4224 msgstr "Les noms de fichiers"
4225 4225
4226 4226 #: rhodecode/templates/search/search_commit.html:35
4227 4227 #: rhodecode/templates/search/search_content.html:21
4228 4228 #: rhodecode/templates/search/search_path.html:15
4229 4229 msgid "Permission denied"
4230 4230 msgstr "Permission refusée"
4231 4231
4232 4232 #: rhodecode/templates/settings/repo_settings.html:5
4233 4233 #, python-format
4234 4234 msgid "%s Settings"
4235 4235 msgstr "Réglages de %s"
4236 4236
4237 4237 #: rhodecode/templates/settings/repo_settings.html:102
4238 4238 #, fuzzy
4239 4239 msgid "Delete repository"
4240 4240 msgstr "[a supprimé] le dépôt"
4241 4241
4242 4242 #: rhodecode/templates/settings/repo_settings.html:109
4243 4243 #, fuzzy
4244 4244 msgid "Remove repo"
4245 4245 msgstr "Enlever"
4246 4246
4247 4247 #: rhodecode/templates/shortlog/shortlog.html:5
4248 4248 #, python-format
4249 4249 msgid "%s Shortlog"
4250 4250 msgstr "Résumé de %s"
4251 4251
4252 4252 #: rhodecode/templates/shortlog/shortlog.html:15
4253 4253 #: rhodecode/templates/shortlog/shortlog.html:19
4254 4254 msgid "shortlog"
4255 4255 msgstr "Résumé"
4256 4256
4257 4257 #: rhodecode/templates/shortlog/shortlog_data.html:5
4258 4258 msgid "revision"
4259 4259 msgstr "Révision"
4260 4260
4261 4261 #: rhodecode/templates/shortlog/shortlog_data.html:7
4262 4262 msgid "age"
4263 4263 msgstr "Âge"
4264 4264
4265 4265 #: rhodecode/templates/shortlog/shortlog_data.html:8
4266 4266 msgid "author"
4267 4267 msgstr "Auteur"
4268 4268
4269 4269 #: rhodecode/templates/shortlog/shortlog_data.html:75
4270 4270 msgid "Add or upload files directly via RhodeCode"
4271 4271 msgstr "Ajouter ou téléverser des fichiers directement via RhodeCode…"
4272 4272
4273 4273 #: rhodecode/templates/shortlog/shortlog_data.html:84
4274 4274 msgid "Push new repo"
4275 4275 msgstr "Pusher le nouveau dépôt"
4276 4276
4277 4277 #: rhodecode/templates/shortlog/shortlog_data.html:92
4278 4278 msgid "Existing repository?"
4279 4279 msgstr "Le dépôt existe déjà ?"
4280 4280
4281 4281 #: rhodecode/templates/summary/summary.html:4
4282 4282 #, python-format
4283 4283 msgid "%s Summary"
4284 4284 msgstr "Résumé de %s"
4285 4285
4286 4286 #: rhodecode/templates/summary/summary.html:12
4287 4287 msgid "summary"
4288 4288 msgstr "résumé"
4289 4289
4290 4290 #: rhodecode/templates/summary/summary.html:20
4291 4291 #, python-format
4292 4292 msgid "repo %s ATOM feed"
4293 4293 msgstr "Flux ATOM du dépôt %s"
4294 4294
4295 4295 #: rhodecode/templates/summary/summary.html:21
4296 4296 #, python-format
4297 4297 msgid "repo %s RSS feed"
4298 4298 msgstr "Flux RSS du dépôt %s"
4299 4299
4300 4300 #: rhodecode/templates/summary/summary.html:49
4301 4301 #: rhodecode/templates/summary/summary.html:52
4302 4302 msgid "ATOM"
4303 4303 msgstr "ATOM"
4304 4304
4305 4305 #: rhodecode/templates/summary/summary.html:70
4306 4306 #, fuzzy, python-format
4307 4307 msgid "Repository locked by %s"
4308 4308 msgstr "Ce dépôt n’est pas verrouillé %s."
4309 4309
4310 4310 #: rhodecode/templates/summary/summary.html:72
4311 4311 #, fuzzy
4312 4312 msgid "Repository unlocked"
4313 4313 msgstr "Ce dépôt n’est pas verrouillé."
4314 4314
4315 4315 #: rhodecode/templates/summary/summary.html:91
4316 4316 #, python-format
4317 4317 msgid "Non changable ID %s"
4318 4318 msgstr "Identifiant permanent : %s"
4319 4319
4320 4320 #: rhodecode/templates/summary/summary.html:96
4321 4321 msgid "public"
4322 4322 msgstr "publique"
4323 4323
4324 4324 #: rhodecode/templates/summary/summary.html:104
4325 4325 msgid "remote clone"
4326 4326 msgstr "Clone distant"
4327 4327
4328 4328 #: rhodecode/templates/summary/summary.html:125
4329 4329 msgid "Contact"
4330 4330 msgstr "Contact"
4331 4331
4332 4332 #: rhodecode/templates/summary/summary.html:139
4333 4333 msgid "Clone url"
4334 4334 msgstr "URL de clone"
4335 4335
4336 4336 #: rhodecode/templates/summary/summary.html:142
4337 4337 msgid "Show by Name"
4338 4338 msgstr "Afficher par nom"
4339 4339
4340 4340 #: rhodecode/templates/summary/summary.html:143
4341 4341 msgid "Show by ID"
4342 4342 msgstr "Afficher par ID"
4343 4343
4344 4344 #: rhodecode/templates/summary/summary.html:151
4345 4345 msgid "Trending files"
4346 4346 msgstr "Populaires"
4347 4347
4348 4348 #: rhodecode/templates/summary/summary.html:159
4349 4349 #: rhodecode/templates/summary/summary.html:175
4350 4350 #: rhodecode/templates/summary/summary.html:203
4351 4351 msgid "enable"
4352 4352 msgstr "Activer"
4353 4353
4354 4354 #: rhodecode/templates/summary/summary.html:167
4355 4355 msgid "Download"
4356 4356 msgstr "Téléchargements"
4357 4357
4358 4358 #: rhodecode/templates/summary/summary.html:171
4359 4359 msgid "There are no downloads yet"
4360 4360 msgstr "Il n’y a pas encore de téléchargements proposés."
4361 4361
4362 4362 #: rhodecode/templates/summary/summary.html:173
4363 4363 msgid "Downloads are disabled for this repository"
4364 4364 msgstr "Les téléchargements sont désactivés pour ce dépôt."
4365 4365
4366 4366 #: rhodecode/templates/summary/summary.html:179
4367 4367 msgid "Download as zip"
4368 4368 msgstr "Télécharger en ZIP"
4369 4369
4370 4370 #: rhodecode/templates/summary/summary.html:182
4371 4371 msgid "Check this to download archive with subrepos"
4372 4372 msgstr "Télécharger une archive contenant également les sous-dépôts éventuels"
4373 4373
4374 4374 #: rhodecode/templates/summary/summary.html:182
4375 4375 msgid "with subrepos"
4376 4376 msgstr "avec les sous-dépôts"
4377 4377
4378 4378 #: rhodecode/templates/summary/summary.html:195
4379 4379 msgid "Commit activity by day / author"
4380 4380 msgstr "Activité de commit par jour et par auteur"
4381 4381
4382 4382 #: rhodecode/templates/summary/summary.html:206
4383 4383 msgid "Stats gathered: "
4384 4384 msgstr "Statistiques obtenues :"
4385 4385
4386 4386 #: rhodecode/templates/summary/summary.html:227
4387 4387 msgid "Shortlog"
4388 4388 msgstr "Résumé des changements"
4389 4389
4390 4390 #: rhodecode/templates/summary/summary.html:229
4391 4391 msgid "Quick start"
4392 4392 msgstr "Démarrage rapide"
4393 4393
4394 4394 #: rhodecode/templates/summary/summary.html:243
4395 4395 #, python-format
4396 4396 msgid "Readme file at revision '%s'"
4397 4397 msgstr "Fichier « Lisez-moi » à la révision « %s »"
4398 4398
4399 4399 #: rhodecode/templates/summary/summary.html:246
4400 4400 msgid "Permalink to this readme"
4401 4401 msgstr "Lien permanent vers ce fichier « Lisez-moi »"
4402 4402
4403 4403 #: rhodecode/templates/summary/summary.html:304
4404 4404 #, python-format
4405 4405 msgid "Download %s as %s"
4406 4406 msgstr "Télécharger %s comme archive %s"
4407 4407
4408 4408 #: rhodecode/templates/summary/summary.html:661
4409 4409 msgid "commits"
4410 4410 msgstr "commits"
4411 4411
4412 4412 #: rhodecode/templates/summary/summary.html:662
4413 4413 msgid "files added"
4414 4414 msgstr "fichiers ajoutés"
4415 4415
4416 4416 #: rhodecode/templates/summary/summary.html:663
4417 4417 msgid "files changed"
4418 4418 msgstr "fichiers modifiés"
4419 4419
4420 4420 #: rhodecode/templates/summary/summary.html:664
4421 4421 msgid "files removed"
4422 4422 msgstr "fichiers supprimés"
4423 4423
4424 4424 #: rhodecode/templates/summary/summary.html:667
4425 4425 msgid "commit"
4426 4426 msgstr "commit"
4427 4427
4428 4428 #: rhodecode/templates/summary/summary.html:668
4429 4429 msgid "file added"
4430 4430 msgstr "fichier ajouté"
4431 4431
4432 4432 #: rhodecode/templates/summary/summary.html:669
4433 4433 msgid "file changed"
4434 4434 msgstr "fichié modifié"
4435 4435
4436 4436 #: rhodecode/templates/summary/summary.html:670
4437 4437 msgid "file removed"
4438 4438 msgstr "fichier supprimé"
4439 4439
4440 4440 #: rhodecode/templates/tags/tags.html:5
4441 4441 #, python-format
4442 4442 msgid "%s Tags"
4443 4443 msgstr "Tags de %s"
4444 4444
4445 4445 #: rhodecode/templates/tags/tags.html:29
4446 4446 #, fuzzy
4447 4447 msgid "Compare tags"
4448 4448 msgstr "Comparer"
4449 4449
1 NO CONTENT: modified file, binary diff hidden
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file, binary diff hidden
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file, binary diff hidden
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file, binary diff hidden
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file, binary diff hidden
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
1 NO CONTENT: modified file
The requested commit or file is too big and content was truncated. Show full diff
General Comments 0
You need to be logged in to leave comments. Login now