Changeset - b361974171ea
[Not reviewed]
default
0 22 0
Søren Løvborg - 10 years ago 2015-08-14 17:21:26
sorenl@unity3d.com
spelling: fix inappropriate use of title case

These are not titles or labels, and should not be title cased.
3 files changed:
0 comments (0 inline, 0 general)
kallithea/controllers/admin/repo_groups.py
Show inline comments
 
@@ -36,424 +36,424 @@ from pylons import request, tmpl_context
 
from pylons.controllers.util import abort, redirect
 
from pylons.i18n.translation import _, ungettext
 

	
 
import kallithea
 
from kallithea.lib import helpers as h
 
from kallithea.lib.compat import json
 
from kallithea.lib.auth import LoginRequired, \
 
    HasRepoGroupPermissionAnyDecorator, HasRepoGroupPermissionAll, \
 
    HasPermissionAll
 
from kallithea.lib.base import BaseController, render
 
from kallithea.model.db import RepoGroup, Repository
 
from kallithea.model.scm import RepoGroupList, AvailableRepoGroupChoices
 
from kallithea.model.repo_group import RepoGroupModel
 
from kallithea.model.forms import RepoGroupForm, RepoGroupPermsForm
 
from kallithea.model.meta import Session
 
from kallithea.model.repo import RepoModel
 
from webob.exc import HTTPInternalServerError, HTTPNotFound
 
from kallithea.lib.utils2 import safe_int
 
from sqlalchemy.sql.expression import func
 

	
 

	
 
log = logging.getLogger(__name__)
 

	
 

	
 
class RepoGroupsController(BaseController):
 

	
 
    @LoginRequired()
 
    def __before__(self):
 
        super(RepoGroupsController, self).__before__()
 

	
 
    def __load_defaults(self, extras=(), exclude=()):
 
        """extras is used for keeping current parent ignoring permissions
 
        exclude is used for not moving group to itself TODO: also exclude descendants
 
        Note: only admin can create top level groups
 
        """
 
        repo_groups = AvailableRepoGroupChoices([], ['group.admin'], extras)
 
        exclude_group_ids = set(rg.group_id for rg in exclude)
 
        c.repo_groups = [rg for rg in repo_groups
 
                         if rg[0] not in exclude_group_ids]
 

	
 
        repo_model = RepoModel()
 
        c.users_array = repo_model.get_users_js()
 
        c.user_groups_array = repo_model.get_user_groups_js()
 

	
 
    def __load_data(self, group_id):
 
        """
 
        Load defaults settings for edit, and update
 

	
 
        :param group_id:
 
        """
 
        repo_group = RepoGroup.get_or_404(group_id)
 
        data = repo_group.get_dict()
 
        data['group_name'] = repo_group.name
 

	
 
        # fill repository group users
 
        for p in repo_group.repo_group_to_perm:
 
            data.update({'u_perm_%s' % p.user.username:
 
                             p.permission.permission_name})
 

	
 
        # fill repository group groups
 
        for p in repo_group.users_group_to_perm:
 
            data.update({'g_perm_%s' % p.users_group.users_group_name:
 
                             p.permission.permission_name})
 

	
 
        return data
 

	
 
    def _revoke_perms_on_yourself(self, form_result):
 
        _up = filter(lambda u: c.authuser.username == u[0],
 
                     form_result['perms_updates'])
 
        _new = filter(lambda u: c.authuser.username == u[0],
 
                      form_result['perms_new'])
 
        if _new and _new[0][1] != 'group.admin' or _up and _up[0][1] != 'group.admin':
 
            return True
 
        return False
 

	
 
    def index(self, format='html'):
 
        """GET /repo_groups: All items in the collection"""
 
        # url('repos_groups')
 
        _list = RepoGroup.query()\
 
                    .order_by(func.lower(RepoGroup.group_name))\
 
                    .all()
 
        group_iter = RepoGroupList(_list, perm_set=['group.admin'])
 
        repo_groups_data = []
 
        total_records = len(group_iter)
 
        _tmpl_lookup = kallithea.CONFIG['pylons.app_globals'].mako_lookup
 
        template = _tmpl_lookup.get_template('data_table/_dt_elements.html')
 

	
 
        repo_group_name = lambda repo_group_name, children_groups: (
 
            template.get_def("repo_group_name")
 
            .render(repo_group_name, children_groups, _=_, h=h, c=c)
 
        )
 
        repo_group_actions = lambda repo_group_id, repo_group_name, gr_count: (
 
            template.get_def("repo_group_actions")
 
            .render(repo_group_id, repo_group_name, gr_count, _=_, h=h, c=c,
 
                    ungettext=ungettext)
 
        )
 

	
 
        for repo_gr in group_iter:
 
            children_groups = map(h.safe_unicode,
 
                itertools.chain((g.name for g in repo_gr.parents),
 
                                (x.name for x in [repo_gr])))
 
            repo_count = repo_gr.repositories.count()
 
            repo_groups_data.append({
 
                "raw_name": repo_gr.group_name,
 
                "group_name": repo_group_name(repo_gr.group_name, children_groups),
 
                "desc": h.escape(repo_gr.group_description),
 
                "repos": repo_count,
 
                "owner": h.person(repo_gr.user),
 
                "action": repo_group_actions(repo_gr.group_id, repo_gr.group_name,
 
                                             repo_count)
 
            })
 

	
 
        c.data = json.dumps({
 
            "totalRecords": total_records,
 
            "startIndex": 0,
 
            "sort": None,
 
            "dir": "asc",
 
            "records": repo_groups_data
 
        })
 

	
 
        return render('admin/repo_groups/repo_groups.html')
 

	
 
    def create(self):
 
        """POST /repo_groups: Create a new item"""
 
        # url('repos_groups')
 

	
 
        self.__load_defaults()
 

	
 
        # permissions for can create group based on parent_id are checked
 
        # here in the Form
 
        repo_group_form = RepoGroupForm(repo_groups=c.repo_groups)
 
        try:
 
            form_result = repo_group_form.to_python(dict(request.POST))
 
            gr = RepoGroupModel().create(
 
                group_name=form_result['group_name'],
 
                group_description=form_result['group_description'],
 
                parent=form_result['group_parent_id'],
 
                owner=self.authuser.user_id, # TODO: make editable
 
                copy_permissions=form_result['group_copy_permissions']
 
            )
 
            Session().commit()
 
            #TODO: in futureaction_logger(, '', '', '', self.sa)
 
        except formencode.Invalid as errors:
 
            return htmlfill.render(
 
                render('admin/repo_groups/repo_group_add.html'),
 
                defaults=errors.value,
 
                errors=errors.error_dict or {},
 
                prefix_error=False,
 
                encoding="UTF-8",
 
                force_defaults=False)
 
        except Exception:
 
            log.error(traceback.format_exc())
 
            h.flash(_('Error occurred during creation of repository group %s') \
 
                    % request.POST.get('group_name'), category='error')
 
            parent_group_id = form_result['group_parent_id']
 
            #TODO: maybe we should get back to the main view, not the admin one
 
            return redirect(url('repos_groups', parent_group=parent_group_id))
 
        h.flash(_('Created repository group %s') % gr.group_name,
 
                category='success')
 
        return redirect(url('repos_group_home', group_name=gr.group_name))
 

	
 
    def new(self):
 
        """GET /repo_groups/new: Form to create a new item"""
 
        # url('new_repos_group')
 
        if HasPermissionAll('hg.admin')('group create'):
 
            #we're global admin, we're ok and we can create TOP level groups
 
            pass
 
        else:
 
            # we pass in parent group into creation form, thus we know
 
            # what would be the group, we can check perms here !
 
            group_id = safe_int(request.GET.get('parent_group'))
 
            group = RepoGroup.get(group_id) if group_id else None
 
            group_name = group.group_name if group else None
 
            if HasRepoGroupPermissionAll('group.admin')(group_name, 'group create'):
 
                pass
 
            else:
 
                return abort(403)
 

	
 
        self.__load_defaults()
 
        return render('admin/repo_groups/repo_group_add.html')
 

	
 
    @HasRepoGroupPermissionAnyDecorator('group.admin')
 
    def update(self, group_name):
 
        """PUT /repo_groups/group_name: Update an existing item"""
 
        # Forms posted to this method should contain a hidden field:
 
        #    <input type="hidden" name="_method" value="PUT" />
 
        # Or using helpers:
 
        #    h.form(url('repos_group', group_name=GROUP_NAME),
 
        #           method='put')
 
        # url('repos_group', group_name=GROUP_NAME)
 

	
 
        c.repo_group = RepoGroupModel()._get_repo_group(group_name)
 
        self.__load_defaults(extras=[c.repo_group.parent_group],
 
                             exclude=[c.repo_group])
 

	
 
        # TODO: kill allow_empty_group - it is only used for redundant form validation!
 
        if HasPermissionAll('hg.admin')('group edit'):
 
            #we're global admin, we're ok and we can create TOP level groups
 
            allow_empty_group = True
 
        elif not c.repo_group.parent_group:
 
            allow_empty_group = True
 
        else:
 
            allow_empty_group = False
 
        repo_group_form = RepoGroupForm(
 
            edit=True,
 
            old_data=c.repo_group.get_dict(),
 
            repo_groups=c.repo_groups,
 
            can_create_in_root=allow_empty_group,
 
        )()
 
        try:
 
            form_result = repo_group_form.to_python(dict(request.POST))
 

	
 
            new_gr = RepoGroupModel().update(group_name, form_result)
 
            Session().commit()
 
            h.flash(_('Updated repository group %s') \
 
                    % form_result['group_name'], category='success')
 
            # we now have new name !
 
            group_name = new_gr.group_name
 
            #TODO: in future action_logger(, '', '', '', self.sa)
 
        except formencode.Invalid as errors:
 

	
 
            return htmlfill.render(
 
                render('admin/repo_groups/repo_group_edit.html'),
 
                defaults=errors.value,
 
                errors=errors.error_dict or {},
 
                prefix_error=False,
 
                encoding="UTF-8",
 
                force_defaults=False)
 
        except Exception:
 
            log.error(traceback.format_exc())
 
            h.flash(_('Error occurred during update of repository group %s') \
 
                    % request.POST.get('group_name'), category='error')
 

	
 
        return redirect(url('edit_repo_group', group_name=group_name))
 

	
 
    @HasRepoGroupPermissionAnyDecorator('group.admin')
 
    def delete(self, group_name):
 
        """DELETE /repo_groups/group_name: Delete an existing item"""
 
        # Forms posted to this method should contain a hidden field:
 
        #    <input type="hidden" name="_method" value="DELETE" />
 
        # Or using helpers:
 
        #    h.form(url('repos_group', group_name=GROUP_NAME),
 
        #           method='delete')
 
        # url('repos_group', group_name=GROUP_NAME)
 

	
 
        gr = c.repo_group = RepoGroupModel()._get_repo_group(group_name)
 
        repos = gr.repositories.all()
 
        if repos:
 
            h.flash(_('This group contains %s repositories and cannot be '
 
                      'deleted') % len(repos), category='warning')
 
            return redirect(url('repos_groups'))
 

	
 
        children = gr.children.all()
 
        if children:
 
            h.flash(_('This group contains %s subgroups and cannot be deleted'
 
                      % (len(children))), category='warning')
 
            return redirect(url('repos_groups'))
 

	
 
        try:
 
            RepoGroupModel().delete(group_name)
 
            Session().commit()
 
            h.flash(_('Removed repository group %s') % group_name,
 
                    category='success')
 
            #TODO: in future action_logger(, '', '', '', self.sa)
 
        except Exception:
 
            log.error(traceback.format_exc())
 
            h.flash(_('Error occurred during deletion of repository group %s')
 
                    % group_name, category='error')
 

	
 
        if gr.parent_group:
 
            return redirect(url('repos_group_home', group_name=gr.parent_group.group_name))
 
        return redirect(url('repos_groups'))
 

	
 
    def show_by_name(self, group_name):
 
        """
 
        This is a proxy that does a lookup group_name -> id, and shows
 
        the group by id view instead
 
        """
 
        group_name = group_name.rstrip('/')
 
        id_ = RepoGroup.get_by_group_name(group_name)
 
        if id_:
 
            return self.show(group_name)
 
        raise HTTPNotFound
 

	
 
    @HasRepoGroupPermissionAnyDecorator('group.read', 'group.write',
 
                                         'group.admin')
 
    def show(self, group_name):
 
        """GET /repo_groups/group_name: Show a specific item"""
 
        # url('repos_group', group_name=GROUP_NAME)
 
        c.active = 'settings'
 

	
 
        c.group = c.repo_group = RepoGroupModel()._get_repo_group(group_name)
 
        c.group_repos = c.group.repositories.all()
 

	
 
        #overwrite our cached list with current filter
 
        c.repo_cnt = 0
 

	
 
        groups = RepoGroup.query().order_by(RepoGroup.group_name)\
 
            .filter(RepoGroup.group_parent_id == c.group.group_id).all()
 
        c.groups = self.scm_model.get_repo_groups(groups)
 

	
 
        c.repos_list = Repository.query()\
 
                        .filter(Repository.group_id == c.group.group_id)\
 
                        .order_by(func.lower(Repository.repo_name))\
 
                        .all()
 

	
 
        repos_data = RepoModel().get_repos_as_dict(repos_list=c.repos_list,
 
                                                   admin=False)
 
        #json used to render the grid
 
        c.data = json.dumps(repos_data)
 

	
 
        return render('admin/repo_groups/repo_group_show.html')
 

	
 
    @HasRepoGroupPermissionAnyDecorator('group.admin')
 
    def edit(self, group_name):
 
        """GET /repo_groups/group_name/edit: Form to edit an existing item"""
 
        # url('edit_repo_group', group_name=GROUP_NAME)
 
        c.active = 'settings'
 

	
 
        c.repo_group = RepoGroupModel()._get_repo_group(group_name)
 
        self.__load_defaults(extras=[c.repo_group.parent_group],
 
                             exclude=[c.repo_group])
 
        defaults = self.__load_data(c.repo_group.group_id)
 

	
 
        return htmlfill.render(
 
            render('admin/repo_groups/repo_group_edit.html'),
 
            defaults=defaults,
 
            encoding="UTF-8",
 
            force_defaults=False
 
        )
 

	
 
    @HasRepoGroupPermissionAnyDecorator('group.admin')
 
    def edit_repo_group_advanced(self, group_name):
 
        """GET /repo_groups/group_name/edit: Form to edit an existing item"""
 
        # url('edit_repo_group', group_name=GROUP_NAME)
 
        c.active = 'advanced'
 
        c.repo_group = RepoGroupModel()._get_repo_group(group_name)
 

	
 
        return render('admin/repo_groups/repo_group_edit.html')
 

	
 
    @HasRepoGroupPermissionAnyDecorator('group.admin')
 
    def edit_repo_group_perms(self, group_name):
 
        """GET /repo_groups/group_name/edit: Form to edit an existing item"""
 
        # url('edit_repo_group', group_name=GROUP_NAME)
 
        c.active = 'perms'
 
        c.repo_group = RepoGroupModel()._get_repo_group(group_name)
 
        self.__load_defaults()
 
        defaults = self.__load_data(c.repo_group.group_id)
 

	
 
        return htmlfill.render(
 
            render('admin/repo_groups/repo_group_edit.html'),
 
            defaults=defaults,
 
            encoding="UTF-8",
 
            force_defaults=False
 
        )
 

	
 
    @HasRepoGroupPermissionAnyDecorator('group.admin')
 
    def update_perms(self, group_name):
 
        """
 
        Update permissions for given repository group
 

	
 
        :param group_name:
 
        """
 

	
 
        c.repo_group = RepoGroupModel()._get_repo_group(group_name)
 
        valid_recursive_choices = ['none', 'repos', 'groups', 'all']
 
        form_result = RepoGroupPermsForm(valid_recursive_choices)().to_python(request.POST)
 
        if not c.authuser.is_admin:
 
            if self._revoke_perms_on_yourself(form_result):
 
                msg = _('Cannot revoke permission for yourself as admin')
 
                h.flash(msg, category='warning')
 
                return redirect(url('edit_repo_group_perms', group_name=group_name))
 
        recursive = form_result['recursive']
 
        # iterate over all members(if in recursive mode) of this groups and
 
        # set the permissions !
 
        # this can be potentially heavy operation
 
        RepoGroupModel()._update_permissions(c.repo_group,
 
                                             form_result['perms_new'],
 
                                             form_result['perms_updates'],
 
                                             recursive)
 
        #TODO: implement this
 
        #action_logger(self.authuser, 'admin_changed_repo_permissions',
 
        #              repo_name, self.ip_addr, self.sa)
 
        Session().commit()
 
        h.flash(_('Repository Group permissions updated'), category='success')
 
        h.flash(_('Repository group permissions updated'), category='success')
 
        return redirect(url('edit_repo_group_perms', group_name=group_name))
 

	
 
    @HasRepoGroupPermissionAnyDecorator('group.admin')
 
    def delete_perms(self, group_name):
 
        """
 
        DELETE an existing repository group permission user
 

	
 
        :param group_name:
 
        """
 
        try:
 
            obj_type = request.POST.get('obj_type')
 
            obj_id = None
 
            if obj_type == 'user':
 
                obj_id = safe_int(request.POST.get('user_id'))
 
            elif obj_type == 'user_group':
 
                obj_id = safe_int(request.POST.get('user_group_id'))
 

	
 
            if not c.authuser.is_admin:
 
                if obj_type == 'user' and c.authuser.user_id == obj_id:
 
                    msg = _('Cannot revoke permission for yourself as admin')
 
                    h.flash(msg, category='warning')
 
                    raise Exception('revoke admin permission on self')
 
            recursive = request.POST.get('recursive', 'none')
 
            if obj_type == 'user':
 
                RepoGroupModel().delete_permission(repo_group=group_name,
 
                                                   obj=obj_id, obj_type='user',
 
                                                   recursive=recursive)
 
            elif obj_type == 'user_group':
 
                RepoGroupModel().delete_permission(repo_group=group_name,
 
                                                   obj=obj_id,
 
                                                   obj_type='user_group',
 
                                                   recursive=recursive)
 

	
 
            Session().commit()
 
        except Exception:
 
            log.error(traceback.format_exc())
 
            h.flash(_('An error occurred during revoking of permission'),
 
                    category='error')
 
            raise HTTPInternalServerError()
kallithea/controllers/admin/user_groups.py
Show inline comments
 
# -*- coding: utf-8 -*-
 
# This program is free software: you can redistribute it and/or modify
 
# it under the terms of the GNU General Public License as published by
 
# the Free Software Foundation, either version 3 of the License, or
 
# (at your option) any later version.
 
#
 
# This program is distributed in the hope that it will be useful,
 
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
# GNU General Public License for more details.
 
#
 
# You should have received a copy of the GNU General Public License
 
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
"""
 
kallithea.controllers.admin.user_groups
 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 

	
 
User Groups crud controller for pylons
 

	
 
This file was forked by the Kallithea project in July 2014.
 
Original author and date, and relevant copyright and licensing information is below:
 
:created_on: Jan 25, 2011
 
:author: marcink
 
:copyright: (c) 2013 RhodeCode GmbH, and others.
 
:license: GPLv3, see LICENSE.md for more details.
 
"""
 

	
 
import logging
 
import traceback
 
import formencode
 

	
 
from formencode import htmlfill
 
from pylons import request, tmpl_context as c, url, config
 
from pylons.controllers.util import redirect
 
from pylons.i18n.translation import _
 

	
 
from sqlalchemy.orm import joinedload
 
from sqlalchemy.sql.expression import func
 
from webob.exc import HTTPInternalServerError
 

	
 
import kallithea
 
from kallithea.lib import helpers as h
 
from kallithea.lib.exceptions import UserGroupsAssignedException, \
 
    RepoGroupAssignmentError
 
from kallithea.lib.utils2 import safe_unicode, safe_int
 
from kallithea.lib.auth import LoginRequired, \
 
    HasUserGroupPermissionAnyDecorator, HasPermissionAnyDecorator
 
from kallithea.lib.base import BaseController, render
 
from kallithea.model.scm import UserGroupList
 
from kallithea.model.user_group import UserGroupModel
 
from kallithea.model.repo import RepoModel
 
from kallithea.model.db import User, UserGroup, UserGroupToPerm, \
 
    UserGroupRepoToPerm, UserGroupRepoGroupToPerm
 
from kallithea.model.forms import UserGroupForm, UserGroupPermsForm, \
 
    CustomDefaultPermissionsForm
 
from kallithea.model.meta import Session
 
from kallithea.lib.utils import action_logger
 
from kallithea.lib.compat import json
 

	
 
log = logging.getLogger(__name__)
 

	
 

	
 
class UserGroupsController(BaseController):
 
    """REST Controller styled on the Atom Publishing Protocol"""
 

	
 
    @LoginRequired()
 
    def __before__(self):
 
        super(UserGroupsController, self).__before__()
 
        c.available_permissions = config['available_permissions']
 

	
 
    def __load_data(self, user_group_id):
 
        c.group_members_obj = sorted((x.user for x in c.user_group.members),
 
                                     key=lambda u: u.username.lower())
 

	
 
        c.group_members = [(x.user_id, x.username) for x in c.group_members_obj]
 
        c.available_members = sorted(((x.user_id, x.username) for x in
 
                                      User.query().all()),
 
                                     key=lambda u: u[1].lower())
 

	
 
    def __load_defaults(self, user_group_id):
 
        """
 
        Load defaults settings for edit, and update
 

	
 
        :param user_group_id:
 
        """
 
        user_group = UserGroup.get_or_404(user_group_id)
 
        data = user_group.get_dict()
 
        return data
 

	
 
    def index(self, format='html'):
 
        """GET /users_groups: All items in the collection"""
 
        # url('users_groups')
 
        _list = UserGroup.query()\
 
                        .order_by(func.lower(UserGroup.users_group_name))\
 
                        .all()
 
        group_iter = UserGroupList(_list, perm_set=['usergroup.admin'])
 
        user_groups_data = []
 
        total_records = len(group_iter)
 
        _tmpl_lookup = kallithea.CONFIG['pylons.app_globals'].mako_lookup
 
        template = _tmpl_lookup.get_template('data_table/_dt_elements.html')
 

	
 
        user_group_name = lambda user_group_id, user_group_name: (
 
            template.get_def("user_group_name")
 
            .render(user_group_id, user_group_name, _=_, h=h, c=c)
 
        )
 
        user_group_actions = lambda user_group_id, user_group_name: (
 
            template.get_def("user_group_actions")
 
            .render(user_group_id, user_group_name, _=_, h=h, c=c)
 
        )
 
        for user_gr in group_iter:
 

	
 
            user_groups_data.append({
 
                "raw_name": user_gr.users_group_name,
 
                "group_name": user_group_name(user_gr.users_group_id,
 
                                              user_gr.users_group_name),
 
                "desc": h.escape(user_gr.user_group_description),
 
                "members": len(user_gr.members),
 
                "active": h.boolicon(user_gr.users_group_active),
 
                "owner": h.person(user_gr.user.username),
 
                "action": user_group_actions(user_gr.users_group_id, user_gr.users_group_name)
 
            })
 

	
 
        c.data = json.dumps({
 
            "totalRecords": total_records,
 
            "startIndex": 0,
 
            "sort": None,
 
            "dir": "asc",
 
            "records": user_groups_data
 
        })
 

	
 
        return render('admin/user_groups/user_groups.html')
 

	
 
    @HasPermissionAnyDecorator('hg.admin', 'hg.usergroup.create.true')
 
    def create(self):
 
        """POST /users_groups: Create a new item"""
 
        # url('users_groups')
 

	
 
        users_group_form = UserGroupForm()()
 
        try:
 
            form_result = users_group_form.to_python(dict(request.POST))
 
            ug = UserGroupModel().create(name=form_result['users_group_name'],
 
                                         description=form_result['user_group_description'],
 
                                         owner=self.authuser.user_id,
 
                                         active=form_result['users_group_active'])
 

	
 
            gr = form_result['users_group_name']
 
            action_logger(self.authuser,
 
                          'admin_created_users_group:%s' % gr,
 
                          None, self.ip_addr, self.sa)
 
            h.flash(h.literal(_('Created user group %s') % h.link_to(h.escape(gr), url('edit_users_group', id=ug.users_group_id))),
 
                category='success')
 
            Session().commit()
 
        except formencode.Invalid as errors:
 
            return htmlfill.render(
 
                render('admin/user_groups/user_group_add.html'),
 
                defaults=errors.value,
 
                errors=errors.error_dict or {},
 
                prefix_error=False,
 
                encoding="UTF-8",
 
                force_defaults=False)
 
        except Exception:
 
            log.error(traceback.format_exc())
 
            h.flash(_('Error occurred during creation of user group %s') \
 
                    % request.POST.get('users_group_name'), category='error')
 

	
 
        return redirect(url('users_groups'))
 

	
 
    @HasPermissionAnyDecorator('hg.admin', 'hg.usergroup.create.true')
 
    def new(self, format='html'):
 
        """GET /user_groups/new: Form to create a new item"""
 
        # url('new_users_group')
 
        return render('admin/user_groups/user_group_add.html')
 

	
 
    @HasUserGroupPermissionAnyDecorator('usergroup.admin')
 
    def update(self, id):
 
        """PUT /user_groups/id: Update an existing item"""
 
        # Forms posted to this method should contain a hidden field:
 
        #    <input type="hidden" name="_method" value="PUT" />
 
        # Or using helpers:
 
        #    h.form(url('users_group', id=ID),
 
        #           method='put')
 
        # url('users_group', id=ID)
 

	
 
        c.user_group = UserGroup.get_or_404(id)
 
        c.active = 'settings'
 
        self.__load_data(id)
 

	
 
        available_members = [safe_unicode(x[0]) for x in c.available_members]
 

	
 
        users_group_form = UserGroupForm(edit=True,
 
                                         old_data=c.user_group.get_dict(),
 
                                         available_members=available_members)()
 

	
 
        try:
 
            form_result = users_group_form.to_python(request.POST)
 
            UserGroupModel().update(c.user_group, form_result)
 
            gr = form_result['users_group_name']
 
            action_logger(self.authuser,
 
                          'admin_updated_users_group:%s' % gr,
 
                          None, self.ip_addr, self.sa)
 
            h.flash(_('Updated user group %s') % gr, category='success')
 
            Session().commit()
 
        except formencode.Invalid as errors:
 
            ug_model = UserGroupModel()
 
            defaults = errors.value
 
            e = errors.error_dict or {}
 
            defaults.update({
 
                'create_repo_perm': ug_model.has_perm(id,
 
                                                      'hg.create.repository'),
 
                'fork_repo_perm': ug_model.has_perm(id,
 
                                                    'hg.fork.repository'),
 
                '_method': 'put'
 
            })
 

	
 
            return htmlfill.render(
 
                render('admin/user_groups/user_group_edit.html'),
 
                defaults=defaults,
 
                errors=e,
 
                prefix_error=False,
 
                encoding="UTF-8",
 
                force_defaults=False)
 
        except Exception:
 
            log.error(traceback.format_exc())
 
            h.flash(_('Error occurred during update of user group %s') \
 
                    % request.POST.get('users_group_name'), category='error')
 

	
 
        return redirect(url('edit_users_group', id=id))
 

	
 
    @HasUserGroupPermissionAnyDecorator('usergroup.admin')
 
    def delete(self, id):
 
        """DELETE /user_groups/id: Delete an existing item"""
 
        # Forms posted to this method should contain a hidden field:
 
        #    <input type="hidden" name="_method" value="DELETE" />
 
        # Or using helpers:
 
        #    h.form(url('users_group', id=ID),
 
        #           method='delete')
 
        # url('users_group', id=ID)
 
        usr_gr = UserGroup.get_or_404(id)
 
        try:
 
            UserGroupModel().delete(usr_gr)
 
            Session().commit()
 
            h.flash(_('Successfully deleted user group'), category='success')
 
        except UserGroupsAssignedException as e:
 
            h.flash(e, category='error')
 
        except Exception:
 
            log.error(traceback.format_exc())
 
            h.flash(_('An error occurred during deletion of user group'),
 
                    category='error')
 
        return redirect(url('users_groups'))
 

	
 
    def show(self, id, format='html'):
 
        """GET /user_groups/id: Show a specific item"""
 
        # url('users_group', id=ID)
 

	
 
    @HasUserGroupPermissionAnyDecorator('usergroup.admin')
 
    def edit(self, id, format='html'):
 
        """GET /user_groups/id/edit: Form to edit an existing item"""
 
        # url('edit_users_group', id=ID)
 

	
 
        c.user_group = UserGroup.get_or_404(id)
 
        c.active = 'settings'
 
        self.__load_data(id)
 

	
 
        defaults = self.__load_defaults(id)
 

	
 
        return htmlfill.render(
 
            render('admin/user_groups/user_group_edit.html'),
 
            defaults=defaults,
 
            encoding="UTF-8",
 
            force_defaults=False
 
        )
 

	
 
    @HasUserGroupPermissionAnyDecorator('usergroup.admin')
 
    def edit_perms(self, id):
 
        c.user_group = UserGroup.get_or_404(id)
 
        c.active = 'perms'
 

	
 
        repo_model = RepoModel()
 
        c.users_array = repo_model.get_users_js()
 
        c.user_groups_array = repo_model.get_user_groups_js()
 

	
 
        defaults = {}
 
        # fill user group users
 
        for p in c.user_group.user_user_group_to_perm:
 
            defaults.update({'u_perm_%s' % p.user.username:
 
                             p.permission.permission_name})
 

	
 
        for p in c.user_group.user_group_user_group_to_perm:
 
            defaults.update({'g_perm_%s' % p.user_group.users_group_name:
 
                             p.permission.permission_name})
 

	
 
        return htmlfill.render(
 
            render('admin/user_groups/user_group_edit.html'),
 
            defaults=defaults,
 
            encoding="UTF-8",
 
            force_defaults=False
 
        )
 

	
 
    @HasUserGroupPermissionAnyDecorator('usergroup.admin')
 
    def update_perms(self, id):
 
        """
 
        grant permission for given usergroup
 

	
 
        :param id:
 
        """
 
        user_group = UserGroup.get_or_404(id)
 
        form = UserGroupPermsForm()().to_python(request.POST)
 

	
 
        # set the permissions !
 
        try:
 
            UserGroupModel()._update_permissions(user_group, form['perms_new'],
 
                                                 form['perms_updates'])
 
        except RepoGroupAssignmentError:
 
            h.flash(_('Target group cannot be the same'), category='error')
 
            return redirect(url('edit_user_group_perms', id=id))
 
        #TODO: implement this
 
        #action_logger(self.authuser, 'admin_changed_repo_permissions',
 
        #              repo_name, self.ip_addr, self.sa)
 
        Session().commit()
 
        h.flash(_('User Group permissions updated'), category='success')
 
        h.flash(_('User group permissions updated'), category='success')
 
        return redirect(url('edit_user_group_perms', id=id))
 

	
 
    @HasUserGroupPermissionAnyDecorator('usergroup.admin')
 
    def delete_perms(self, id):
 
        """
 
        DELETE an existing repository group permission user
 

	
 
        :param group_name:
 
        """
 
        try:
 
            obj_type = request.POST.get('obj_type')
 
            obj_id = None
 
            if obj_type == 'user':
 
                obj_id = safe_int(request.POST.get('user_id'))
 
            elif obj_type == 'user_group':
 
                obj_id = safe_int(request.POST.get('user_group_id'))
 

	
 
            if not c.authuser.is_admin:
 
                if obj_type == 'user' and c.authuser.user_id == obj_id:
 
                    msg = _('Cannot revoke permission for yourself as admin')
 
                    h.flash(msg, category='warning')
 
                    raise Exception('revoke admin permission on self')
 
            if obj_type == 'user':
 
                UserGroupModel().revoke_user_permission(user_group=id,
 
                                                        user=obj_id)
 
            elif obj_type == 'user_group':
 
                UserGroupModel().revoke_user_group_permission(target_user_group=id,
 
                                                              user_group=obj_id)
 
            Session().commit()
 
        except Exception:
 
            log.error(traceback.format_exc())
 
            h.flash(_('An error occurred during revoking of permission'),
 
                    category='error')
 
            raise HTTPInternalServerError()
 

	
 
    @HasUserGroupPermissionAnyDecorator('usergroup.admin')
 
    def edit_default_perms(self, id):
 
        c.user_group = UserGroup.get_or_404(id)
 
        c.active = 'default_perms'
 

	
 
        permissions = {
 
            'repositories': {},
 
            'repositories_groups': {}
 
        }
 
        ugroup_repo_perms = UserGroupRepoToPerm.query()\
 
            .options(joinedload(UserGroupRepoToPerm.permission))\
 
            .options(joinedload(UserGroupRepoToPerm.repository))\
 
            .filter(UserGroupRepoToPerm.users_group_id == id)\
 
            .all()
 

	
 
        for gr in ugroup_repo_perms:
 
            permissions['repositories'][gr.repository.repo_name]  \
 
                = gr.permission.permission_name
 

	
 
        ugroup_group_perms = UserGroupRepoGroupToPerm.query()\
 
            .options(joinedload(UserGroupRepoGroupToPerm.permission))\
 
            .options(joinedload(UserGroupRepoGroupToPerm.group))\
 
            .filter(UserGroupRepoGroupToPerm.users_group_id == id)\
 
            .all()
 

	
 
        for gr in ugroup_group_perms:
 
            permissions['repositories_groups'][gr.group.group_name] \
 
                = gr.permission.permission_name
 
        c.permissions = permissions
 

	
 
        ug_model = UserGroupModel()
 

	
 
        defaults = c.user_group.get_dict()
 
        defaults.update({
 
            'create_repo_perm': ug_model.has_perm(c.user_group,
 
                                                  'hg.create.repository'),
 
            'create_user_group_perm': ug_model.has_perm(c.user_group,
 
                                                        'hg.usergroup.create.true'),
 
            'fork_repo_perm': ug_model.has_perm(c.user_group,
 
                                                'hg.fork.repository'),
 
        })
 

	
 
        return htmlfill.render(
 
            render('admin/user_groups/user_group_edit.html'),
 
            defaults=defaults,
 
            encoding="UTF-8",
 
            force_defaults=False
 
        )
 

	
 
    @HasUserGroupPermissionAnyDecorator('usergroup.admin')
 
    def update_default_perms(self, id):
 
        """PUT /users_perm/id: Update an existing item"""
 
        # url('users_group_perm', id=ID, method='put')
 

	
 
        user_group = UserGroup.get_or_404(id)
 

	
 
        try:
 
            form = CustomDefaultPermissionsForm()()
 
            form_result = form.to_python(request.POST)
 

	
 
            inherit_perms = form_result['inherit_default_permissions']
 
            user_group.inherit_default_permissions = inherit_perms
 
            Session().add(user_group)
 
            usergroup_model = UserGroupModel()
 

	
 
            defs = UserGroupToPerm.query()\
 
                .filter(UserGroupToPerm.users_group == user_group)\
 
                .all()
 
            for ug in defs:
 
                Session().delete(ug)
 

	
 
            if form_result['create_repo_perm']:
 
                usergroup_model.grant_perm(id, 'hg.create.repository')
 
            else:
 
                usergroup_model.grant_perm(id, 'hg.create.none')
 
            if form_result['create_user_group_perm']:
 
                usergroup_model.grant_perm(id, 'hg.usergroup.create.true')
 
            else:
 
                usergroup_model.grant_perm(id, 'hg.usergroup.create.false')
 
            if form_result['fork_repo_perm']:
 
                usergroup_model.grant_perm(id, 'hg.fork.repository')
 
            else:
 
                usergroup_model.grant_perm(id, 'hg.fork.none')
 

	
 
            h.flash(_("Updated permissions"), category='success')
 
            Session().commit()
 
        except Exception:
 
            log.error(traceback.format_exc())
 
            h.flash(_('An error occurred during permissions saving'),
 
                    category='error')
 

	
 
        return redirect(url('edit_user_group_default_perms', id=id))
 

	
 
    @HasUserGroupPermissionAnyDecorator('usergroup.admin')
 
    def edit_advanced(self, id):
 
        c.user_group = UserGroup.get_or_404(id)
 
        c.active = 'advanced'
 
        c.group_members_obj = sorted((x.user for x in c.user_group.members),
 
                                     key=lambda u: u.username.lower())
 
        return render('admin/user_groups/user_group_edit.html')
 

	
 

	
 
    @HasUserGroupPermissionAnyDecorator('usergroup.admin')
 
    def edit_members(self, id):
 
        c.user_group = UserGroup.get_or_404(id)
 
        c.active = 'members'
 
        c.group_members_obj = sorted((x.user for x in c.user_group.members),
 
                                     key=lambda u: u.username.lower())
 

	
 
        c.group_members = [(x.user_id, x.username) for x in c.group_members_obj]
 
        return render('admin/user_groups/user_group_edit.html')
kallithea/i18n/be/LC_MESSAGES/kallithea.po
Show inline comments
 
@@ -336,1011 +336,1011 @@ msgstr "Памылка пры стварэнні pull-запыту: %s"
 
msgid "No description"
 
msgstr "Няма апісання"
 

	
 
#: kallithea/controllers/pullrequests.py:363
 
msgid "Successfully opened new pull request"
 
msgstr "Pull-запыт створаны паспяхова"
 

	
 
#: kallithea/controllers/pullrequests.py:366
 
#: kallithea/controllers/pullrequests.py:450
 
msgid "Error occurred while creating pull request"
 
msgstr "Адбылася памылка пры стварэнні pull-запыту"
 

	
 
#: kallithea/controllers/pullrequests.py:398
 
msgid "Missing changesets since the previous pull request:"
 
msgstr "Адсутныя рэвізіі адносна папярэдняга pull-запыту:"
 

	
 
#: kallithea/controllers/pullrequests.py:405
 
#, python-format
 
msgid "New changesets on %s %s since the previous pull request:"
 
msgstr "Новыя рэвізіі на %s %s адносна папярэдняга pull-запыту:"
 

	
 
#: kallithea/controllers/pullrequests.py:412
 
msgid "Ancestor didn't change - show diff since previous version:"
 
msgstr ""
 

	
 
#: kallithea/controllers/pullrequests.py:419
 
#, python-format
 
msgid ""
 
"This pull request is based on another %s revision and there is no simple "
 
"diff."
 
msgstr "Гэты pull-запыт заснаваны на іншай рэвізіі %s, просты diff немагчымы."
 

	
 
#: kallithea/controllers/pullrequests.py:421
 
#, python-format
 
msgid "No changes found on %s %s since previous version."
 
msgstr "Няма змен на %s %s адносна папярэдняй версіі."
 

	
 
#: kallithea/controllers/pullrequests.py:456
 
#, python-format
 
msgid "Closed, replaced by %s ."
 
msgstr "Зачынены, замешчаны %s."
 

	
 
#: kallithea/controllers/pullrequests.py:464
 
msgid "Pull request update created"
 
msgstr "Абнаўленне для pull-запыту створана"
 

	
 
#: kallithea/controllers/pullrequests.py:503
 
msgid "Pull request updated"
 
msgstr "Pull-запыт абноўлены"
 

	
 
#: kallithea/controllers/pullrequests.py:518
 
msgid "Successfully deleted pull request"
 
msgstr "Pull-запыт паспяхова выдалены"
 

	
 
#: kallithea/controllers/pullrequests.py:577
 
#, python-format
 
msgid "This pull request has already been merged to %s."
 
msgstr "Гэты pull-запыт ужо прыняты на галінку %s."
 

	
 
#: kallithea/controllers/pullrequests.py:579
 
msgid "This pull request has been closed and can not be updated."
 
msgstr "Гэты pull-запыт быў зачынены і не можа быць абноўлены."
 

	
 
#: kallithea/controllers/pullrequests.py:597
 
#, python-format
 
msgid "This pull request can be updated with changes on %s:"
 
msgstr "Гэты pull-запыт можа быць абноўлены з %s:"
 

	
 
#: kallithea/controllers/pullrequests.py:600
 
msgid "No changesets found for updating this pull request."
 
msgstr "Няма змен для абнаўлення гэтага pull-запыту."
 

	
 
#: kallithea/controllers/pullrequests.py:608
 
#, python-format
 
msgid "Note: Branch %s has another head: %s."
 
msgstr "Увага: Галінка %s мае яшчэ адну верхавіну: %s."
 

	
 
#: kallithea/controllers/pullrequests.py:614
 
msgid "Git pull requests don't support updates yet."
 
msgstr "Абнаўленне pull-запытаў git не падтрымліваецца."
 

	
 
#: kallithea/controllers/pullrequests.py:701
 
msgid "Closing."
 
msgstr "Зачынены."
 

	
 
#: kallithea/controllers/search.py:135
 
msgid "Invalid search query. Try quoting it."
 
msgstr "Недапушчальны пошукавы запыт. Паспрабуйце скласці яго ў двукоссі."
 

	
 
#: kallithea/controllers/search.py:140
 
msgid "There is no index to search in. Please run whoosh indexer"
 
msgstr "Індэксы адсутнічаюць. Калі ласка, запусціце індэксатар Whoosh"
 

	
 
#: kallithea/controllers/search.py:144
 
msgid "An error occurred during search operation."
 
msgstr "Адбылася памылка пры выкананні гэтага пошуку."
 

	
 
#: kallithea/controllers/summary.py:199
 
#: kallithea/templates/summary/summary.html:387
 
msgid "No data ready yet"
 
msgstr "Няма дадзеных"
 

	
 
#: kallithea/controllers/summary.py:202
 
#: kallithea/templates/summary/summary.html:101
 
msgid "Statistics are disabled for this repository"
 
msgstr "Статыстычныя дадзеныя адключаны для гэтага рэпазітара"
 

	
 
#: kallithea/controllers/admin/auth_settings.py:125
 
msgid "Auth settings updated successfully"
 
msgstr "Налады аўтарызацыі паспяхова абноўлены"
 

	
 
#: kallithea/controllers/admin/auth_settings.py:136
 
msgid "error occurred during update of auth settings"
 
msgstr "адбылася памылка пры абнаўленні налад аўтарызацыі"
 

	
 
#: kallithea/controllers/admin/defaults.py:97
 
msgid "Default settings updated successfully"
 
msgstr "Стандартныя налады паспяхова абноўлены"
 

	
 
#: kallithea/controllers/admin/defaults.py:112
 
msgid "Error occurred during update of defaults"
 
msgstr "Адбылася памылка пры абнаўленні стандартных налад"
 

	
 
#: kallithea/controllers/admin/gists.py:59
 
#: kallithea/controllers/admin/my_account.py:238
 
#: kallithea/controllers/admin/users.py:288
 
msgid "forever"
 
msgstr "назаўжды"
 

	
 
#: kallithea/controllers/admin/gists.py:60
 
#: kallithea/controllers/admin/my_account.py:239
 
#: kallithea/controllers/admin/users.py:289
 
msgid "5 minutes"
 
msgstr "5 хвілін"
 

	
 
#: kallithea/controllers/admin/gists.py:61
 
#: kallithea/controllers/admin/my_account.py:240
 
#: kallithea/controllers/admin/users.py:290
 
msgid "1 hour"
 
msgstr "1 гадзіна"
 

	
 
#: kallithea/controllers/admin/gists.py:62
 
#: kallithea/controllers/admin/my_account.py:241
 
#: kallithea/controllers/admin/users.py:291
 
msgid "1 day"
 
msgstr "1 дзень"
 

	
 
#: kallithea/controllers/admin/gists.py:63
 
#: kallithea/controllers/admin/my_account.py:242
 
#: kallithea/controllers/admin/users.py:292
 
msgid "1 month"
 
msgstr "1 месяц"
 

	
 
#: kallithea/controllers/admin/gists.py:67
 
#: kallithea/controllers/admin/my_account.py:244
 
#: kallithea/controllers/admin/users.py:294
 
msgid "Lifetime"
 
msgstr "Тэрмін"
 

	
 
#: kallithea/controllers/admin/gists.py:146
 
msgid "Error occurred during gist creation"
 
msgstr "Адбылася памылка падчас стварэння gist-запіса"
 

	
 
#: kallithea/controllers/admin/gists.py:184
 
#, python-format
 
msgid "Deleted gist %s"
 
msgstr "Gist-запіс %s выдалены"
 

	
 
#: kallithea/controllers/admin/gists.py:233
 
msgid "unmodified"
 
msgstr "без змен"
 

	
 
#: kallithea/controllers/admin/gists.py:262
 
msgid "Successfully updated gist content"
 
msgstr ""
 

	
 
#: kallithea/controllers/admin/gists.py:267
 
msgid "Successfully updated gist data"
 
msgstr "Дадзеныя gist-запісы абноўлены"
 

	
 
#: kallithea/controllers/admin/gists.py:270
 
#, python-format
 
msgid "Error occurred during update of gist %s"
 
msgstr "Адбылася памылка пры абнаўленні gist-запісы %s"
 

	
 
#: kallithea/controllers/admin/my_account.py:70
 
msgid "You can't edit this user since it's crucial for entire application"
 
msgstr ""
 
"Вы не можаце змяніць дадзеныя гэтага карыстача, паколькі ён важны для працы "
 
"ўсяго прыкладання"
 

	
 
#: kallithea/controllers/admin/my_account.py:128
 
msgid "Your account was updated successfully"
 
msgstr "Ваш уліковы запіс паспяхова абноўлены"
 

	
 
#: kallithea/controllers/admin/my_account.py:143
 
#: kallithea/controllers/admin/users.py:206
 
#, python-format
 
msgid "Error occurred during update of user %s"
 
msgstr "Адбылася памылка пры абнаўленні карыстача %s"
 

	
 
#: kallithea/controllers/admin/my_account.py:162
 
msgid "Successfully updated password"
 
msgstr "Пароль абноўлены"
 

	
 
#: kallithea/controllers/admin/my_account.py:173
 
msgid "Error occurred during update of user password"
 
msgstr "Памылка пры абнаўленні пароля"
 

	
 
#: kallithea/controllers/admin/my_account.py:215
 
#: kallithea/controllers/admin/users.py:431
 
#, python-format
 
msgid "Added email %s to user"
 
msgstr "Карыстачу дададзены e-mail %s"
 

	
 
#: kallithea/controllers/admin/my_account.py:221
 
#: kallithea/controllers/admin/users.py:437
 
msgid "An error occurred during email saving"
 
msgstr "Адбылася памылка пры захаванні e-mail"
 

	
 
#: kallithea/controllers/admin/my_account.py:230
 
#: kallithea/controllers/admin/users.py:448
 
msgid "Removed email from user"
 
msgstr "E-mail карыстача выдалены"
 

	
 
#: kallithea/controllers/admin/my_account.py:254
 
#: kallithea/controllers/admin/users.py:314
 
msgid "API key successfully created"
 
msgstr "API-ключ паспяхова створаны"
 

	
 
#: kallithea/controllers/admin/my_account.py:266
 
#: kallithea/controllers/admin/users.py:330
 
msgid "API key successfully reset"
 
msgstr "API-ключ паспяхова скінуты"
 

	
 
#: kallithea/controllers/admin/my_account.py:270
 
#: kallithea/controllers/admin/users.py:334
 
msgid "API key successfully deleted"
 
msgstr "API-ключ паспяхова выдалены"
 

	
 
#: kallithea/controllers/admin/permissions.py:63
 
#: kallithea/controllers/admin/permissions.py:67
 
#: kallithea/controllers/admin/permissions.py:71
 
msgid "Read"
 
msgstr "Чытанне"
 

	
 
#: kallithea/controllers/admin/permissions.py:64
 
#: kallithea/controllers/admin/permissions.py:68
 
#: kallithea/controllers/admin/permissions.py:72
 
msgid "Write"
 
msgstr "Запіс"
 

	
 
#: kallithea/controllers/admin/permissions.py:65
 
#: kallithea/controllers/admin/permissions.py:69
 
#: kallithea/controllers/admin/permissions.py:73
 
#: kallithea/templates/admin/auth/auth_settings.html:9
 
#: kallithea/templates/admin/defaults/defaults.html:9
 
#: kallithea/templates/admin/permissions/permissions.html:9
 
#: kallithea/templates/admin/repo_groups/repo_group_add.html:9
 
#: kallithea/templates/admin/repo_groups/repo_group_edit.html:9
 
#: kallithea/templates/admin/repo_groups/repo_groups.html:10
 
#: kallithea/templates/admin/repos/repo_add.html:10
 
#: kallithea/templates/admin/repos/repo_add.html:14
 
#: kallithea/templates/admin/repos/repos.html:9
 
#: kallithea/templates/admin/settings/settings.html:9
 
#: kallithea/templates/admin/user_groups/user_group_add.html:8
 
#: kallithea/templates/admin/user_groups/user_group_edit.html:9
 
#: kallithea/templates/admin/user_groups/user_groups.html:10
 
#: kallithea/templates/admin/users/user_add.html:8
 
#: kallithea/templates/admin/users/user_edit.html:9
 
#: kallithea/templates/admin/users/user_edit_profile.html:114
 
#: kallithea/templates/admin/users/users.html:10
 
#: kallithea/templates/admin/users/users.html:55
 
#: kallithea/templates/base/base.html:255
 
#: kallithea/templates/base/base.html:256
 
#: kallithea/templates/base/base.html:262
 
#: kallithea/templates/base/base.html:263
 
msgid "Admin"
 
msgstr "Адміністратар"
 

	
 
#: kallithea/controllers/admin/permissions.py:76
 
#: kallithea/controllers/admin/permissions.py:87
 
#: kallithea/controllers/admin/permissions.py:92
 
#: kallithea/controllers/admin/permissions.py:95
 
#: kallithea/controllers/admin/permissions.py:98
 
#: kallithea/controllers/admin/permissions.py:101
 
msgid "Disabled"
 
msgstr "Адключана"
 

	
 
#: kallithea/controllers/admin/permissions.py:78
 
msgid "Allowed with manual account activation"
 
msgstr "Дазволена, з ручной актывацыяй уліковага запісу"
 

	
 
#: kallithea/controllers/admin/permissions.py:80
 
msgid "Allowed with automatic account activation"
 
msgstr "Дазволена, з аўтаматычнай актывацыяй уліковага запісу"
 

	
 
#: kallithea/controllers/admin/permissions.py:83
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1439
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1485
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1542
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1543
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1564
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1603
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1655
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1682 kallithea/model/db.py:1684
 
msgid "Manual activation of external account"
 
msgstr "Ручная актывацыя вонкавага ўліковага запісу"
 

	
 
#: kallithea/controllers/admin/permissions.py:84
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1440
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1486
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1543
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1544
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1565
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1604
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1656
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1683 kallithea/model/db.py:1685
 
msgid "Automatic activation of external account"
 
msgstr "Аўтаматычная актывацыя вонкавага ўліковага запісу"
 

	
 
#: kallithea/controllers/admin/permissions.py:88
 
#: kallithea/controllers/admin/permissions.py:91
 
#: kallithea/controllers/admin/permissions.py:96
 
#: kallithea/controllers/admin/permissions.py:99
 
#: kallithea/controllers/admin/permissions.py:102
 
msgid "Enabled"
 
msgstr "Уключана"
 

	
 
#: kallithea/controllers/admin/permissions.py:125
 
msgid "Global permissions updated successfully"
 
msgstr "Глабальныя прывілеі паспяхова абноўлены"
 

	
 
#: kallithea/controllers/admin/permissions.py:140
 
msgid "Error occurred during update of permissions"
 
msgstr "Адбылася памылка падчас абнаўлення прывілеяў"
 

	
 
#: kallithea/controllers/admin/repo_groups.py:184
 
#, python-format
 
msgid "Created repository group %s"
 
msgstr "Створана новая група рэпазітароў %s"
 

	
 
#: kallithea/controllers/admin/repo_groups.py:197
 
#, python-format
 
msgid "Error occurred during creation of repository group %s"
 
msgstr "Адбылася памылка пры стварэнні групы рэпазітароў %s"
 

	
 
#: kallithea/controllers/admin/repo_groups.py:255
 
#, python-format
 
msgid "Updated repository group %s"
 
msgstr "Група рэпазітароў %s абноўлена"
 

	
 
#: kallithea/controllers/admin/repo_groups.py:271
 
#, python-format
 
msgid "Error occurred during update of repository group %s"
 
msgstr "Адбылася памылка пры абнаўленні групы рэпазітароў %s"
 

	
 
#: kallithea/controllers/admin/repo_groups.py:289
 
#, python-format
 
msgid "This group contains %s repositories and cannot be deleted"
 
msgstr "Дадзеная група ўтрымоўвае %s рэпазітароў і не можа быць выдалена"
 

	
 
#: kallithea/controllers/admin/repo_groups.py:296
 
#, python-format
 
msgid "This group contains %s subgroups and cannot be deleted"
 
msgstr "Група ўтрымоўвае ў сабе %s падгруп і не можа быць выдалены"
 

	
 
#: kallithea/controllers/admin/repo_groups.py:302
 
#, python-format
 
msgid "Removed repository group %s"
 
msgstr "Група рэпазітароў %s выдалена"
 

	
 
#: kallithea/controllers/admin/repo_groups.py:307
 
#, python-format
 
msgid "Error occurred during deletion of repository group %s"
 
msgstr "Адбылася памылка пры выдаленні групы рэпазітароў %s"
 

	
 
#: kallithea/controllers/admin/repo_groups.py:420
 
#: kallithea/controllers/admin/repo_groups.py:455
 
#: kallithea/controllers/admin/user_groups.py:340
 
msgid "Cannot revoke permission for yourself as admin"
 
msgstr "Адміністратар не можа адклікаць свае прывелеі"
 

	
 
#: kallithea/controllers/admin/repo_groups.py:435
 
msgid "Repository Group permissions updated"
 
msgid "Repository group permissions updated"
 
msgstr "Прывілеі групы рэпазітароў абноўлены"
 

	
 
#: kallithea/controllers/admin/repo_groups.py:472
 
#: kallithea/controllers/admin/repos.py:430
 
#: kallithea/controllers/admin/user_groups.py:352
 
msgid "An error occurred during revoking of permission"
 
msgstr "Адбылася памылка пры водгуку прывелеі"
 

	
 
#: kallithea/controllers/admin/repos.py:163
 
#, python-format
 
msgid "Error creating repository %s"
 
msgstr "Адбылася памылка пры стварэнні рэпазітара %s"
 

	
 
#: kallithea/controllers/admin/repos.py:238
 
#, python-format
 
msgid "Created repository %s from %s"
 
msgstr "Рэпазітар %s створаны з %s"
 

	
 
#: kallithea/controllers/admin/repos.py:247
 
#, python-format
 
msgid "Forked repository %s as %s"
 
msgstr "Зроблены форк(копія) рэпазітара %s на %s"
 

	
 
#: kallithea/controllers/admin/repos.py:250
 
#, python-format
 
msgid "Created repository %s"
 
msgstr "Рэпазітар %s створаны"
 

	
 
#: kallithea/controllers/admin/repos.py:290
 
#, python-format
 
msgid "Repository %s updated successfully"
 
msgstr "Рэпазітар %s паспяхова абноўлены"
 

	
 
#: kallithea/controllers/admin/repos.py:309
 
#, python-format
 
msgid "Error occurred during update of repository %s"
 
msgstr "Адбылася памылка падчас абнаўлення рэпазітара %s"
 

	
 
#: kallithea/controllers/admin/repos.py:336
 
#, python-format
 
msgid "Detached %s forks"
 
msgstr "Форки %s адлучаны"
 

	
 
#: kallithea/controllers/admin/repos.py:339
 
#, python-format
 
msgid "Deleted %s forks"
 
msgstr "Выдалены форки рэпазітара %s"
 

	
 
#: kallithea/controllers/admin/repos.py:344
 
#, python-format
 
msgid "Deleted repository %s"
 
msgstr "Рэпазітар %s выдалены"
 

	
 
#: kallithea/controllers/admin/repos.py:347
 
#, python-format
 
msgid "Cannot delete %s it still contains attached forks"
 
msgstr "Немагчыма выдаліць %s, ён усё-яшчэ ўтрымоўвае форки"
 

	
 
#: kallithea/controllers/admin/repos.py:352
 
#, python-format
 
msgid "An error occurred during deletion of %s"
 
msgstr "Адбылася памылка падчас выдалення %s"
 

	
 
#: kallithea/controllers/admin/repos.py:406
 
msgid "Repository permissions updated"
 
msgstr "Прывілеі рэпазітара абноўлены"
 

	
 
#: kallithea/controllers/admin/repos.py:462
 
msgid "An error occurred during creation of field"
 
msgstr "Адбылася памылка пры стварэнні поля"
 

	
 
#: kallithea/controllers/admin/repos.py:476
 
msgid "An error occurred during removal of field"
 
msgstr "Адбылася памылка пры выдаленні поля"
 

	
 
#: kallithea/controllers/admin/repos.py:492
 
msgid "-- Not a fork --"
 
msgstr "-- Не форк --"
 

	
 
#: kallithea/controllers/admin/repos.py:526
 
msgid "Updated repository visibility in public journal"
 
msgstr "Бачнасць рэпазітара ў публічным часопісе абноўлена"
 

	
 
#: kallithea/controllers/admin/repos.py:530
 
msgid "An error occurred during setting this repository in public journal"
 
msgstr "Адбылася памылка пры ўсталёўцы рэпазітара ў агульнадаступны часопіс"
 

	
 
#: kallithea/controllers/admin/repos.py:535 kallithea/model/validators.py:340
 
msgid "Token mismatch"
 
msgstr "Несупадзенне токенаў"
 

	
 
#: kallithea/controllers/admin/repos.py:550
 
msgid "Nothing"
 
msgstr "Нічога"
 

	
 
#: kallithea/controllers/admin/repos.py:552
 
#, python-format
 
msgid "Marked repository %s as fork of %s"
 
msgstr "Рэпазітар %s адзначаны як форк %s"
 

	
 
#: kallithea/controllers/admin/repos.py:559
 
msgid "An error occurred during this operation"
 
msgstr "Адбылася памылка пры выкананні аперацыі"
 

	
 
#: kallithea/controllers/admin/repos.py:575
 
msgid "Locked repository"
 
msgstr "Зачынены рэпазітар"
 

	
 
#: kallithea/controllers/admin/repos.py:578
 
msgid "Unlocked repository"
 
msgstr "Адкрыты рэпазітар"
 

	
 
#: kallithea/controllers/admin/repos.py:581
 
#: kallithea/controllers/admin/repos.py:608
 
msgid "An error occurred during unlocking"
 
msgstr "Адбылася памылка падчас разблакавання"
 

	
 
#: kallithea/controllers/admin/repos.py:599
 
msgid "Unlocked"
 
msgstr "Разблакавана"
 

	
 
#: kallithea/controllers/admin/repos.py:602
 
msgid "Locked"
 
msgstr "Заблакавана"
 

	
 
#: kallithea/controllers/admin/repos.py:604
 
#, python-format
 
msgid "Repository has been %s"
 
msgstr "Рэпазітар %s"
 

	
 
#: kallithea/controllers/admin/repos.py:622
 
msgid "Cache invalidation successful"
 
msgstr "Кэш скінуты"
 

	
 
#: kallithea/controllers/admin/repos.py:626
 
msgid "An error occurred during cache invalidation"
 
msgstr "Адбылася памылка пры ачыстцы кэша"
 

	
 
#: kallithea/controllers/admin/repos.py:641
 
msgid "Pulled from remote location"
 
msgstr "Занесены змены з выдаленага рэпазітара"
 

	
 
#: kallithea/controllers/admin/repos.py:644
 
msgid "An error occurred during pull from remote location"
 
msgstr "Адбылася памылка пры занясенні змен з выдаленага рэпазітара"
 

	
 
#: kallithea/controllers/admin/repos.py:677
 
msgid "An error occurred during deletion of repository stats"
 
msgstr "Адбылася памылка пры выдаленні статыстыкі рэпазітара"
 

	
 
#: kallithea/controllers/admin/settings.py:170
 
msgid "Updated VCS settings"
 
msgstr "Абноўлены налады VCS"
 

	
 
#: kallithea/controllers/admin/settings.py:174
 
msgid ""
 
"Unable to activate hgsubversion support. The \"hgsubversion\" library is "
 
"missing"
 
msgstr ""
 
"Немагчыма ўключыць падтрымку hgsubversion. Бібліятэка «hgsubversion» "
 
"адсутнічае"
 

	
 
#: kallithea/controllers/admin/settings.py:180
 
#: kallithea/controllers/admin/settings.py:274
 
msgid "Error occurred while updating application settings"
 
msgstr "Адбылася памылка пры абнаўленні налад прыкладання"
 

	
 
#: kallithea/controllers/admin/settings.py:213
 
#, python-format
 
msgid "Repositories successfully rescanned. Added: %s. Removed: %s."
 
msgstr "Рэпазітары паспяхова перасканіраваны, дададзена: %s, выдалена: %s."
 

	
 
#: kallithea/controllers/admin/settings.py:270
 
msgid "Updated application settings"
 
msgstr "Абноўленыя параметры налады прыкладання"
 

	
 
#: kallithea/controllers/admin/settings.py:327
 
msgid "Updated visualisation settings"
 
msgstr "Налады візуалізацыі абноўленыя"
 

	
 
#: kallithea/controllers/admin/settings.py:332
 
msgid "Error occurred during updating visualisation settings"
 
msgstr "Адбылася памылка пры абнаўленні налад візуалізацыі"
 

	
 
#: kallithea/controllers/admin/settings.py:358
 
msgid "Please enter email address"
 
msgstr "Калі ласка, увядзіце email-адрас"
 

	
 
#: kallithea/controllers/admin/settings.py:373
 
msgid "Send email task created"
 
msgstr "Задача адпраўкі e-mail створаная"
 

	
 
#: kallithea/controllers/admin/settings.py:404
 
msgid "Added new hook"
 
msgstr "Дададзены новы хук"
 

	
 
#: kallithea/controllers/admin/settings.py:418
 
msgid "Updated hooks"
 
msgstr "Абноўленыя хукі"
 

	
 
#: kallithea/controllers/admin/settings.py:422
 
msgid "Error occurred during hook creation"
 
msgstr "адбылася памылка пры стварэнні хука"
 

	
 
#: kallithea/controllers/admin/settings.py:448
 
msgid "Whoosh reindex task scheduled"
 
msgstr "Запланавана пераіндэксаванне базы Whoosh"
 

	
 
#: kallithea/controllers/admin/user_groups.py:150
 
#, python-format
 
msgid "Created user group %s"
 
msgstr "Створана група карыстачоў %s"
 

	
 
#: kallithea/controllers/admin/user_groups.py:163
 
#, python-format
 
msgid "Error occurred during creation of user group %s"
 
msgstr "Адбылася памылка пры стварэнні групы карыстачоў %s"
 

	
 
#: kallithea/controllers/admin/user_groups.py:201
 
#, python-format
 
msgid "Updated user group %s"
 
msgstr "Група карыстачоў %s абноўлена"
 

	
 
#: kallithea/controllers/admin/user_groups.py:224
 
#, python-format
 
msgid "Error occurred during update of user group %s"
 
msgstr "Адбылася памылка пры абнаўленні групы карыстачоў %s"
 

	
 
#: kallithea/controllers/admin/user_groups.py:242
 
msgid "Successfully deleted user group"
 
msgstr "Група карыстачоў паспяхова выдалена"
 

	
 
#: kallithea/controllers/admin/user_groups.py:247
 
msgid "An error occurred during deletion of user group"
 
msgstr "Адбылася памылка пры выдаленні групы карыстачоў"
 

	
 
#: kallithea/controllers/admin/user_groups.py:314
 
msgid "Target group cannot be the same"
 
msgstr "Мэтавая група не можа быць такі ж"
 

	
 
#: kallithea/controllers/admin/user_groups.py:320
 
msgid "User Group permissions updated"
 
msgid "User group permissions updated"
 
msgstr "Прывілеі групы карыстачоў абноўлены"
 

	
 
#: kallithea/controllers/admin/user_groups.py:440
 
#: kallithea/controllers/admin/users.py:396
 
msgid "Updated permissions"
 
msgstr "Абноўлены прывілеі"
 

	
 
#: kallithea/controllers/admin/user_groups.py:444
 
#: kallithea/controllers/admin/users.py:400
 
msgid "An error occurred during permissions saving"
 
msgstr "Адбылася памылка пры захаванні прывілеяў"
 

	
 
#: kallithea/controllers/admin/users.py:132
 
#, python-format
 
msgid "Created user %s"
 
msgstr "Карыстач %s створаны"
 

	
 
#: kallithea/controllers/admin/users.py:147
 
#, python-format
 
msgid "Error occurred during creation of user %s"
 
msgstr "Адбылася памылка пры стварэнні карыстача %s"
 

	
 
#: kallithea/controllers/admin/users.py:186
 
msgid "User updated successfully"
 
msgstr "Карыстач паспяхова абноўлены"
 

	
 
#: kallithea/controllers/admin/users.py:222
 
msgid "Successfully deleted user"
 
msgstr "Карыстач паспяхова выдалены"
 

	
 
#: kallithea/controllers/admin/users.py:227
 
msgid "An error occurred during deletion of user"
 
msgstr "Адбылася памылка пры выдаленні карыстача"
 

	
 
#: kallithea/controllers/admin/users.py:241
 
#: kallithea/controllers/admin/users.py:259
 
#: kallithea/controllers/admin/users.py:282
 
#: kallithea/controllers/admin/users.py:307
 
#: kallithea/controllers/admin/users.py:320
 
#: kallithea/controllers/admin/users.py:344
 
#: kallithea/controllers/admin/users.py:407
 
#: kallithea/controllers/admin/users.py:454
 
msgid "You can't edit this user"
 
msgstr "Вы не можаце рэдагаваць дадзенага карыстача"
 

	
 
#: kallithea/controllers/admin/users.py:482
 
#, python-format
 
msgid "Added IP address %s to user whitelist"
 
msgstr "Дададзены IP %s у белы спіс карыстача"
 

	
 
#: kallithea/controllers/admin/users.py:488
 
msgid "An error occurred while adding IP address"
 
msgstr "Адбылася памылка пры захаванні IP"
 

	
 
#: kallithea/controllers/admin/users.py:502
 
msgid "Removed IP address from user whitelist"
 
msgstr "Выдалены IP %s з белага спісу карыстача"
 

	
 
#: kallithea/lib/auth.py:745
 
#, python-format
 
msgid "IP %s not allowed"
 
msgstr "IP %s заблакаваны"
 

	
 
#: kallithea/lib/auth.py:806
 
msgid "You need to be a registered user to perform this action"
 
msgstr "Вы павінны быць зарэгістраваным карыстачом, каб выканаць гэта дзеянне"
 

	
 
#: kallithea/lib/auth.py:843
 
msgid "You need to be signed in to view this page"
 
msgstr "Старонка даступная толькі аўтарызаваным карыстачам"
 

	
 
#: kallithea/lib/base.py:427
 
msgid "Repository not found in the filesystem"
 
msgstr "Рэпазітар не знойдзены на файлавай сістэме"
 

	
 
#: kallithea/lib/base.py:453 kallithea/lib/helpers.py:643
 
msgid "Changeset not found"
 
msgstr "Набор змен не знойдзены"
 

	
 
#: kallithea/lib/diffs.py:66
 
msgid "Binary file"
 
msgstr "Двайковы файл"
 

	
 
#: kallithea/lib/diffs.py:82
 
msgid ""
 
"Changeset was too big and was cut off, use diff menu to display this diff"
 
msgstr ""
 
"Набор змены апынуўся занадта вялікімі і быў падрэзаны, выкарыстоўвайце меню "
 
"параўнання для паказу выніку параўнання"
 

	
 
#: kallithea/lib/diffs.py:92
 
msgid "No changes detected"
 
msgstr "Змен не выяўлена"
 

	
 
#: kallithea/lib/helpers.py:627
 
#, python-format
 
msgid "Deleted branch: %s"
 
msgstr "Выдалена галінка: %s"
 

	
 
#: kallithea/lib/helpers.py:630
 
#, python-format
 
msgid "Created tag: %s"
 
msgstr "Створаны тэг: %s"
 

	
 
#: kallithea/lib/helpers.py:693
 
#, python-format
 
msgid "Show all combined changesets %s->%s"
 
msgstr "Паказаць адрозненні разам %s->%s"
 

	
 
#: kallithea/lib/helpers.py:699
 
msgid "compare view"
 
msgstr "параўнанне"
 

	
 
#: kallithea/lib/helpers.py:718
 
msgid "and"
 
msgstr "і"
 

	
 
#: kallithea/lib/helpers.py:719
 
#, python-format
 
msgid "%s more"
 
msgstr "на %s больш"
 

	
 
#: kallithea/lib/helpers.py:720
 
#: kallithea/templates/changelog/changelog.html:44
 
msgid "revisions"
 
msgstr "версіі"
 

	
 
#: kallithea/lib/helpers.py:744
 
#, python-format
 
msgid "fork name %s"
 
msgstr "імя форка %s"
 

	
 
#: kallithea/lib/helpers.py:761
 
#, python-format
 
msgid "Pull request #%s"
 
msgstr "Pull-запыт #%s"
 

	
 
#: kallithea/lib/helpers.py:771
 
msgid "[deleted] repository"
 
msgstr "[выдалены] рэпазітар"
 

	
 
#: kallithea/lib/helpers.py:773 kallithea/lib/helpers.py:785
 
msgid "[created] repository"
 
msgstr "[створаны] рэпазітар"
 

	
 
#: kallithea/lib/helpers.py:775
 
msgid "[created] repository as fork"
 
msgstr "[створаны] рэпазітар як форк"
 

	
 
#: kallithea/lib/helpers.py:777 kallithea/lib/helpers.py:787
 
msgid "[forked] repository"
 
msgstr "[форкнуты] рэпазітар"
 

	
 
#: kallithea/lib/helpers.py:779 kallithea/lib/helpers.py:789
 
msgid "[updated] repository"
 
msgstr "[абноўлены] рэпазітар"
 

	
 
#: kallithea/lib/helpers.py:781
 
msgid "[downloaded] archive from repository"
 
msgstr "[загружаны] архіў з рэпазітара"
 

	
 
#: kallithea/lib/helpers.py:783
 
msgid "[delete] repository"
 
msgstr "[выдалены] рэпазітар"
 

	
 
#: kallithea/lib/helpers.py:791
 
msgid "[created] user"
 
msgstr "[створаны] карыстач"
 

	
 
#: kallithea/lib/helpers.py:793
 
msgid "[updated] user"
 
msgstr "[абноўлены] карыстач"
 

	
 
#: kallithea/lib/helpers.py:795
 
msgid "[created] user group"
 
msgstr "[створана] група карыстачоў"
 

	
 
#: kallithea/lib/helpers.py:797
 
msgid "[updated] user group"
 
msgstr "[абноўлена] група карыстачоў"
 

	
 
#: kallithea/lib/helpers.py:799
 
msgid "[commented] on revision in repository"
 
msgstr "[каментар] да рэвізіі ў рэпазітары"
 

	
 
#: kallithea/lib/helpers.py:801
 
msgid "[commented] on pull request for"
 
msgstr "[пракаменціравана] у запыце на занясенне змен для"
 

	
 
#: kallithea/lib/helpers.py:803
 
msgid "[closed] pull request for"
 
msgstr "[зачынены] Pull-запыт для"
 

	
 
#: kallithea/lib/helpers.py:805
 
msgid "[pushed] into"
 
msgstr "[адпраўлена] у"
 

	
 
#: kallithea/lib/helpers.py:807
 
msgid "[committed via Kallithea] into repository"
 
msgstr "[занесены змены з дапамогай Kallithea] у рэпазітары"
 

	
 
#: kallithea/lib/helpers.py:809
 
msgid "[pulled from remote] into repository"
 
msgstr "[занесены змены з выдаленага рэпазітара] у рэпазітар"
 

	
 
#: kallithea/lib/helpers.py:811
 
msgid "[pulled] from"
 
msgstr "[занесены змены] з"
 

	
 
#: kallithea/lib/helpers.py:813
 
msgid "[started following] repository"
 
msgstr "[дададзены ў назіранні] рэпазітар"
 

	
 
#: kallithea/lib/helpers.py:815
 
msgid "[stopped following] repository"
 
msgstr "[выдалены з назірання] рэпазітар"
 

	
 
#: kallithea/lib/helpers.py:1144
 
#, python-format
 
msgid " and %s more"
 
msgstr " і на %s больш"
 

	
 
#: kallithea/lib/helpers.py:1148
 
msgid "No Files"
 
msgstr "Файлаў няма"
 

	
 
#: kallithea/lib/helpers.py:1214
 
msgid "new file"
 
msgstr "новы файл"
 

	
 
#: kallithea/lib/helpers.py:1217
 
msgid "mod"
 
msgstr "зменены"
 

	
 
#: kallithea/lib/helpers.py:1220
 
msgid "del"
 
msgstr "выдалены"
 

	
 
#: kallithea/lib/helpers.py:1223
 
msgid "rename"
 
msgstr "пераназваны"
 

	
 
#: kallithea/lib/helpers.py:1228
 
msgid "chmod"
 
msgstr "chmod"
 

	
 
#: kallithea/lib/helpers.py:1460
 
#, python-format
 
msgid ""
 
"%s repository is not mapped to db perhaps it was created or renamed from the "
 
"filesystem please run the application again in order to rescan repositories"
 
msgstr ""
 
"Рэпазітар %s адсутнічае ў базе дадзеных; магчыма, ён быў створаны ці "
 
"пераназваны з файлавай сістэмы. Калі ласка, перазапусціце прыкладанне для "
 
"сканавання рэпазітароў"
 

	
 
#: kallithea/lib/utils2.py:425
 
#, python-format
 
msgid "%d year"
 
msgid_plural "%d years"
 
msgstr[0] "%d год"
 
msgstr[1] "%d гадоў"
 
msgstr[2] "%d гады"
 

	
 
#: kallithea/lib/utils2.py:426
 
#, python-format
 
msgid "%d month"
 
msgid_plural "%d months"
 
msgstr[0] "%d месяц"
 
msgstr[1] "%d месяца"
 
msgstr[2] "%d месяцаў"
 

	
 
#: kallithea/lib/utils2.py:427
 
#, python-format
 
msgid "%d day"
 
msgid_plural "%d days"
 
msgstr[0] "%d дзень"
 
msgstr[1] "%d дня"
 
msgstr[2] "%d дзён"
 

	
 
#: kallithea/lib/utils2.py:428
 
#, python-format
 
msgid "%d hour"
 
msgid_plural "%d hours"
 
msgstr[0] "%d гадзіна"
 
msgstr[1] "%d гадзін"
 
msgstr[2] "%d гадзіны"
 

	
 
#: kallithea/lib/utils2.py:429
 
#, python-format
 
msgid "%d minute"
 
msgid_plural "%d minutes"
 
msgstr[0] "%d хвіліна"
 
msgstr[1] "%d хвіліны"
 
msgstr[2] "%d хвілін"
 

	
 
#: kallithea/lib/utils2.py:430
 
#, python-format
 
msgid "%d second"
 
msgid_plural "%d seconds"
 
msgstr[0] "%d секунды"
 
msgstr[1] "%d секунды"
 
msgstr[2] "%d секунды"
 

	
 
#: kallithea/lib/utils2.py:446
 
#, python-format
 
msgid "in %s"
 
msgstr "у %s"
 

	
 
#: kallithea/lib/utils2.py:448
 
#, python-format
 
msgid "%s ago"
 
msgstr "%s назад"
 

	
 
#: kallithea/lib/utils2.py:450
 
#, python-format
 
msgid "in %s and %s"
 
msgstr "у %s і %s"
 

	
 
#: kallithea/lib/utils2.py:453
 
#, python-format
 
msgid "%s and %s ago"
 
msgstr "%s і %s назад"
 

	
 
#: kallithea/lib/utils2.py:456
 
msgid "just now"
 
msgstr "прама цяпер"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_4_0.py:1163
 
#: kallithea/lib/dbmigrate/schema/db_1_5_0.py:1182
 
#: kallithea/lib/dbmigrate/schema/db_1_5_2.py:1303
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1388
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1408
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1454
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1511
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1512
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1533
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1572
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1622
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1649 kallithea/model/db.py:1651
 
msgid "Repository no access"
 
msgstr "Рэпазітар - няма доступу"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_4_0.py:1164
 
#: kallithea/lib/dbmigrate/schema/db_1_5_0.py:1183
 
#: kallithea/lib/dbmigrate/schema/db_1_5_2.py:1304
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1389
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1409
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1455
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1512
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1513
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1534
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1573
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1623
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1650 kallithea/model/db.py:1652
 
msgid "Repository read access"
 
msgstr "Рэпазітар - доступ на чытанне"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_4_0.py:1165
 
#: kallithea/lib/dbmigrate/schema/db_1_5_0.py:1184
 
#: kallithea/lib/dbmigrate/schema/db_1_5_2.py:1305
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1390
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1410
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1456
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1513
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1514
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1535
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1574
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1624
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1651 kallithea/model/db.py:1653
 
msgid "Repository write access"
 
msgstr "Рэпазітар - доступ на запіс"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_4_0.py:1166
 
#: kallithea/lib/dbmigrate/schema/db_1_5_0.py:1185
 
#: kallithea/lib/dbmigrate/schema/db_1_5_2.py:1306
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1391
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1411
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1457
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1514
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1515
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1536
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1575
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1625
 
@@ -1444,769 +1444,769 @@ msgstr "Магчымасць ствараць форк рэпазітара адключана"
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1597
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1649
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1676 kallithea/model/db.py:1678
 
msgid "Repository forking enabled"
 
msgstr "Магчымасць ствараць форк рэпазітара ўключана"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_4_0.py:1178
 
#: kallithea/lib/dbmigrate/schema/db_1_5_0.py:1197
 
#: kallithea/lib/dbmigrate/schema/db_1_5_2.py:1318
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1403
 
msgid "Register disabled"
 
msgstr "Рэгістрацыя адключана"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_4_0.py:1179
 
#: kallithea/lib/dbmigrate/schema/db_1_5_0.py:1198
 
#: kallithea/lib/dbmigrate/schema/db_1_5_2.py:1319
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1404
 
msgid "Register new user with Kallithea with manual activation"
 
msgstr "Рэгістрацыя новага карыстача ў Kallithea з ручной актывацыяй"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_4_0.py:1182
 
#: kallithea/lib/dbmigrate/schema/db_1_5_0.py:1201
 
#: kallithea/lib/dbmigrate/schema/db_1_5_2.py:1322
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1407
 
msgid "Register new user with Kallithea with auto activation"
 
msgstr "Рэгістрацыя новага карыстача ў Kallithea з аўтаматычнай актывацыяй"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_4_0.py:1623
 
#: kallithea/lib/dbmigrate/schema/db_1_5_0.py:1650
 
#: kallithea/lib/dbmigrate/schema/db_1_5_2.py:1763
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1838
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1934
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1980
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:2040
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:2041
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:2062
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:2101
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:2154
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:2200 kallithea/model/db.py:2202
 
msgid "Not Reviewed"
 
msgstr "Не прагледжана"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_4_0.py:1624
 
#: kallithea/lib/dbmigrate/schema/db_1_5_0.py:1651
 
#: kallithea/lib/dbmigrate/schema/db_1_5_2.py:1764
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1839
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1935
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1981
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:2041
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:2042
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:2063
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:2102
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:2155
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:2201 kallithea/model/db.py:2203
 
msgid "Approved"
 
msgstr "Ухвалена"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_4_0.py:1625
 
#: kallithea/lib/dbmigrate/schema/db_1_5_0.py:1652
 
#: kallithea/lib/dbmigrate/schema/db_1_5_2.py:1765
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1840
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1936
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1982
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:2042
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:2043
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:2064
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:2103
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:2156
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:2202 kallithea/model/db.py:2204
 
msgid "Rejected"
 
msgstr "Адхілена"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_4_0.py:1626
 
#: kallithea/lib/dbmigrate/schema/db_1_5_0.py:1653
 
#: kallithea/lib/dbmigrate/schema/db_1_5_2.py:1766
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1841
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1937
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1983
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:2043
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:2044
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:2065
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:2104
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:2157
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:2203 kallithea/model/db.py:2205
 
msgid "Under Review"
 
msgstr "На разглядзе"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1252
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1270
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1300
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1357
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1358
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1379
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1418
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1471
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1498 kallithea/model/db.py:1500
 
msgid "top level"
 
msgstr "верхні ўзровень"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1393
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1413
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1459
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1516
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1517
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1538
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1577
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1627
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1654 kallithea/model/db.py:1656
 
msgid "Repository group no access"
 
msgstr "Група Рэпазітароў - няма доступу"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1394
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1414
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1460
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1517
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1518
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1539
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1578
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1628
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1655 kallithea/model/db.py:1657
 
msgid "Repository group read access"
 
msgstr "Група рэпазітароў - доступ на чытанне"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1395
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1415
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1461
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1518
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1519
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1540
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1579
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1629
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1656 kallithea/model/db.py:1658
 
msgid "Repository group write access"
 
msgstr "Група рэпазітароў - доступ на запіс"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_6_0.py:1396
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1416
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1462
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1519
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1520
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1541
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1580
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1630
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1657 kallithea/model/db.py:1659
 
msgid "Repository group admin access"
 
msgstr "Група рэпазітароў - адміністраванне"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1418
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1464
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1521
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1522
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1543
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1582
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1632
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1659 kallithea/model/db.py:1661
 
msgid "User group no access"
 
msgstr "Група карыстачоў - няма доступу"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1419
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1465
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1522
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1523
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1544
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1583
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1633
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1660 kallithea/model/db.py:1662
 
msgid "User group read access"
 
msgstr "Група карыстачоў - доступ на чытанне"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1420
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1466
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1523
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1524
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1545
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1584
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1634
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1661 kallithea/model/db.py:1663
 
msgid "User group write access"
 
msgstr "Група карыстачоў - доступ на запіс"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1421
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1467
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1524
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1525
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1546
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1585
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1635
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1662 kallithea/model/db.py:1664
 
msgid "User group admin access"
 
msgstr "Група карыстачоў - адміністраванне"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1423
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1469
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1526
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1527
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1548
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1587
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1637
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1664 kallithea/model/db.py:1666
 
msgid "Repository Group creation disabled"
 
msgstr "Стварэнне груп рэпазітароў адключана"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1424
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1470
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1527
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1528
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1549
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1588
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1638
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1665 kallithea/model/db.py:1667
 
msgid "Repository Group creation enabled"
 
msgstr "Стварэнне груп рэпазітароў уключана"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1426
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1472
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1529
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1530
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1551
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1590
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1640
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1667 kallithea/model/db.py:1669
 
msgid "User Group creation disabled"
 
msgstr "Стварэнне груп карыстачоў адключана"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1427
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1473
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1530
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1531
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1552
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1591
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1641
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1668 kallithea/model/db.py:1670
 
msgid "User Group creation enabled"
 
msgstr "Стварэнне груп карыстачоў уключана"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1435
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1481
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1538
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1539
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1560
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1599
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1651
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1678 kallithea/model/db.py:1680
 
msgid "Registration disabled"
 
msgstr "Рэгістрацыя адключана"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1436
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1482
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1539
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1540
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1561
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1600
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1652
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1679 kallithea/model/db.py:1681
 
msgid "User Registration with manual account activation"
 
msgstr "Рэгістрацыя карыстача з ручной актывацыяй уліковага запісу"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_1_7_0.py:1437
 
#: kallithea/lib/dbmigrate/schema/db_1_8_0.py:1483
 
#: kallithea/lib/dbmigrate/schema/db_2_0_0.py:1540
 
#: kallithea/lib/dbmigrate/schema/db_2_0_1.py:1541
 
#: kallithea/lib/dbmigrate/schema/db_2_0_2.py:1562
 
#: kallithea/lib/dbmigrate/schema/db_2_1_0.py:1601
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1653
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1680 kallithea/model/db.py:1682
 
msgid "User Registration with automatic account activation"
 
msgstr "Рэгістрацыя карыстача з аўтаматычнай актывацыяй"
 

	
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1645
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1672 kallithea/model/db.py:1674
 
msgid "Repository creation enabled with write permission to a repository group"
 
msgstr ""
 

	
 
#: kallithea/lib/dbmigrate/schema/db_2_2_0.py:1646
 
#: kallithea/lib/dbmigrate/schema/db_2_2_3.py:1673 kallithea/model/db.py:1675
 
msgid ""
 
"Repository creation disabled with write permission to a repository group"
 
msgstr ""
 

	
 
#: kallithea/model/comment.py:76
 
#, python-format
 
msgid "on line %s"
 
msgstr "на радку %s"
 

	
 
#: kallithea/model/comment.py:231 kallithea/model/pull_request.py:164
 
msgid "[Mention]"
 
msgstr "[Згадванне]"
 

	
 
#: kallithea/model/forms.py:57
 
msgid "Please enter a login"
 
msgstr "Калі ласка, увядзіце лагін"
 

	
 
#: kallithea/model/forms.py:58
 
#, python-format
 
msgid "Enter a value %(min)i characters long or more"
 
msgstr "Увядзіце значэнне даўжынёй не меней %(min)i знакаў"
 

	
 
#: kallithea/model/forms.py:66
 
msgid "Please enter a password"
 
msgstr "Калі ласка, увядзіце пароль"
 

	
 
#: kallithea/model/forms.py:67
 
#, python-format
 
msgid "Enter %(min)i characters or more"
 
msgstr "Увядзіце не меней %(min)i знакаў"
 

	
 
#: kallithea/model/forms.py:156
 
msgid "Name must not contain only digits"
 
msgstr "Імя не можа ўтрымліваць толькі лічбы"
 

	
 
#: kallithea/model/notification.py:252
 
#, python-format
 
msgid "%(user)s commented on changeset at %(when)s"
 
msgstr "%(user)s пакінуў каментар да набору змен %(when)s"
 

	
 
#: kallithea/model/notification.py:253
 
#, python-format
 
msgid "%(user)s sent message at %(when)s"
 
msgstr "%(user)s адправіў паведамленне %(when)s"
 

	
 
#: kallithea/model/notification.py:254
 
#, python-format
 
msgid "%(user)s mentioned you at %(when)s"
 
msgstr "%(user)s згадаў вас %(when)s"
 

	
 
#: kallithea/model/notification.py:255
 
#, python-format
 
msgid "%(user)s registered in Kallithea at %(when)s"
 
msgstr "%(user)s зарэгістраваўся ў Kallithea %(when)s"
 

	
 
#: kallithea/model/notification.py:256
 
#, python-format
 
msgid "%(user)s opened new pull request at %(when)s"
 
msgstr "%(user)s адкрыў новы pull-запыт %(when)s"
 

	
 
#: kallithea/model/notification.py:257
 
#, python-format
 
msgid "%(user)s commented on pull request at %(when)s"
 
msgstr "%(user)s пакінуў каментар да pull-запыту %(when)s"
 

	
 
#: kallithea/model/notification.py:296
 
#, python-format
 
msgid ""
 
"Comment on %(repo_name)s changeset %(short_id)s on %(branch)s by "
 
"%(comment_username)s"
 
msgstr ""
 

	
 
#: kallithea/model/notification.py:299
 
#, python-format
 
msgid "New user %(new_username)s registered"
 
msgstr "Новы карыстач \"%(new_username)s\" зарэгістраваны"
 

	
 
#: kallithea/model/notification.py:301
 
#, python-format
 
msgid ""
 
"Review request on %(repo_name)s pull request #%(pr_id)s from %(ref)s by "
 
"%(pr_username)s"
 
msgstr ""
 

	
 
#: kallithea/model/notification.py:302
 
#, python-format
 
msgid ""
 
"Comment on %(repo_name)s pull request #%(pr_id)s from %(ref)s by "
 
"%(comment_username)s"
 
msgstr ""
 

	
 
#: kallithea/model/notification.py:315
 
msgid "Closing"
 
msgstr "Зачынены"
 

	
 
#: kallithea/model/pull_request.py:132
 
#, python-format
 
msgid "%(user)s wants you to review pull request #%(pr_id)s: %(pr_title)s"
 
msgstr "%(user)s просіць вас разгледзець pull request #%(pr_id)s: %(pr_title)s"
 

	
 
#: kallithea/model/scm.py:808
 
msgid "latest tip"
 
msgstr "апошняя версія"
 

	
 
#: kallithea/model/user.py:194
 
msgid "New user registration"
 
msgstr "Рэгістрацыя новага карыстача"
 

	
 
#: kallithea/model/user.py:214 kallithea/model/user.py:236
 
msgid "You can't Edit this user since it's crucial for entire application"
 
msgid "You can't edit this user since it's crucial for entire application"
 
msgstr ""
 
"Вы не можаце рэдагаваць карыстача, паколькі гэта крытычна для працы ўсяго "
 
"прыкладання"
 

	
 
#: kallithea/model/user.py:255
 
msgid "You can't remove this user since it's crucial for entire application"
 
msgstr ""
 
"Вы не можаце выдаліць карыстача, паколькі гэта крытычна для працы ўсяго "
 
"прыкладання"
 

	
 
#: kallithea/model/user.py:261
 
#, python-format
 
msgid ""
 
"User \"%s\" still owns %s repositories and cannot be removed. Switch owners "
 
"or remove those repositories: %s"
 
msgstr ""
 
"Карыстач \"%s\" усё яшчэ з'яўляецца ўладальнікам %s рэпазітароў і таму не "
 
"можа быць выдалены. Зменіце ўладальніка ці выдаліце гэтыя рэпазітары: %s"
 

	
 
#: kallithea/model/user.py:268
 
#, python-format
 
msgid ""
 
"User \"%s\" still owns %s repository groups and cannot be removed. Switch "
 
"owners or remove those repository groups: %s"
 
msgstr ""
 
"Карыстач \"%s\" усё яшчэ з'яўляецца ўладальнікам %s груп рэпазітароў і таму "
 
"не можа быць выдалены. Зменіце ўладальніка ці выдаліце дадзеныя групы: %s"
 

	
 
#: kallithea/model/user.py:275
 
#, python-format
 
msgid ""
 
"User \"%s\" still owns %s user groups and cannot be removed. Switch owners "
 
"or remove those user groups: %s"
 
msgstr ""
 
"Карыстач \"%s\" усё яшчэ з'яўляецца ўладальнікам %s груп карыстачоў і таму "
 
"не можа быць выдалены. Зменіце ўладальніка ці выдаліце дадзеныя групы: %s"
 

	
 
#: kallithea/model/user.py:305
 
msgid "Password reset link"
 
msgstr "Спасылка скіду пароля"
 

	
 
#: kallithea/model/user.py:328
 
msgid "Your new password"
 
msgstr "Ваш новы пароль"
 

	
 
#: kallithea/model/user.py:329
 
#, python-format
 
msgid "Your new Kallithea password:%s"
 
msgstr "Ваш новы пароль ад Kallithea: %s"
 

	
 
#: kallithea/model/validators.py:83 kallithea/model/validators.py:84
 
msgid "Value cannot be an empty list"
 
msgstr "Значэнне не можа быць пустым спісам"
 

	
 
#: kallithea/model/validators.py:101
 
#, python-format
 
msgid "Username \"%(username)s\" already exists"
 
msgstr "Карыстач з імем \"%(username)s\" ужо існуе"
 

	
 
#: kallithea/model/validators.py:103
 
#, python-format
 
msgid "Username \"%(username)s\" is forbidden"
 
msgstr "Імя \"%(username)s\" адхілена"
 

	
 
#: kallithea/model/validators.py:105
 
msgid ""
 
"Username may only contain alphanumeric characters underscores, periods or "
 
"dashes and must begin with alphanumeric character or underscore"
 
msgstr ""
 
"Імя карыстача можа ўтрымоўваць толькі літары, лічбы, знакі падкрэслення, "
 
"кропкі і працяжнік; а гэтак жа павінна пачынацца з літары, лічбы або са "
 
"знака падкрэслення"
 

	
 
#: kallithea/model/validators.py:132
 
msgid "The input is not valid"
 
msgstr ""
 

	
 
#: kallithea/model/validators.py:139
 
#, python-format
 
msgid "Username %(username)s is not valid"
 
msgstr "Імя \"%(username)s\" недапушчальна"
 

	
 
#: kallithea/model/validators.py:158
 
msgid "Invalid user group name"
 
msgstr "Няслушнае імя групы карыстачоў"
 

	
 
#: kallithea/model/validators.py:159
 
#, python-format
 
msgid "User group \"%(usergroup)s\" already exists"
 
msgstr "Група карыстачоў \"%(usergroup)s\" ужо існуе"
 

	
 
#: kallithea/model/validators.py:161
 
msgid ""
 
"user group name may only contain alphanumeric characters underscores, "
 
"periods or dashes and must begin with alphanumeric character"
 
msgstr ""
 
"імя групы карыстачоў можа ўтрымоўваць толькі літары, лічбы, знакі "
 
"падкрэслення, кропкі і працяжнік; а гэтак жа павінна пачынацца з літары ці "
 
"лічбы"
 

	
 
#: kallithea/model/validators.py:199
 
msgid "Cannot assign this group as parent"
 
msgstr "Немагчыма выкарыстоўваць гэту групу як бацькоўскую"
 

	
 
#: kallithea/model/validators.py:200
 
#, python-format
 
msgid "Group \"%(group_name)s\" already exists"
 
msgstr "Група \"%(group_name)s\" ужо існуе"
 

	
 
#: kallithea/model/validators.py:202
 
#, python-format
 
msgid "Repository with name \"%(group_name)s\" already exists"
 
msgstr "Рэпазітар з  імем \"%(group_name)s\" ужо існуе"
 

	
 
#: kallithea/model/validators.py:260
 
msgid "Invalid characters (non-ascii) in password"
 
msgstr "Недапушчальныя знакі (не ascii) у паролі"
 

	
 
#: kallithea/model/validators.py:275
 
msgid "Invalid old password"
 
msgstr "Няслушна зададзены стары пароль"
 

	
 
#: kallithea/model/validators.py:291
 
msgid "Passwords do not match"
 
msgstr "Паролі не супадаюць"
 

	
 
#: kallithea/model/validators.py:308
 
msgid "invalid password"
 
msgstr "няслушны пароль"
 

	
 
#: kallithea/model/validators.py:309
 
msgid "invalid user name"
 
msgstr "няслушнае імя карыстача"
 

	
 
#: kallithea/model/validators.py:310
 
msgid "Your account is disabled"
 
msgstr "Ваш акаўнт выключаны"
 

	
 
#: kallithea/model/validators.py:354
 
#, python-format
 
msgid "Repository name %(repo)s is disallowed"
 
msgstr "Імя рэпазітара %(repo)s забаронена"
 

	
 
#: kallithea/model/validators.py:356
 
#, python-format
 
msgid "Repository named %(repo)s already exists"
 
msgstr "Рэпазітар %(repo)s ужо існуе"
 

	
 
#: kallithea/model/validators.py:357
 
#, python-format
 
msgid "Repository \"%(repo)s\" already exists in group \"%(group)s\""
 
msgstr "Рэпазітар \"%(repo)s\" ужо існуе ў групе \"%(group)s\""
 

	
 
#: kallithea/model/validators.py:359
 
#, python-format
 
msgid "Repository group with name \"%(repo)s\" already exists"
 
msgstr "Група рэпазітароў \"%(repo)s\" ужо існуе"
 

	
 
#: kallithea/model/validators.py:474
 
msgid "invalid clone URL"
 
msgstr "няслушны URL для кланавання"
 

	
 
#: kallithea/model/validators.py:475
 
msgid "Invalid clone URL, provide a valid clone http(s)/svn+http(s)/ssh URL"
 
msgstr ""
 
"Няслушны URL кланаванні, падайце карэктны URL для кланавання ў фармаце "
 
"http(s)/svn+http(s)/ssh"
 

	
 
#: kallithea/model/validators.py:500
 
msgid "Fork has to be the same type as parent"
 
msgstr "Тып форка будзе супадаць з бацькоўскім"
 

	
 
#: kallithea/model/validators.py:515
 
msgid "You don't have permissions to create repository in this group"
 
msgstr "У вас недастаткова мае рацыю для стварэння рэпазітароў у гэтай групе"
 

	
 
#: kallithea/model/validators.py:517
 
msgid "no permission to create repository in root location"
 
msgstr "недастаткова мае рацыю для стварэння рэпазітара ў каранёвым каталогу"
 

	
 
#: kallithea/model/validators.py:566
 
msgid "You don't have permissions to create a group in this location"
 
msgstr "У Вас недастаткова прывілеяў для стварэння групы ў гэтым месцы"
 

	
 
#: kallithea/model/validators.py:607
 
msgid "This username or user group name is not valid"
 
msgstr "Дадзенае імя карыстача ці групы карыстачоў недапушчальна"
 

	
 
#: kallithea/model/validators.py:700
 
msgid "This is not a valid path"
 
msgstr "Гэты шлях хібны"
 

	
 
#: kallithea/model/validators.py:715
 
msgid "This email address is already taken"
 
msgstr "Гэты E-mail ужо заняты"
 

	
 
#: kallithea/model/validators.py:735
 
#, python-format
 
msgid "email \"%(email)s\" does not exist."
 
msgstr "\"%(email)s\" не існуе."
 

	
 
#: kallithea/model/validators.py:772
 
msgid ""
 
"The LDAP Login attribute of the CN must be specified - this is the name of "
 
"the attribute that is equivalent to \"username\""
 
msgstr ""
 
"Для ўваходу па LDAP павінна быць паказана значэнне атрыбута CN - гэта "
 
"эквівалент імя карыстача"
 

	
 
#: kallithea/model/validators.py:785
 
#, python-format
 
msgid "Revisions %(revs)s are already part of pull request or have set status"
 
msgstr "Рэвізіі %(revs)s ужо ўключаны ў pull-request ці маюць усталяваны статус"
 

	
 
#: kallithea/model/validators.py:817
 
msgid "Please enter a valid IPv4 or IPv6 address"
 
msgstr "Калі ласка, увядзіце існы IPv4 ці IPv6 адрас"
 

	
 
#: kallithea/model/validators.py:818
 
#, python-format
 
msgid "The network size (bits) must be within the range of 0-32 (not %(bits)r)"
 
msgstr ""
 
"Значэнне маскі падсеткі павінна быць у межах ад 0 да 32 (%(bits)r - няслушна)"
 

	
 
#: kallithea/model/validators.py:851
 
msgid "Key name can only consist of letters, underscore, dash or numbers"
 
msgstr ""
 
"Ключавое імя можа толькі складацца з літар, знака падкрэслення, працяжнік ці "
 
"лікаў"
 

	
 
#: kallithea/model/validators.py:865
 
msgid "Filename cannot be inside a directory"
 
msgstr "Файла няма ў каталогу"
 

	
 
#: kallithea/model/validators.py:881
 
#, python-format
 
msgid "Plugins %(loaded)s and %(next_to_load)s both export the same name"
 
msgstr ""
 

	
 
#: kallithea/templates/about.html:4 kallithea/templates/about.html:17
 
msgid "About"
 
msgstr "Пра праграму"
 

	
 
#: kallithea/templates/index.html:5
 
msgid "Dashboard"
 
msgstr "Панэль кіравання"
 

	
 
#: kallithea/templates/index_base.html:6
 
#: kallithea/templates/admin/my_account/my_account_repos.html:3
 
#: kallithea/templates/admin/my_account/my_account_watched.html:3
 
#: kallithea/templates/admin/repo_groups/repo_groups.html:9
 
#: kallithea/templates/admin/repos/repos.html:9
 
#: kallithea/templates/admin/user_groups/user_groups.html:9
 
#: kallithea/templates/admin/users/users.html:9
 
#: kallithea/templates/bookmarks/bookmarks.html:9
 
#: kallithea/templates/branches/branches.html:9
 
#: kallithea/templates/journal/journal.html:9
 
#: kallithea/templates/journal/journal.html:48
 
#: kallithea/templates/journal/journal.html:49
 
#: kallithea/templates/tags/tags.html:9
 
msgid "quick filter..."
 
msgstr "фільтр..."
 

	
 
#: kallithea/templates/index_base.html:6
 
msgid "repositories"
 
msgstr "рэпазітары"
 

	
 
#: kallithea/templates/index_base.html:20
 
#: kallithea/templates/index_base.html:25
 
#: kallithea/templates/admin/repos/repo_add.html:5
 
#: kallithea/templates/admin/repos/repo_add.html:19
 
#: kallithea/templates/admin/repos/repos.html:22
 
msgid "Add Repository"
 
msgstr "Дадаць рэпазітар"
 

	
 
#: kallithea/templates/index_base.html:22
 
#: kallithea/templates/index_base.html:27
 
#: kallithea/templates/admin/repo_groups/repo_group_add.html:5
 
#: kallithea/templates/admin/repo_groups/repo_group_add.html:13
 
#: kallithea/templates/admin/repo_groups/repo_groups.html:26
 
msgid "Add Repository Group"
 
msgstr "Дадаць групу рэпазітароў"
 

	
 
#: kallithea/templates/index_base.html:32
 
msgid "You have admin right to this group, and can edit it"
 
msgstr "Вы маеце адміністратарскія правы на гэту групу і можаце рэдагаваць яе"
 

	
 
#: kallithea/templates/index_base.html:32
 
msgid "Edit Repository Group"
 
msgstr "Змяніць групу рэпазітароў"
 

	
 
#: kallithea/templates/index_base.html:45
 
msgid "Group Name"
 
msgstr "Імя групы"
 

	
 
#: kallithea/templates/index_base.html:46
 
#: kallithea/templates/index_base.html:131
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:64
 
#: kallithea/templates/admin/repo_groups/repo_group_add.html:42
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_settings.html:17
 
#: kallithea/templates/admin/repo_groups/repo_groups.html:47
 
#: kallithea/templates/admin/repos/repo_add_base.html:32
 
#: kallithea/templates/admin/repos/repo_edit_settings.html:72
 
#: kallithea/templates/admin/repos/repos.html:48
 
#: kallithea/templates/admin/user_groups/user_group_add.html:40
 
#: kallithea/templates/admin/user_groups/user_group_edit_settings.html:15
 
#: kallithea/templates/admin/user_groups/user_groups.html:47
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:64
 
#: kallithea/templates/email_templates/changeset_comment.html:18
 
#: kallithea/templates/email_templates/pull_request.html:12
 
#: kallithea/templates/forks/fork.html:38
 
#: kallithea/templates/pullrequests/pullrequest.html:40
 
#: kallithea/templates/pullrequests/pullrequest_show.html:38
 
#: kallithea/templates/pullrequests/pullrequest_show.html:63
 
#: kallithea/templates/summary/summary.html:84
 
msgid "Description"
 
msgstr "Апісанне"
 

	
 
#: kallithea/templates/index_base.html:129
 
#: kallithea/templates/admin/my_account/my_account_repos.html:46
 
#: kallithea/templates/admin/my_account/my_account_watched.html:46
 
#: kallithea/templates/admin/repo_groups/repo_groups.html:46
 
#: kallithea/templates/admin/repos/repo_add_base.html:9
 
#: kallithea/templates/admin/repos/repo_edit_settings.html:7
 
#: kallithea/templates/admin/repos/repos.html:47
 
#: kallithea/templates/admin/user_groups/user_groups.html:46
 
#: kallithea/templates/base/perms_summary.html:53
 
#: kallithea/templates/bookmarks/bookmarks.html:49
 
#: kallithea/templates/bookmarks/bookmarks_data.html:7
 
#: kallithea/templates/branches/branches.html:49
 
#: kallithea/templates/branches/branches_data.html:7
 
#: kallithea/templates/files/files_browser.html:60
 
#: kallithea/templates/journal/journal.html:187
 
#: kallithea/templates/journal/journal.html:278
 
#: kallithea/templates/tags/tags.html:49
 
#: kallithea/templates/tags/tags_data.html:7
 
msgid "Name"
 
msgstr "Імя"
 

	
 
#: kallithea/templates/index_base.html:132
 
msgid "Last Change"
 
msgstr "Апошняя змена"
 

	
 
#: kallithea/templates/index_base.html:134
 
#: kallithea/templates/admin/my_account/my_account_repos.html:48
 
#: kallithea/templates/admin/my_account/my_account_watched.html:48
 
#: kallithea/templates/admin/repos/repos.html:49
 
#: kallithea/templates/journal/journal.html:189
 
#: kallithea/templates/journal/journal.html:280
 
msgid "Tip"
 
msgstr "Стан"
 

	
 
#: kallithea/templates/index_base.html:136
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html:10
 
#: kallithea/templates/admin/repo_groups/repo_groups.html:49
 
#: kallithea/templates/admin/repos/repo_edit_settings.html:60
 
#: kallithea/templates/admin/repos/repos.html:50
 
#: kallithea/templates/admin/user_groups/user_group_edit_advanced.html:8
 
#: kallithea/templates/admin/user_groups/user_groups.html:50
 
#: kallithea/templates/summary/summary.html:137
 
msgid "Owner"
 
msgstr "Уладальнік"
 

	
 
#: kallithea/templates/index_base.html:144
 
#: kallithea/templates/admin/my_account/my_account_repos.html:57
 
#: kallithea/templates/admin/my_account/my_account_watched.html:57
 
#: kallithea/templates/base/root.html:44
 
#: kallithea/templates/bookmarks/bookmarks.html:79
 
#: kallithea/templates/branches/branches.html:79
 
#: kallithea/templates/journal/journal.html:198
 
#: kallithea/templates/journal/journal.html:289
 
#: kallithea/templates/tags/tags.html:79
 
msgid "Click to sort ascending"
 
msgstr "Па ўзрастанні"
 

	
 
#: kallithea/templates/index_base.html:145
 
#: kallithea/templates/admin/my_account/my_account_repos.html:58
 
#: kallithea/templates/admin/my_account/my_account_watched.html:58
 
#: kallithea/templates/base/root.html:45
 
#: kallithea/templates/bookmarks/bookmarks.html:80
 
#: kallithea/templates/branches/branches.html:80
 
#: kallithea/templates/journal/journal.html:199
 
#: kallithea/templates/journal/journal.html:290
 
#: kallithea/templates/tags/tags.html:80
 
@@ -2545,769 +2545,769 @@ msgstr "Уключыць статыстыку"
 
#: kallithea/templates/admin/defaults/defaults.html:59
 
#: kallithea/templates/admin/repos/repo_edit_settings.html:95
 
msgid "Enable statistics window on summary page."
 
msgstr "Уключыць акно статыстыкі на старонцы «Агульныя звесткі»."
 

	
 
#: kallithea/templates/admin/defaults/defaults.html:65
 
#: kallithea/templates/admin/repos/repo_edit_settings.html:100
 
msgid "Enable downloads"
 
msgstr "Уключыць спампоўку"
 

	
 
#: kallithea/templates/admin/defaults/defaults.html:69
 
#: kallithea/templates/admin/repos/repo_edit_settings.html:104
 
msgid "Enable download menu on summary page."
 
msgstr "Уключыць меню спампоўкі на старонцы «Агульныя звесткі»."
 

	
 
#: kallithea/templates/admin/defaults/defaults.html:75
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_settings.html:34
 
#: kallithea/templates/admin/repos/repo_edit_settings.html:109
 
msgid "Enable locking"
 
msgstr "Уключыць блакаванне"
 

	
 
#: kallithea/templates/admin/defaults/defaults.html:79
 
#: kallithea/templates/admin/repos/repo_edit_settings.html:113
 
msgid "Enable lock-by-pulling on repository."
 
msgstr "Уключыць аўтаблакоўку для рэпазітара."
 

	
 
#: kallithea/templates/admin/gists/edit.html:5
 
#: kallithea/templates/admin/gists/edit.html:18
 
msgid "Edit Gist"
 
msgstr "Праўка gist-запісы"
 

	
 
#: kallithea/templates/admin/gists/edit.html:36
 
#, python-format
 
msgid ""
 
"Gist was update since you started editing. Copy your changes and click "
 
"%(here)s to reload new version."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/gists/edit.html:55
 
#: kallithea/templates/admin/gists/new.html:39
 
msgid "Gist description ..."
 
msgstr "Апісанне..."
 

	
 
#: kallithea/templates/admin/gists/edit.html:57
 
#: kallithea/templates/admin/gists/new.html:41
 
msgid "Gist lifetime"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/gists/edit.html:61
 
#: kallithea/templates/admin/gists/edit.html:63
 
#: kallithea/templates/admin/gists/index.html:57
 
#: kallithea/templates/admin/gists/index.html:59
 
#: kallithea/templates/admin/gists/show.html:47
 
#: kallithea/templates/admin/gists/show.html:49
 
msgid "Expires"
 
msgstr "Мінае"
 

	
 
#: kallithea/templates/admin/gists/edit.html:61
 
#: kallithea/templates/admin/gists/index.html:57
 
#: kallithea/templates/admin/gists/show.html:47
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:8
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:27
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:8
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:27
 
msgid "never"
 
msgstr "ніколі"
 

	
 
#: kallithea/templates/admin/gists/edit.html:145
 
msgid "Update Gist"
 
msgstr "Абнавіць"
 

	
 
#: kallithea/templates/admin/gists/edit.html:146
 
#: kallithea/templates/changeset/changeset_file_comment.html:89
 
msgid "Cancel"
 
msgstr "Адмена"
 

	
 
#: kallithea/templates/admin/gists/index.html:6
 
#: kallithea/templates/admin/gists/index.html:16
 
#, python-format
 
msgid "Private Gists for User %s"
 
msgstr "Прыватная gist-запіс для карыстача %s"
 

	
 
#: kallithea/templates/admin/gists/index.html:8
 
#: kallithea/templates/admin/gists/index.html:18
 
#, python-format
 
msgid "Public Gists for User %s"
 
msgstr "Публічная gist-запіс для карыстача %s"
 

	
 
#: kallithea/templates/admin/gists/index.html:10
 
#: kallithea/templates/admin/gists/index.html:20
 
msgid "Public Gists"
 
msgstr "Публічныя gist-запісы"
 

	
 
#: kallithea/templates/admin/gists/index.html:37
 
#: kallithea/templates/admin/gists/show.html:25
 
#: kallithea/templates/base/base.html:240
 
msgid "Create New Gist"
 
msgstr "Стварыць новую gist-запіс"
 

	
 
#: kallithea/templates/admin/gists/index.html:54
 
#: kallithea/templates/data_table/_dt_elements.html:143
 
msgid "Created"
 
msgstr "Створана"
 

	
 
#: kallithea/templates/admin/gists/index.html:74
 
msgid "There are no gists yet"
 
msgstr "Gist-запісы адсутнічаюць"
 

	
 
#: kallithea/templates/admin/gists/new.html:5
 
#: kallithea/templates/admin/gists/new.html:18
 
msgid "New Gist"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/gists/new.html:47
 
msgid "name this file..."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/gists/new.html:56
 
msgid "Create Private Gist"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/gists/new.html:57
 
msgid "Create Public Gist"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/gists/new.html:58
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:70
 
#: kallithea/templates/admin/my_account/my_account_emails.html:46
 
#: kallithea/templates/admin/my_account/my_account_password.html:34
 
#: kallithea/templates/admin/my_account/my_account_profile.html:71
 
#: kallithea/templates/admin/permissions/permissions_globals.html:109
 
#: kallithea/templates/admin/permissions/permissions_ips.html:41
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:115
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_settings.html:43
 
#: kallithea/templates/admin/repos/repo_edit_fields.html:59
 
#: kallithea/templates/admin/repos/repo_edit_permissions.html:102
 
#: kallithea/templates/admin/repos/repo_edit_settings.html:135
 
#: kallithea/templates/admin/settings/settings_global.html:57
 
#: kallithea/templates/admin/settings/settings_vcs.html:81
 
#: kallithea/templates/admin/settings/settings_visual.html:117
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:105
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:70
 
#: kallithea/templates/admin/users/user_edit_emails.html:46
 
#: kallithea/templates/admin/users/user_edit_ips.html:50
 
#: kallithea/templates/admin/users/user_edit_profile.html:123
 
#: kallithea/templates/base/default_perms_box.html:65
 
#: kallithea/templates/files/files_add.html:65
 
#: kallithea/templates/files/files_delete.html:44
 
#: kallithea/templates/files/files_edit.html:68
 
#: kallithea/templates/pullrequests/pullrequest.html:89
 
msgid "Reset"
 
msgstr "Скід"
 

	
 
#: kallithea/templates/admin/gists/show.html:5
 
#: kallithea/templates/admin/gists/show.html:9
 
msgid "Gist"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/gists/show.html:10
 
#: kallithea/templates/email_templates/changeset_comment.html:15
 
#: kallithea/templates/email_templates/pull_request.html:10
 
#: kallithea/templates/email_templates/pull_request_comment.html:15
 
msgid "URL"
 
msgstr "URL"
 

	
 
#: kallithea/templates/admin/gists/show.html:37
 
msgid "Public Gist"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/gists/show.html:39
 
msgid "Private Gist"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/gists/show.html:56
 
#: kallithea/templates/admin/repos/repo_edit_advanced.html:76
 
#: kallithea/templates/changeset/changeset_file_comment.html:50
 
#: kallithea/templates/files/files_source.html:39
 
#: kallithea/templates/files/files_source.html:42
 
#: kallithea/templates/files/files_source.html:45
 
msgid "Delete"
 
msgstr "Выдаліць"
 

	
 
#: kallithea/templates/admin/gists/show.html:56
 
msgid "Confirm to delete this Gist"
 
msgstr "Пацвердзіце выдаленне гэтай gist-запісы"
 

	
 
#: kallithea/templates/admin/gists/show.html:63
 
#: kallithea/templates/changeset/changeset_file_comment.html:91
 
#: kallithea/templates/changeset/changeset_file_comment.html:207
 
#: kallithea/templates/data_table/_dt_elements.html:167
 
#: kallithea/templates/data_table/_dt_elements.html:183
 
#: kallithea/templates/files/diff_2way.html:56
 
#: kallithea/templates/files/files_source.html:41
 
#: kallithea/templates/files/files_source.html:44
 
#: kallithea/templates/pullrequests/pullrequest_show.html:41
 
msgid "Edit"
 
msgstr "Рэдагаваць"
 

	
 
#: kallithea/templates/admin/gists/show.html:65
 
#: kallithea/templates/files/files_edit.html:49
 
#: kallithea/templates/files/files_source.html:34
 
msgid "Show as Raw"
 
msgstr "Паказаць толькі тэкст"
 

	
 
#: kallithea/templates/admin/gists/show.html:73
 
msgid "created"
 
msgstr "створана"
 

	
 
#: kallithea/templates/admin/gists/show.html:86
 
#: kallithea/templates/files/files_source.html:73
 
msgid "Show as raw"
 
msgstr "Паказаць толькі тэкст"
 

	
 
#: kallithea/templates/admin/my_account/my_account.html:5
 
#: kallithea/templates/admin/my_account/my_account.html:9
 
#: kallithea/templates/base/base.html:346
 
msgid "My Account"
 
msgstr "Мой Акаўнт"
 

	
 
#: kallithea/templates/admin/my_account/my_account.html:35
 
#: kallithea/templates/admin/users/user_edit.html:29
 
msgid "Profile"
 
msgstr "Профіль"
 

	
 
#: kallithea/templates/admin/my_account/my_account.html:37
 
#: kallithea/templates/admin/users/user_edit.html:30
 
msgid "API Keys"
 
msgstr "API-ключы"
 

	
 
#: kallithea/templates/admin/my_account/my_account.html:38
 
msgid "My Emails"
 
msgstr "Мае адрасы E-mail"
 

	
 
#: kallithea/templates/admin/my_account/my_account.html:39
 
msgid "My Repositories"
 
msgstr "Мае рэпазітары"
 

	
 
#: kallithea/templates/admin/my_account/my_account.html:40
 
#: kallithea/templates/journal/journal.html:53
 
msgid "Watched"
 
msgstr "Прагледжана"
 

	
 
#: kallithea/templates/admin/my_account/my_account.html:41
 
msgid "My Permissions"
 
msgstr "Мае прывілеі"
 

	
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:6
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:6
 
msgid "Built-in"
 
msgstr "Убудаваны"
 

	
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:8
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:27
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:32
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:8
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:27
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:32
 
msgid "expires"
 
msgstr "мінае"
 

	
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:14
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:14
 
#, python-format
 
msgid "Confirm to reset this api key: %s"
 
msgstr "Пацвердзіце скід гэтага API-ключа: %s"
 

	
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:15
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:15
 
msgid "reset"
 
msgstr "cкінуць"
 

	
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:30
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:30
 
msgid "expired"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:40
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:40
 
#, python-format
 
msgid "Confirm to remove this api key: %s"
 
msgstr "Пацвердзіце выдаленне гэтага API-ключа: %s"
 

	
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:42
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:42
 
msgid "remove"
 
msgstr "выдаліць"
 

	
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:49
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:49
 
msgid "No additional api keys specified"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:61
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:61
 
msgid "New api key"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/my_account/my_account_api_keys.html:69
 
#: kallithea/templates/admin/my_account/my_account_emails.html:45
 
#: kallithea/templates/admin/permissions/permissions_ips.html:40
 
#: kallithea/templates/admin/repos/repo_add_base.html:85
 
#: kallithea/templates/admin/repos/repo_edit_fields.html:58
 
#: kallithea/templates/admin/users/user_edit_api_keys.html:69
 
#: kallithea/templates/admin/users/user_edit_emails.html:45
 
#: kallithea/templates/admin/users/user_edit_ips.html:49
 
msgid "Add"
 
msgstr "Дадаць"
 

	
 
#: kallithea/templates/admin/my_account/my_account_emails.html:7
 
#: kallithea/templates/admin/users/user_edit_emails.html:7
 
msgid "Primary"
 
msgstr "Асноўны"
 

	
 
#: kallithea/templates/admin/my_account/my_account_emails.html:19
 
#: kallithea/templates/admin/permissions/permissions_ips.html:14
 
#: kallithea/templates/admin/repos/repo_edit_fields.html:18
 
#: kallithea/templates/admin/settings/settings_hooks.html:36
 
#: kallithea/templates/admin/users/user_edit_emails.html:19
 
#: kallithea/templates/admin/users/user_edit_ips.html:22
 
#: kallithea/templates/data_table/_dt_elements.html:131
 
#: kallithea/templates/data_table/_dt_elements.html:159
 
#: kallithea/templates/data_table/_dt_elements.html:175
 
#: kallithea/templates/data_table/_dt_elements.html:191
 
msgid "delete"
 
msgstr "выдаліць"
 

	
 
#: kallithea/templates/admin/my_account/my_account_emails.html:20
 
#: kallithea/templates/admin/users/user_edit_emails.html:20
 
#, python-format
 
msgid "Confirm to delete this email: %s"
 
msgstr "Пацвердзіце выдаленне E-mail: %s"
 

	
 
#: kallithea/templates/admin/my_account/my_account_emails.html:26
 
#: kallithea/templates/admin/users/user_edit_emails.html:26
 
msgid "No additional emails specified."
 
msgstr "Дадатковыя адрасы e-mail не пазначаны."
 

	
 
#: kallithea/templates/admin/my_account/my_account_emails.html:38
 
#: kallithea/templates/admin/users/user_edit_emails.html:38
 
msgid "New email address"
 
msgstr "Новы E-mail"
 

	
 
#: kallithea/templates/admin/my_account/my_account_password.html:1
 
msgid "Change Your Account Password"
 
msgstr "Змена пароля"
 

	
 
#: kallithea/templates/admin/my_account/my_account_password.html:7
 
msgid "Current password"
 
msgstr "Бягучы пароль"
 

	
 
#: kallithea/templates/admin/my_account/my_account_password.html:16
 
#: kallithea/templates/admin/users/user_edit_profile.html:69
 
msgid "New password"
 
msgstr "Новы пароль"
 

	
 
#: kallithea/templates/admin/my_account/my_account_password.html:25
 
msgid "Confirm new password"
 
msgstr "Пацвердзіце новы пароль"
 

	
 
#: kallithea/templates/admin/my_account/my_account_profile.html:11
 
msgid "Change your avatar at"
 
msgstr "Зменіце аватар праз сайт"
 

	
 
#: kallithea/templates/admin/my_account/my_account_profile.html:12
 
#: kallithea/templates/admin/users/user_edit_profile.html:9
 
msgid "Using"
 
msgstr "Выкарыстоўваецца"
 

	
 
#: kallithea/templates/admin/my_account/my_account_profile.html:14
 
#: kallithea/templates/admin/users/user_edit_profile.html:11
 
msgid "Avatars are disabled"
 
msgstr "Аватары адключаны"
 

	
 
#: kallithea/templates/admin/my_account/my_account_profile.html:15
 
msgid "Missing email, please update your user email address."
 
msgstr "Не паказаны email. Калі ласка, абновіце ваш email."
 

	
 
#: kallithea/templates/admin/my_account/my_account_profile.html:16
 
#: kallithea/templates/admin/users/user_edit_profile.html:15
 
msgid "current IP"
 
msgstr "бягучы IP-адрас"
 

	
 
#: kallithea/templates/admin/my_account/my_account_profile.html:28
 
msgid ""
 
"Your user is in an external Source of Record; some details cannot be managed "
 
"Your user is in an external source of record; some details cannot be managed "
 
"here"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/my_account/my_account_repos.html:1
 
msgid "Repositories You Own"
 
msgstr "Рэпазітары, дзе Вы — уладальнік"
 

	
 
#: kallithea/templates/admin/my_account/my_account_repos.html:59
 
#: kallithea/templates/admin/my_account/my_account_watched.html:59
 
#: kallithea/templates/base/root.html:46
 
#: kallithea/templates/bookmarks/bookmarks.html:81
 
#: kallithea/templates/branches/branches.html:81
 
#: kallithea/templates/journal/journal.html:200
 
#: kallithea/templates/journal/journal.html:291
 
#: kallithea/templates/tags/tags.html:81
 
msgid "No records found."
 
msgstr "Запісы не знойдзены."
 

	
 
#: kallithea/templates/admin/my_account/my_account_watched.html:1
 
msgid "Repositories You are Watching"
 
msgstr "Рэпазітары, за якімі Вы назіраеце"
 

	
 
#: kallithea/templates/admin/notifications/notifications.html:5
 
#: kallithea/templates/admin/notifications/notifications.html:9
 
msgid "My Notifications"
 
msgstr "Мае апавяшчэнні"
 

	
 
#: kallithea/templates/admin/notifications/notifications.html:24
 
msgid "All"
 
msgstr "Усё"
 

	
 
#: kallithea/templates/admin/notifications/notifications.html:25
 
msgid "Comments"
 
msgstr "Каментары"
 

	
 
#: kallithea/templates/admin/notifications/notifications.html:26
 
#: kallithea/templates/base/base.html:186
 
msgid "Pull Requests"
 
msgstr "Pull-запыты"
 

	
 
#: kallithea/templates/admin/notifications/notifications.html:30
 
msgid "Mark All Read"
 
msgstr "Адзначыць усё як прачытаныя"
 

	
 
#: kallithea/templates/admin/notifications/notifications_data.html:40
 
msgid "No notifications here yet"
 
msgstr "Апавяшчэнняў няма"
 

	
 
#: kallithea/templates/admin/notifications/show_notification.html:5
 
#: kallithea/templates/admin/notifications/show_notification.html:11
 
msgid "Show Notification"
 
msgstr "Паказаць апавяшчэнне"
 

	
 
#: kallithea/templates/admin/notifications/show_notification.html:9
 
#: kallithea/templates/base/base.html:345
 
msgid "Notifications"
 
msgstr "Апавяшчэнні"
 

	
 
#: kallithea/templates/admin/permissions/permissions.html:5
 
msgid "Permissions Administration"
 
msgstr "Кіраванне прывілеямі"
 

	
 
#: kallithea/templates/admin/permissions/permissions.html:11
 
#: kallithea/templates/admin/repo_groups/repo_group_edit.html:42
 
#: kallithea/templates/admin/repos/repo_edit.html:43
 
#: kallithea/templates/admin/user_groups/user_group_edit.html:32
 
#: kallithea/templates/base/base.html:64
 
msgid "Permissions"
 
msgstr "Прывілеі"
 

	
 
#: kallithea/templates/admin/permissions/permissions.html:28
 
#: kallithea/templates/admin/settings/settings.html:29
 
msgid "Global"
 
msgstr "Глабальныя"
 

	
 
#: kallithea/templates/admin/permissions/permissions.html:29
 
#: kallithea/templates/admin/users/user_edit.html:34
 
msgid "IP Whitelist"
 
msgstr "Белы спіс IP"
 

	
 
#: kallithea/templates/admin/permissions/permissions.html:30
 
msgid "Overview"
 
msgstr "Агляд"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:7
 
msgid "Anonymous access"
 
msgstr "Ананімны доступ"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:13
 
#, python-format
 
msgid ""
 
"Allow access to Kallithea without needing to log in. Anonymous users use %s "
 
"user permissions."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:26
 
msgid ""
 
"All default permissions on each repository will be reset to chosen "
 
"permission, note that all custom default permission on repositories will be "
 
"lost"
 
msgstr ""
 
"Абраныя прывілеі будуць усталяваны па змаўчанні для кожнага рэпазітара. "
 
"Улічыце, што раней усталяваныя прывілеі па змаўчанні будуць скінуты"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:27
 
#: kallithea/templates/admin/permissions/permissions_globals.html:40
 
#: kallithea/templates/admin/permissions/permissions_globals.html:54
 
msgid "Overwrite existing settings"
 
msgstr "Перазапісаць існыя налады"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:32
 
#: kallithea/templates/admin/repos/repo_add_base.html:41
 
#: kallithea/templates/admin/repos/repo_edit_settings.html:42
 
#: kallithea/templates/data_table/_dt_elements.html:204
 
#: kallithea/templates/forks/fork.html:48
 
msgid "Repository group"
 
msgstr "Група рэпазітароў"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:39
 
msgid ""
 
"All default permissions on each repository group will be reset to chosen "
 
"permission, note that all custom default permission on repository groups "
 
"will be lost"
 
msgstr ""
 
"Абраныя прывілеі будуць усталяваны па змаўчанні для кожнай групы "
 
"рэпазітароў. Улічыце, што раней усталяваныя прывілеі па змаўчанні для груп "
 
"рэпазітароў будуць скінуты"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:46
 
#: kallithea/templates/data_table/_dt_elements.html:211
 
msgid "User group"
 
msgstr "Група карыстачоў"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:53
 
msgid ""
 
"All default permissions on each user group will be reset to chosen "
 
"permission, note that all custom default permission on repository groups "
 
"will be lost"
 
msgstr ""
 
"Абраныя прывілеі будуць усталяваны па змаўчанні для кожнай групы карыстачоў. "
 
"Улічыце, што раней усталяваныя прывілеі па змаўчанні для груп карыстачоў "
 
"будуць скінуты"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:60
 
msgid "Repository creation"
 
msgstr "Стварэнне рэпазітара"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:68
 
msgid "Repository creation with group write access"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:72
 
msgid ""
 
"Write permission to a repository group allows creating repositories inside "
 
"that group."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:77
 
msgid "User group creation"
 
msgstr "Стварэнне груп карыстачоў"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:85
 
msgid "Repository forking"
 
msgstr "Стварэнне форка рэпазітара"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:93
 
msgid "Registration"
 
msgstr "Рэгістрацыя"
 

	
 
#: kallithea/templates/admin/permissions/permissions_globals.html:101
 
msgid "External auth account activation"
 
msgstr "Актывацыя іншага ўліковага запісу"
 

	
 
#: kallithea/templates/admin/permissions/permissions_ips.html:1
 
msgid "Default IP Whitelist for All Users"
 
msgstr "Белы спіс IP для ўсіх карыстачоў"
 

	
 
#: kallithea/templates/admin/permissions/permissions_ips.html:15
 
#: kallithea/templates/admin/users/user_edit_ips.html:23
 
#, python-format
 
msgid "Confirm to delete this ip: %s"
 
msgstr "Пацвердзіце выдаленне IP %s"
 

	
 
#: kallithea/templates/admin/permissions/permissions_ips.html:21
 
#: kallithea/templates/admin/users/user_edit_ips.html:30
 
msgid "All IP addresses are allowed."
 
msgstr "Дазволены любыя IP-адрасы."
 

	
 
#: kallithea/templates/admin/permissions/permissions_ips.html:32
 
#: kallithea/templates/admin/users/user_edit_ips.html:42
 
msgid "New IP address"
 
msgstr "Новы IP-адрас"
 

	
 
#: kallithea/templates/admin/permissions/permissions_perms.html:1
 
msgid "Default User Permissions Overview"
 
msgstr "Агляд мае рацыю карыстачоў па змаўчанні"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_add.html:11
 
#: kallithea/templates/admin/repo_groups/repo_group_edit.html:11
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:105
 
#: kallithea/templates/admin/repo_groups/repo_groups.html:10
 
#: kallithea/templates/base/base.html:61 kallithea/templates/base/base.html:80
 
msgid "Repository Groups"
 
msgstr "Групы рэпазітароў"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_add.html:33
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_settings.html:8
 
#: kallithea/templates/admin/user_groups/user_group_add.html:32
 
#: kallithea/templates/admin/user_groups/user_group_edit_settings.html:7
 
msgid "Group name"
 
msgstr "Імя групы"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_add.html:51
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_settings.html:26
 
msgid "Group parent"
 
msgstr "Бацькоўская група"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_add.html:60
 
#: kallithea/templates/admin/repos/repo_add_base.html:50
 
msgid "Copy parent group permissions"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_add.html:64
 
#: kallithea/templates/admin/repos/repo_add_base.html:54
 
msgid "Copy permission set from parent repository group."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit.html:5
 
#, python-format
 
msgid "%s Repository Group Settings"
 
msgstr "Налады групы рэпазітароў %s"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit.html:21
 
msgid "Add Child Group"
 
msgstr "Дадаць падгрупу"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit.html:40
 
#: kallithea/templates/admin/repos/repo_edit.html:12
 
#: kallithea/templates/admin/repos/repo_edit.html:40
 
#: kallithea/templates/admin/settings/settings.html:11
 
#: kallithea/templates/admin/user_groups/user_group_edit.html:29
 
#: kallithea/templates/base/base.html:67
 
#: kallithea/templates/base/base.html:154
 
#: kallithea/templates/data_table/_dt_elements.html:43
 
#: kallithea/templates/data_table/_dt_elements.html:47
 
msgid "Settings"
 
msgstr "Налады"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit.html:41
 
#: kallithea/templates/admin/repos/repo_edit.html:46
 
#: kallithea/templates/admin/user_groups/user_group_edit.html:30
 
#: kallithea/templates/admin/users/user_edit.html:31
 
msgid "Advanced"
 
msgstr "Дадаткова"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html:1
 
#, python-format
 
msgid "Repository Group: %s"
 
msgstr "Група рэпазітароў: %s"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html:6
 
msgid "Top level repositories"
 
msgstr "Рэпазітары верхняга ўзроўню"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html:7
 
msgid "Total repositories"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html:8
 
msgid "Children groups"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html:9
 
#: kallithea/templates/admin/user_groups/user_group_edit_advanced.html:7
 
#: kallithea/templates/admin/users/user_edit_advanced.html:8
 
#: kallithea/templates/pullrequests/pullrequest_show.html:147
 
msgid "Created on"
 
msgstr "Створана"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html:21
 
#: kallithea/templates/data_table/_dt_elements.html:192
 
#, python-format
 
msgid "Confirm to delete this group: %s with %s repository"
 
msgid_plural "Confirm to delete this group: %s with %s repositories"
 
msgstr[0] "Пацвердзіце выдаленне групы %s, утрымоўвалай %s рэпазітар"
 
msgstr[1] "Пацвердзіце выдаленне групы %s, утрымоўвалай %s рэпазітара"
 
msgstr[2] "Пацвердзіце выдаленне групы %s, утрымоўвалай %s рэпазітароў"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_advanced.html:25
 
msgid "Delete this repository group"
 
msgstr "Выдаліць гэту групу рэпазітароў"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:7
 
#: kallithea/templates/admin/repos/repo_edit_permissions.html:8
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:7
 
#: kallithea/templates/base/perms_summary.html:14
 
msgid "none"
 
msgstr "нічога"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:8
 
#: kallithea/templates/admin/repos/repo_edit_permissions.html:9
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:8
 
#: kallithea/templates/base/perms_summary.html:15
 
msgid "read"
 
msgstr "чытаць"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:9
 
#: kallithea/templates/admin/repos/repo_edit_permissions.html:10
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:9
 
#: kallithea/templates/base/perms_summary.html:16
 
msgid "write"
 
msgstr "запісваць"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:10
 
#: kallithea/templates/admin/repos/repo_edit_permissions.html:11
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:10
 
#: kallithea/templates/base/perms_summary.html:17
 
msgid "admin"
 
msgstr "адміністратар"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:11
 
#: kallithea/templates/admin/repos/repo_edit_permissions.html:12
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:11
 
msgid "user/user group"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:28
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:45
 
#: kallithea/templates/admin/repos/repo_edit_permissions.html:24
 
#: kallithea/templates/admin/repos/repo_edit_permissions.html:37
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:28
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:45
 
msgid "default"
 
msgstr "па змаўчанні"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:34
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:71
 
#: kallithea/templates/admin/repos/repo_edit_permissions.html:43
 
#: kallithea/templates/admin/repos/repo_edit_permissions.html:68
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:34
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:71
 
msgid "revoke"
 
msgstr "адклікаць"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:47
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:47
 
msgid "delegated admin"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:97
 
#: kallithea/templates/admin/repos/repo_edit_permissions.html:94
 
#: kallithea/templates/admin/user_groups/user_group_edit_perms.html:97
 
msgid "Add new"
 
msgstr "Дадаць новы"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:103
 
msgid "apply to children"
 
msgstr "дастасаваць да даччыным"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:107
 
msgid "Both"
 
msgstr "Абедзьве"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_perms.html:108
 
msgid ""
 
"Set or revoke permission to all children of that group, including non-"
 
"private repositories and other groups if selected."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_settings.html:38
 
msgid ""
 
"Enable lock-by-pulling on group. This option will be applied to all other "
 
"groups and repositories inside"
 
msgstr ""
 
"Уключыць аўтаблакоўку для групы. Гэта опцыя будзе ўжыта да ўсіх даччыных "
 
"груп і рэпазітарам"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_settings.html:53
 
msgid "Remove this group"
 
msgstr "Выдаліць гэту групу"
 

	
 
#: kallithea/templates/admin/repo_groups/repo_group_edit_settings.html:53
 
msgid "Confirm to delete this group"
 
msgstr "Пацвердзіце выдаленне гэтай групы карыстачоў"
 
@@ -3845,798 +3845,798 @@ msgstr "Опцыі перасканіравання"
 
msgid "Destroy old data"
 
msgstr "Знішчыць усе дадзеныя"
 

	
 
#: kallithea/templates/admin/settings/settings_mapping.html:13
 
msgid ""
 
"Check this option to remove references to repositories that no longer exist "
 
"in on the filesystem."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_mapping.html:17
 
msgid "Invalidate cache for all repositories"
 
msgstr "Скінуць кэш для ўсіх рэпазітароў"
 

	
 
#: kallithea/templates/admin/settings/settings_mapping.html:19
 
msgid "Check this to reload data and clear cache keys for all repositories."
 
msgstr "Скінуць кэш для ўсіх рэпазітароў."
 

	
 
#: kallithea/templates/admin/settings/settings_mapping.html:23
 
msgid "Install Git hooks"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_mapping.html:25
 
msgid ""
 
"Verify if Kallithea's Git hooks are installed for each repository. Current "
 
"hooks will be updated to the latest version."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_mapping.html:32
 
msgid "Rescan Repositories"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_search.html:7
 
msgid "Index build option"
 
msgstr "Опцыі стварэння індэксу"
 

	
 
#: kallithea/templates/admin/settings/settings_search.html:12
 
msgid "Build from scratch"
 
msgstr "Зборка з нуля"
 

	
 
#: kallithea/templates/admin/settings/settings_search.html:15
 
msgid ""
 
"This option completely reindexeses all of the repositories for proper "
 
"fulltext search capabilities."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_search.html:21
 
msgid "Reindex"
 
msgstr "Перабудаваць індэкс"
 

	
 
#: kallithea/templates/admin/settings/settings_system.html:4
 
msgid "Kallithea version"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_system.html:4
 
msgid "check for updates"
 
msgstr "праверыць наяўнасць абнаўленняў"
 

	
 
#: kallithea/templates/admin/settings/settings_system.html:5
 
msgid "Python version"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_system.html:6
 
msgid "Platform"
 
msgstr "Платформа"
 

	
 
#: kallithea/templates/admin/settings/settings_system.html:7
 
msgid "Git version"
 
msgstr "Версія Git"
 

	
 
#: kallithea/templates/admin/settings/settings_system.html:8
 
msgid "Git path"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_system.html:9
 
msgid "Upgrade info endpoint"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_system.html:9
 
msgid "Note: please make sure this server can access this URL"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_system.html:14
 
msgid "Checking for updates..."
 
msgstr "Праверка абнаўленняў..."
 

	
 
#: kallithea/templates/admin/settings/settings_system.html:22
 
msgid "Python Packages"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:6
 
msgid "Web"
 
msgstr "Вэб"
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:11
 
msgid "Require SSL for vcs operations"
 
msgstr "Запытваць SSL для аперацый з VCS"
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:13
 
msgid ""
 
"Activate to require SSL both pushing and pulling. If SSL certificate is "
 
"missing, it will return an HTTP Error 406: Not Acceptable."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:24
 
msgid "Show repository size after push"
 
msgstr "Паказваць памер рэпазітара пасля адпраўкі"
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:28
 
msgid "Log user push commands"
 
msgstr "Лагіраваць карыстацкія каманды адпраўкі"
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:32
 
msgid "Log user pull commands"
 
msgstr "Лагіраваць карыстацкія каманды атрымання"
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:36
 
msgid "Update repository after push (hg update)"
 
msgstr "Абнаўляць рэпазітар пасля адпраўкі (hg update)"
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:42
 
msgid "Mercurial extensions"
 
msgstr "Пашырэнні Mercurial"
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:47
 
msgid "Enable largefiles extension"
 
msgstr "Уключыць падтрымку вялікіх файлаў"
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:51
 
msgid "Enable hgsubversion extension"
 
msgstr "Уключыць падтрымку hgsubversion"
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:53
 
msgid ""
 
"Requires hgsubversion library to be installed. Enables cloning of remote "
 
"Subversion repositories while converting them to Mercurial."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:64
 
msgid "Location of repositories"
 
msgstr "Месцазнаходжанне рэпазітароў"
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:69
 
msgid ""
 
"Click to unlock. You must restart Kallithea in order to make this setting "
 
"take effect."
 
msgstr ""
 
"Націсніце для разблакавання. Змены набудуць моц пасля перазагрузкі Kallithea."
 

	
 
#: kallithea/templates/admin/settings/settings_vcs.html:72
 
msgid ""
 
"Filesystem location where repositories are stored. After changing this "
 
"value, a restart and rescan of the repository folder are both required."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:8
 
msgid "General"
 
msgstr "Галоўнае"
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:13
 
msgid "Use repository extra fields"
 
msgstr "Выкарыстоўваць дадатковыя палі ў рэпазітарах"
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:15
 
msgid "Allows storing additional customized fields per repository."
 
msgstr "Дазваляе захоўваць дадатковыя палі ў рэпазітарах."
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:18
 
msgid "Show Kallithea version"
 
msgstr "Адлюстроўваць версію Kallithea"
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:20
 
msgid "Shows or hides a version number of Kallithea displayed in the footer."
 
msgstr "Паказвае або хавае нумар версіі Kallithea ў ніжняй частцы старонкі."
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:24
 
msgid "Use Gravatars in Kallithea"
 
msgstr "Выкарыстоўваць Gravatars у Kallithea"
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:30
 
msgid ""
 
"Gravatar URL allows you to use another avatar server application.\n"
 
"                                                        The following "
 
"variables of the URL will be replaced accordingly.\n"
 
"                                                        {scheme}    'http' "
 
"or 'https' sent from running Kallithea server,\n"
 
"                                                        {email}     user "
 
"email,\n"
 
"                                                        {md5email}  md5 hash "
 
"of the user email (like at gravatar.com),\n"
 
"                                                        {size}      size of "
 
"the image that is expected from the server application,\n"
 
"                                                        {netloc}    network "
 
"location/server host of running Kallithea server"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:42
 
msgid ""
 
"Schema of clone URL construction eg. '{scheme}://{user}@{netloc}/{repo}'.\n"
 
"                                                        The following "
 
"variables are available:\n"
 
"                                                        {scheme} 'http' or "
 
"'https' sent from running Kallithea server,\n"
 
"                                                        {user}   current "
 
"user username,\n"
 
"                                                        {netloc} network "
 
"location/server host of running Kallithea server,\n"
 
"                                                        {repo}   full "
 
"repository name,\n"
 
"                                                        {repoid} ID of "
 
"repository, can be used to contruct clone-by-id"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:55
 
msgid "Dashboard items"
 
msgstr "Элементы панэлі"
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:59
 
msgid ""
 
"Number of items displayed in the main page dashboard before pagination is "
 
"shown."
 
msgstr ""
 
"Колькасць элементаў, што паказваюцца на галоўнай старонцы панэлі кіравання "
 
"перад паказам нумарацыі старонак."
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:65
 
msgid "Admin pages items"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:69
 
msgid ""
 
"Number of items displayed in the admin pages grids before pagination is "
 
"shown."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:75
 
msgid "Icons"
 
msgstr "Абразкі"
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:80
 
msgid "Show public repository icon on repositories"
 
msgstr "Паказваць абразкі публічных рэпазітароў"
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:84
 
msgid "Show private repository icon on repositories"
 
msgstr "Паказваць абразкі прыватных рэпазітароў"
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:86
 
msgid "Show public/private icons next to repository names."
 
msgstr "Паказваць абразкі публічных рэпазітароў."
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:92
 
msgid "Meta-Tagging"
 
msgstr "Метатэгіраванне"
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:97
 
msgid "Stylify recognised meta tags:"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/settings/settings_visual.html:111
 
msgid ""
 
"Parses meta tags from the repository description field and turns them into "
 
"colored tags."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/user_groups/user_group_add.html:5
 
msgid "Add user group"
 
msgstr "Дадаць групу карыстачоў"
 

	
 
#: kallithea/templates/admin/user_groups/user_group_add.html:10
 
#: kallithea/templates/admin/user_groups/user_group_edit.html:11
 
#: kallithea/templates/base/base.html:63 kallithea/templates/base/base.html:83
 
msgid "User Groups"
 
msgstr "Групы карыстальнікаў"
 

	
 
#: kallithea/templates/admin/user_groups/user_group_add.html:12
 
#: kallithea/templates/admin/user_groups/user_groups.html:25
 
msgid "Add User Group"
 
msgstr "Дадаць групу карыстальнікаў"
 

	
 
#: kallithea/templates/admin/user_groups/user_group_add.html:44
 
#: kallithea/templates/admin/user_groups/user_group_edit_settings.html:19
 
msgid "Short, optional description for this user group."
 
msgstr "Кароткае дадатковае апісанне для гэтай групы карыстальнікаў."
 

	
 
#: kallithea/templates/admin/user_groups/user_group_edit.html:5
 
#, python-format
 
msgid "%s user group settings"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/user_groups/user_group_edit.html:31
 
msgid "Default permissions"
 
msgstr "Стандартныя прывілеі"
 

	
 
#: kallithea/templates/admin/user_groups/user_group_edit.html:33
 
#: kallithea/templates/admin/user_groups/user_group_edit_advanced.html:6
 
#: kallithea/templates/admin/user_groups/user_group_edit_settings.html:32
 
#: kallithea/templates/admin/user_groups/user_groups.html:48
 
msgid "Members"
 
msgstr "Удзельнікі"
 

	
 
#: kallithea/templates/admin/user_groups/user_group_edit_advanced.html:1
 
#, python-format
 
msgid "User Group: %s"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/user_groups/user_group_edit_advanced.html:19
 
#: kallithea/templates/data_table/_dt_elements.html:176
 
#, python-format
 
msgid "Confirm to delete this user group: %s"
 
msgstr "Пацвердзіце выдаленне наступнай групы карыстачоў: %s"
 

	
 
#: kallithea/templates/admin/user_groups/user_group_edit_advanced.html:21
 
msgid "Delete this user group"
 
msgstr "Выдаліць гэтую групу карыстальнікаў"
 

	
 
#: kallithea/templates/admin/user_groups/user_group_edit_members.html:17
 
msgid "No members yet"
 
msgstr "Няма ўдзельнікаў"
 

	
 
#: kallithea/templates/admin/user_groups/user_group_edit_settings.html:40
 
msgid "Chosen group members"
 
msgstr "Абраныя ўдзельнікі групы"
 

	
 
#: kallithea/templates/admin/user_groups/user_group_edit_settings.html:49
 
msgid "Available members"
 
msgstr "Даступныя ўдзельнікі"
 

	
 
#: kallithea/templates/admin/user_groups/user_groups.html:5
 
msgid "User Groups Administration"
 
msgstr "Адміністраванне груп карыстачоў"
 

	
 
#: kallithea/templates/admin/user_groups/user_groups.html:10
 
msgid "user groups"
 
msgstr "групы карыстальнікаў"
 

	
 
#: kallithea/templates/admin/users/user_add.html:5
 
msgid "Add user"
 
msgstr "Дадаць карыстача"
 

	
 
#: kallithea/templates/admin/users/user_add.html:10
 
#: kallithea/templates/admin/users/user_edit.html:11
 
#: kallithea/templates/admin/users/users.html:10
 
#: kallithea/templates/base/base.html:62
 
msgid "Users"
 
msgstr "Карыстачы"
 

	
 
#: kallithea/templates/admin/users/user_add.html:12
 
#: kallithea/templates/admin/users/users.html:24
 
msgid "Add User"
 
msgstr "Дадаць карыстача"
 

	
 
#: kallithea/templates/admin/users/user_add.html:50
 
msgid "Password confirmation"
 
msgstr "Пацверджанне пароля"
 

	
 
#: kallithea/templates/admin/users/user_edit.html:5
 
#, python-format
 
msgid "%s user settings"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/users/user_edit.html:32
 
msgid "Default Permissions"
 
msgstr "Стандартныя прывілеі"
 

	
 
#: kallithea/templates/admin/users/user_edit.html:33
 
msgid "Emails"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/users/user_edit_advanced.html:1
 
#, python-format
 
msgid "User: %s"
 
msgstr "Карыстальнік: %s"
 

	
 
#: kallithea/templates/admin/users/user_edit_advanced.html:7
 
#: kallithea/templates/admin/users/user_edit_profile.html:51
 
msgid "Source of Record"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/users/user_edit_advanced.html:9
 
#: kallithea/templates/admin/users/users.html:53
 
msgid "Last Login"
 
msgstr "Апошні ўваход"
 

	
 
#: kallithea/templates/admin/users/user_edit_advanced.html:10
 
msgid "Member of User groups"
 
msgid "Member of User Groups"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/users/user_edit_advanced.html:21
 
#: kallithea/templates/data_table/_dt_elements.html:160
 
#, python-format
 
msgid "Confirm to delete this user: %s"
 
msgstr "Пацвердзіце выдаленне карыстача %s"
 

	
 
#: kallithea/templates/admin/users/user_edit_advanced.html:23
 
msgid "Delete this user"
 
msgstr "Выдаліць гэтага карыстальніка"
 

	
 
#: kallithea/templates/admin/users/user_edit_ips.html:8
 
#, python-format
 
msgid "Inherited from %s"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/users/user_edit_profile.html:8
 
msgid "Change avatar at"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/users/user_edit_profile.html:12
 
msgid "Missing email, please update this user email address."
 
msgstr "Не паказаны email. Калі ласка, абнавіце email карыстальніка."
 

	
 
#: kallithea/templates/admin/users/user_edit_profile.html:27
 
#, python-format
 
msgid ""
 
"This user is in an external Source of Record (%s); some details cannot be "
 
"This user is in an external source of record (%s); some details cannot be "
 
"managed here."
 
msgstr ""
 

	
 
#: kallithea/templates/admin/users/user_edit_profile.html:60
 
msgid "Name in Source of Record"
 
msgstr ""
 

	
 
#: kallithea/templates/admin/users/user_edit_profile.html:78
 
msgid "New password confirmation"
 
msgstr "Пацвердзіце новы пароль"
 

	
 
#: kallithea/templates/admin/users/users.html:5
 
msgid "Users Administration"
 
msgstr "Адміністраванне карыстачоў"
 

	
 
#: kallithea/templates/admin/users/users.html:56
 
msgid "Auth Type"
 
msgstr ""
 

	
 
#: kallithea/templates/base/base.html:18
 
#, python-format
 
msgid "Server instance: %s"
 
msgstr "Асобнік сервера: %s"
 

	
 
#: kallithea/templates/base/base.html:30
 
msgid "Support"
 
msgstr "Падтрымка"
 

	
 
#: kallithea/templates/base/base.html:122
 
msgid "Create Fork"
 
msgstr "Стварыць форк"
 

	
 
#: kallithea/templates/base/base.html:133
 
#: kallithea/templates/data_table/_dt_elements.html:11
 
#: kallithea/templates/data_table/_dt_elements.html:15
 
#: kallithea/templates/summary/summary.html:8
 
msgid "Summary"
 
msgstr "Агульныя звесткі"
 

	
 
#: kallithea/templates/base/base.html:135
 
#: kallithea/templates/base/base.html:137
 
#: kallithea/templates/changelog/changelog.html:14
 
#: kallithea/templates/data_table/_dt_elements.html:19
 
#: kallithea/templates/data_table/_dt_elements.html:23
 
msgid "Changelog"
 
msgstr "Гісторыя змен"
 

	
 
#: kallithea/templates/base/base.html:139
 
#: kallithea/templates/data_table/_dt_elements.html:27
 
#: kallithea/templates/data_table/_dt_elements.html:31
 
#: kallithea/templates/files/files.html:11
 
msgid "Files"
 
msgstr "Файлы"
 

	
 
#: kallithea/templates/base/base.html:141
 
msgid "Switch To"
 
msgstr "Пераключыцца на"
 

	
 
#: kallithea/templates/base/base.html:148
 
#: kallithea/templates/base/base.html:150
 
msgid "Options"
 
msgstr "Опцыі"
 

	
 
#: kallithea/templates/base/base.html:158
 
#: kallithea/templates/forks/forks_data.html:21
 
msgid "Compare Fork"
 
msgstr "Параўнаць форк"
 

	
 
#: kallithea/templates/base/base.html:160
 
#: kallithea/templates/bookmarks/bookmarks.html:56
 
#: kallithea/templates/bookmarks/bookmarks_data.html:13
 
#: kallithea/templates/branches/branches.html:56
 
#: kallithea/templates/branches/branches_data.html:13
 
#: kallithea/templates/tags/tags.html:56
 
#: kallithea/templates/tags/tags_data.html:13
 
msgid "Compare"
 
msgstr "Параўнаць"
 

	
 
#: kallithea/templates/base/base.html:162
 
#: kallithea/templates/base/base.html:250
 
#: kallithea/templates/search/search.html:14
 
#: kallithea/templates/search/search.html:54
 
msgid "Search"
 
msgstr "Пошук"
 

	
 
#: kallithea/templates/base/base.html:166
 
msgid "Unlock"
 
msgstr "Разблакаваць"
 

	
 
#: kallithea/templates/base/base.html:168
 
msgid "Lock"
 
msgstr "Заблакаваць"
 

	
 
#: kallithea/templates/base/base.html:176
 
msgid "Follow"
 
msgstr "Назіраць"
 

	
 
#: kallithea/templates/base/base.html:177
 
msgid "Unfollow"
 
msgstr "Не назіраць"
 

	
 
#: kallithea/templates/base/base.html:180
 
#: kallithea/templates/data_table/_dt_elements.html:35
 
#: kallithea/templates/data_table/_dt_elements.html:39
 
#: kallithea/templates/forks/fork.html:9
 
msgid "Fork"
 
msgstr "Форк"
 

	
 
#: kallithea/templates/base/base.html:181
 
#: kallithea/templates/pullrequests/pullrequest.html:88
 
msgid "Create Pull Request"
 
msgstr "Стварыць Pull запыт"
 

	
 
#: kallithea/templates/base/base.html:186
 
#, python-format
 
msgid "Show Pull Requests for %s"
 
msgstr "Паказаць pull-запыты для %s"
 

	
 
#: kallithea/templates/base/base.html:224
 
msgid "Show recent activity"
 
msgstr "Паказаць апошнюю актыўнасць"
 

	
 
#: kallithea/templates/base/base.html:225
 
#: kallithea/templates/journal/journal.html:4
 
#: kallithea/templates/journal/journal.html:12
 
msgid "Journal"
 
msgstr "Часопіс"
 

	
 
#: kallithea/templates/base/base.html:230
 
#: kallithea/templates/base/base.html:231
 
msgid "Public journal"
 
msgstr "Агульнадаступны часопіс"
 

	
 
#: kallithea/templates/base/base.html:236
 
msgid "Show public gists"
 
msgstr "Паказаць публічныя запісы"
 

	
 
#: kallithea/templates/base/base.html:237
 
msgid "Gists"
 
msgstr "Gist"
 

	
 
#: kallithea/templates/base/base.html:241
 
msgid "All Public Gists"
 
msgstr "Усе публічныя Gist-запісы"
 

	
 
#: kallithea/templates/base/base.html:243
 
msgid "My Public Gists"
 
msgstr "Мае публічныя Gist-запісы"
 

	
 
#: kallithea/templates/base/base.html:244
 
msgid "My Private Gists"
 
msgstr "Мае прыватныя Gist-запісы"
 

	
 
#: kallithea/templates/base/base.html:249
 
msgid "Search in repositories"
 
msgstr "Пошук па рэпазітарах"
 

	
 
#: kallithea/templates/base/base.html:272
 
#: kallithea/templates/base/base.html:273
 
#: kallithea/templates/pullrequests/pullrequest_show_my.html:4
 
#: kallithea/templates/pullrequests/pullrequest_show_my.html:8
 
msgid "My Pull Requests"
 
msgstr "Мае Pull-запыты"
 

	
 
#: kallithea/templates/base/base.html:292
 
msgid "Not Logged In"
 
msgstr "Не аўтарызаваны"
 

	
 
#: kallithea/templates/base/base.html:299
 
msgid "Login to Your Account"
 
msgstr "Аўтарызавацца"
 

	
 
#: kallithea/templates/base/base.html:322
 
msgid "Forgot password ?"
 
msgstr "Забыліся пароль?"
 

	
 
#: kallithea/templates/base/base.html:347
 
msgid "Log Out"
 
msgstr "Выйсце"
 

	
 
#: kallithea/templates/base/base.html:395
 
msgid "No matches found"
 
msgstr "Супадзенняў не знойдзена"
 

	
 
#: kallithea/templates/base/base.html:524
 
msgid "Keyboard shortcuts"
 
msgstr "Гарачыя клавішы"
 

	
 
#: kallithea/templates/base/base.html:533
 
msgid "Site-wide shortcuts"
 
msgstr ""
 

	
 
#: kallithea/templates/base/default_perms_box.html:14
 
msgid "Inherit from defaults"
 
msgstr ""
 

	
 
#: kallithea/templates/base/default_perms_box.html:19
 
#, python-format
 
msgid ""
 
"Select to inherit permissions from %s permissions settings, and default IP "
 
"address whitelist."
 
msgstr ""
 

	
 
#: kallithea/templates/base/default_perms_box.html:28
 
msgid "Create repositories"
 
msgstr "Стварыць рэпазітары"
 

	
 
#: kallithea/templates/base/default_perms_box.html:33
 
msgid "Select this option to allow repository creation for this user"
 
msgstr "Опцыя дазваляе карыстачу ствараць рэпазітары"
 

	
 
#: kallithea/templates/base/default_perms_box.html:40
 
msgid "Create user groups"
 
msgstr "Ствараць групы карыстачоў"
 

	
 
#: kallithea/templates/base/default_perms_box.html:45
 
msgid "Select this option to allow user group creation for this user"
 
msgstr "Опцыя дазваляе карыстачу ствараць групы карыстачоў"
 

	
 
#: kallithea/templates/base/default_perms_box.html:52
 
msgid "Fork repositories"
 
msgstr "Ствараць fork ад рэпазітароў"
 

	
 
#: kallithea/templates/base/default_perms_box.html:57
 
msgid "Select this option to allow repository forking for this user"
 
msgstr ""
 
"Абярыце гэту опцыю каб дазволіць дадзенаму карыстачу ствараць fork'і "
 
"рэпазітароў"
 

	
 
#: kallithea/templates/base/perms_summary.html:13
 
msgid "show"
 
msgstr "паказа́ць"
 

	
 
#: kallithea/templates/base/perms_summary.html:22
 
msgid "No permissions defined yet"
 
msgstr "Прывілеі яшчэ не прызначаны"
 

	
 
#: kallithea/templates/base/perms_summary.html:30
 
#: kallithea/templates/base/perms_summary.html:54
 
msgid "Permission"
 
msgstr "Прывілей"
 

	
 
#: kallithea/templates/base/perms_summary.html:32
 
#: kallithea/templates/base/perms_summary.html:56
 
msgid "Edit Permission"
 
msgstr "Змяніць прывілеі"
 

	
 
#: kallithea/templates/base/perms_summary.html:90
 
msgid "No permission defined"
 
msgstr ""
 

	
 
#: kallithea/templates/base/root.html:22
 
msgid "Add Another Comment"
 
msgstr "Дадаць яшчэ адзін каментар"
 

	
 
#: kallithea/templates/base/root.html:23
 
#: kallithea/templates/data_table/_dt_elements.html:216
 
msgid "Stop following this repository"
 
msgstr "Адмяніць назіранне за рэпазітаром"
 

	
 
#: kallithea/templates/base/root.html:24
 
msgid "Start following this repository"
 
msgstr "Назіраць за рэпазітаром"
 

	
 
#: kallithea/templates/base/root.html:25
 
msgid "Group"
 
msgstr "Група"
 

	
 
#: kallithea/templates/base/root.html:26
 
msgid "members"
 
msgstr "удзельнікі"
 

	
 
#: kallithea/templates/base/root.html:27
 
msgid "Loading ..."
 
msgstr "Загрузка..."
 

	
 
#: kallithea/templates/base/root.html:28
 
msgid "loading ..."
 
msgstr "загрузка..."
 

	
 
#: kallithea/templates/base/root.html:29
 
msgid "Search truncated"
 
msgstr "Пошук усечаны"
 

	
 
#: kallithea/templates/base/root.html:30
 
msgid "No matching files"
 
msgstr "Няма супадзенняў"
 

	
 
#: kallithea/templates/base/root.html:31
 
#: kallithea/templates/pullrequests/pullrequest_show_all.html:30
 
msgid "Open New Pull Request"
 
msgstr "Стварыць новы pull-запыт"
 

	
 
#: kallithea/templates/base/root.html:32
 
msgid "Open New Pull Request for Selected Changesets"
 
msgstr "Адкрыць новы pull-request для абраных набораў змен"
 

	
 
#: kallithea/templates/base/root.html:33
 
msgid "Show Selected Changesets __S &rarr; __E"
 
msgstr "Паказаць абраныя наборы змен: __S &rarr; __E"
 

	
 
#: kallithea/templates/base/root.html:34
 
msgid "Show Selected Changeset __S"
 
msgstr "Паказаць абраны набор змен: __S"
 

	
 
#: kallithea/templates/base/root.html:35
 
msgid "Selection Link"
 
msgstr "Спасылка выбару"
 

	
 
#: kallithea/templates/base/root.html:36
 
#: kallithea/templates/changeset/diff_block.html:8
 
msgid "Collapse Diff"
 
msgstr "Згарнуць параўнанне"
 

	
 
#: kallithea/templates/base/root.html:37
 
msgid "Expand Diff"
 
msgstr "Расчыніць параўнанне"
 

	
 
#: kallithea/templates/base/root.html:38
 
msgid "Failed to revoke permission"
 
msgstr "Не атрымалася адклікаць прывілеі"
 

	
 
#: kallithea/templates/base/root.html:39
 
msgid "Confirm to revoke permission for {0}: {1} ?"
 
msgstr "Пацвердзіце выдаленне прывілею для {0}: {1} ?"
 

	
 
#: kallithea/templates/base/root.html:43
 
msgid "Specify changeset"
 
msgstr "Абраць набор змен"
 

	
 
#: kallithea/templates/bookmarks/bookmarks.html:5
 
#, python-format
 
msgid "%s Bookmarks"
 
msgstr "Закладкі %s"
 

	
 
#: kallithea/templates/bookmarks/bookmarks.html:26
 
msgid "Compare Bookmarks"
 
msgstr ""
 

	
 
#: kallithea/templates/bookmarks/bookmarks.html:53
 
#: kallithea/templates/bookmarks/bookmarks_data.html:10
 
#: kallithea/templates/branches/branches.html:53
 
#: kallithea/templates/branches/branches_data.html:10
 
#: kallithea/templates/changelog/changelog_summary_data.html:10
 
#: kallithea/templates/pullrequests/pullrequest_data.html:16
 
#: kallithea/templates/tags/tags.html:53
 
#: kallithea/templates/tags/tags_data.html:10
 
msgid "Author"
 
msgstr "Аўтар"
 

	
 
#: kallithea/templates/bookmarks/bookmarks.html:54
 
#: kallithea/templates/bookmarks/bookmarks_data.html:12
 
#: kallithea/templates/branches/branches.html:54
 
#: kallithea/templates/branches/branches_data.html:12
 
#: kallithea/templates/changelog/changelog_summary_data.html:7
 
#: kallithea/templates/pullrequests/pullrequest.html:62
 
#: kallithea/templates/pullrequests/pullrequest.html:78
 
#: kallithea/templates/tags/tags.html:54
 
#: kallithea/templates/tags/tags_data.html:12
 
msgid "Revision"
 
msgstr "Рэвізія"
 

	
 
#: kallithea/templates/branches/branches.html:5
 
#, python-format
 
msgid "%s Branches"
 
msgstr "Галінкі %s"
 

	
 
#: kallithea/templates/branches/branches.html:26
 
msgid "Compare Branches"
 
msgstr ""
 

	
 
#: kallithea/templates/changelog/changelog.html:6
 
#, python-format
 
msgid "%s Changelog"
 
msgstr "Логі змен %s"
 

	
 
#: kallithea/templates/changelog/changelog.html:21
 
#, python-format
 
msgid "showing %d out of %d revision"
 
msgid_plural "showing %d out of %d revisions"
 
msgstr[0] "Паказана %d з %d рэвізій"
 
msgstr[1] "Паказаны %d з %d рэвізій"
 
msgstr[2] "Паказаны %d з %d рэвізій"
 

	

Changeset was too big and was cut off... Show full diff anyway

0 comments (0 inline, 0 general)