clone-urls: allow custom clone by id template.

This commit is contained in:
Milka Kuzminski 2021-01-22 08:56:20 +01:00
parent b0a5210748
commit 202df81250
6 changed files with 9 additions and 6 deletions

View file

@ -384,6 +384,7 @@ class AdminSettingsView(BaseAppView):
('markup_renderer', 'rhodecode_markup_renderer', 'unicode'),
('gravatar_url', 'rhodecode_gravatar_url', 'unicode'),
('clone_uri_tmpl', 'rhodecode_clone_uri_tmpl', 'unicode'),
('clone_uri_id_tmpl', 'rhodecode_clone_uri_id_tmpl', 'unicode'),
('clone_uri_ssh_tmpl', 'rhodecode_clone_uri_ssh_tmpl', 'unicode'),
('support_url', 'rhodecode_support_url', 'unicode'),
('show_revision_number', 'rhodecode_show_revision_number', 'bool'),

View file

@ -83,14 +83,10 @@ class RepoSummaryView(RepoAppView):
if self._rhodecode_user.username != User.DEFAULT_USER:
username = safe_str(self._rhodecode_user.username)
_def_clone_uri = _def_clone_uri_id = c.clone_uri_tmpl
_def_clone_uri = c.clone_uri_tmpl
_def_clone_uri_id = c.clone_uri_id_tmpl
_def_clone_uri_ssh = c.clone_uri_ssh_tmpl
if '{repo}' in _def_clone_uri:
_def_clone_uri_id = _def_clone_uri.replace('{repo}', '_{repoid}')
elif '{repoid}' in _def_clone_uri:
_def_clone_uri_id = _def_clone_uri.replace('_{repoid}', '{repo}')
c.clone_repo_url = self.db_repo.clone_url(
user=username, uri_tmpl=_def_clone_uri)
c.clone_repo_url_id = self.db_repo.clone_url(

View file

@ -342,6 +342,7 @@ def attach_context_attributes(context, request, user_id=None, is_api=None):
if request.GET.get('default_encoding'):
context.default_encodings.insert(0, request.GET.get('default_encoding'))
context.clone_uri_tmpl = rc_config.get('rhodecode_clone_uri_tmpl')
context.clone_uri_id_tmpl = rc_config.get('rhodecode_clone_uri_id_tmpl')
context.clone_uri_ssh_tmpl = rc_config.get('rhodecode_clone_uri_ssh_tmpl')
# INI stored

View file

@ -609,6 +609,7 @@ class DbManage(object):
('gravatar_url', User.DEFAULT_GRAVATAR_URL, 'unicode'),
('clone_uri_tmpl', Repository.DEFAULT_CLONE_URI, 'unicode'),
('clone_uri_id_tmpl', Repository.DEFAULT_CLONE_URI_ID, 'unicode'),
('clone_uri_ssh_tmpl', Repository.DEFAULT_CLONE_URI_SSH, 'unicode'),
('support_url', '', 'unicode'),
('update_url', RhodeCodeSetting.DEFAULT_UPDATE_URL, 'unicode'),

View file

@ -390,6 +390,7 @@ def ApplicationVisualisationForm(localizer):
rhodecode_markup_renderer = v.OneOf(['markdown', 'rst'])
rhodecode_gravatar_url = v.UnicodeString(min=3)
rhodecode_clone_uri_tmpl = v.UnicodeString(not_empty=False, if_empty=Repository.DEFAULT_CLONE_URI)
rhodecode_clone_uri_id_tmpl = v.UnicodeString(not_empty=False, if_empty=Repository.DEFAULT_CLONE_URI_ID)
rhodecode_clone_uri_ssh_tmpl = v.UnicodeString(not_empty=False, if_empty=Repository.DEFAULT_CLONE_URI_SSH)
rhodecode_support_url = v.UnicodeString()
rhodecode_show_revision_number = v.StringBoolean(if_missing=False)

View file

@ -173,6 +173,9 @@ ${h.secure_form(h.route_path('admin_settings_visual_update'), request=request)}
<div class="field">
${h.text('rhodecode_clone_uri_tmpl', size=60)} HTTP[S]
</div>
<div class="field">
${h.text('rhodecode_clone_uri_id_tmpl', size=60)} HTTP UID
</div>
<div class="field">
${h.text('rhodecode_clone_uri_ssh_tmpl', size=60)} SSH
</div>