##// END OF EJS Templates
repositories: allow updating repository settings for users without store-in-root permissions...
repositories: allow updating repository settings for users without store-in-root permissions in case repository name didn't change. - when an user owns repository in root location, and isn't allow to create repositories in root before we failed to allow this user to update such repository settings due to this validation. We'll now check if name didn't change and in this case allow to update since this doesn't store any new data in root location.

File last commit:

r3625:4c188069 default
r4415:fc1f6c1b default
Show More
vcs_settings.mako
384 lines | 19.9 KiB | application/x-mako | MakoHtmlLexer
templating: use .mako as extensions for template files.
r1282 ## snippet for displaying vcs settings
## usage:
## <%namespace name="vcss" file="/base/vcssettings.mako"/>
## ${vcss.vcs_settings_fields()}
<%def name="vcs_settings_fields(suffix='', svn_branch_patterns=None, svn_tag_patterns=None, repo_type=None, display_globals=False, allow_repo_location_change=False, **kwargs)">
% if display_globals:
<div class="panel panel-default">
<div class="panel-heading" id="general">
admin-settings: added anchors for vcs settings panels.
r1597 <h3 class="panel-title">${_('General')}<a class="permalink" href="#general"> ΒΆ</a></h3>
templating: use .mako as extensions for template files.
r1282 </div>
<div class="panel-body">
<div class="field">
<div class="checkbox">
${h.checkbox('web_push_ssl' + suffix, 'True')}
<label for="web_push_ssl${suffix}">${_('Require SSL for vcs operations')}</label>
</div>
<div class="label">
<span class="help-block">${_('Activate to set RhodeCode to require SSL for pushing or pulling. If SSL certificate is missing it will return a HTTP Error 406: Not Acceptable.')}</span>
</div>
</div>
</div>
</div>
% endif
% if display_globals:
<div class="panel panel-default">
admin-settings: added anchors for vcs settings panels.
r1597 <div class="panel-heading" id="vcs-storage-options">
<h3 class="panel-title">${_('Main Storage Location')}<a class="permalink" href="#vcs-storage-options"> ΒΆ</a></h3>
templating: use .mako as extensions for template files.
r1282 </div>
<div class="panel-body">
<div class="field">
<div class="inputx locked_input">
%if allow_repo_location_change:
${h.text('paths_root_path',size=59,readonly="readonly", class_="disabled")}
<span id="path_unlock" class="tooltip"
title="${h.tooltip(_('Click to unlock. You must restart RhodeCode in order to make this setting take effect.'))}">
<div class="btn btn-default lock_input_button"><i id="path_unlock_icon" class="icon-lock"></i></div>
</span>
%else:
${_('Repository location change is disabled. You can enable this by changing the `allow_repo_location_change` inside .ini file.')}
## form still requires this but we cannot internally change it anyway
${h.hidden('paths_root_path',size=30,readonly="readonly", class_="disabled")}
%endif
</div>
</div>
<div class="label">
<span class="help-block">${_('Filesystem location where repositories should be stored. After changing this value a restart and rescan of the repository folder are required.')}</span>
</div>
</div>
</div>
% endif
% if display_globals or repo_type in ['git', 'hg']:
<div class="panel panel-default">
admin-settings: added anchors for vcs settings panels.
r1597 <div class="panel-heading" id="vcs-hooks-options">
<h3 class="panel-title">${_('Internal Hooks')}<a class="permalink" href="#vcs-hooks-options"> ΒΆ</a></h3>
templating: use .mako as extensions for template files.
r1282 </div>
<div class="panel-body">
<div class="field">
<div class="checkbox">
${h.checkbox('hooks_changegroup_repo_size' + suffix, 'True', **kwargs)}
<label for="hooks_changegroup_repo_size${suffix}">${_('Show repository size after push')}</label>
</div>
<div class="label">
<span class="help-block">${_('Trigger a hook that calculates repository size after each push.')}</span>
</div>
<div class="checkbox">
${h.checkbox('hooks_changegroup_push_logger' + suffix, 'True', **kwargs)}
<label for="hooks_changegroup_push_logger${suffix}">${_('Execute pre/post push hooks')}</label>
</div>
<div class="label">
<span class="help-block">${_('Execute Built in pre/post push hooks. This also executes rcextensions hooks.')}</span>
</div>
<div class="checkbox">
${h.checkbox('hooks_outgoing_pull_logger' + suffix, 'True', **kwargs)}
<label for="hooks_outgoing_pull_logger${suffix}">${_('Execute pre/post pull hooks')}</label>
</div>
<div class="label">
<span class="help-block">${_('Execute Built in pre/post pull hooks. This also executes rcextensions hooks.')}</span>
</div>
</div>
</div>
</div>
% endif
% if display_globals or repo_type in ['hg']:
<div class="panel panel-default">
admin-settings: added anchors for vcs settings panels.
r1597 <div class="panel-heading" id="vcs-hg-options">
<h3 class="panel-title">${_('Mercurial Settings')}<a class="permalink" href="#vcs-hg-options"> ΒΆ</a></h3>
templating: use .mako as extensions for template files.
r1282 </div>
<div class="panel-body">
<div class="checkbox">
${h.checkbox('extensions_largefiles' + suffix, 'True', **kwargs)}
<label for="extensions_largefiles${suffix}">${_('Enable largefiles extension')}</label>
</div>
<div class="label">
mercurial: allow editing largefile store from web interface.
r1563 % if display_globals:
<span class="help-block">${_('Enable Largefiles extensions for all repositories.')}</span>
% else:
<span class="help-block">${_('Enable Largefiles extensions for this repository.')}</span>
% endif
templating: use .mako as extensions for template files.
r1282 </div>
mercurial: allow editing largefile store from web interface.
r1563
% if display_globals:
<div class="field">
<div class="input">
${h.text('largefiles_usercache' + suffix, size=59)}
</div>
</div>
<div class="label">
<span class="help-block">${_('Filesystem location where Mercurial largefile objects should be stored.')}</span>
</div>
% endif
templating: use .mako as extensions for template files.
r1282 <div class="checkbox">
${h.checkbox('phases_publish' + suffix, 'True', **kwargs)}
<label for="phases_publish${suffix}">${_('Set repositories as publishing') if display_globals else _('Set repository as publishing')}</label>
</div>
<div class="label">
<span class="help-block">${_('When this is enabled all commits in the repository are seen as public commits by clients.')}</span>
</div>
% if display_globals:
<div class="checkbox">
${h.checkbox('extensions_hgsubversion' + suffix,'True')}
<label for="extensions_hgsubversion${suffix}">${_('Enable hgsubversion extension')}</label>
</div>
<div class="label">
<span class="help-block">${_('Requires hgsubversion library to be installed. Allows cloning remote SVN repositories and migrates them to Mercurial type.')}</span>
</div>
% endif
mercurial-evolve: enable evolve setting on repositories.
r1738
<div class="checkbox">
${h.checkbox('extensions_evolve' + suffix, 'True', **kwargs)}
mercurial: enabled full evolve+topic extensions
r3625 <label for="extensions_evolve${suffix}">${_('Enable Evolve and Topic extension')}</label>
mercurial-evolve: enable evolve setting on repositories.
r1738 </div>
<div class="label">
% if display_globals:
mercurial: enabled full evolve+topic extensions
r3625 <span class="help-block">${_('Enable Evolve and Topic extensions for all repositories.')}</span>
mercurial-evolve: enable evolve setting on repositories.
r1738 % else:
mercurial: enabled full evolve+topic extensions
r3625 <span class="help-block">${_('Enable Evolve and Topic extensions for this repository.')}</span>
mercurial-evolve: enable evolve setting on repositories.
r1738 % endif
</div>
templating: use .mako as extensions for template files.
r1282 </div>
</div>
% endif
git-lfs: settings for GIT repos to enable git-lfs and set store location...
r1570 % if display_globals or repo_type in ['git']:
<div class="panel panel-default">
admin-settings: added anchors for vcs settings panels.
r1597 <div class="panel-heading" id="vcs-git-options">
<h3 class="panel-title">${_('Git Settings')}<a class="permalink" href="#vcs-git-options"> ΒΆ</a></h3>
git-lfs: settings for GIT repos to enable git-lfs and set store location...
r1570 </div>
<div class="panel-body">
<div class="checkbox">
${h.checkbox('vcs_git_lfs_enabled' + suffix, 'True', **kwargs)}
<label for="vcs_git_lfs_enabled${suffix}">${_('Enable lfs extension')}</label>
</div>
<div class="label">
% if display_globals:
<span class="help-block">${_('Enable lfs extensions for all repositories.')}</span>
% else:
<span class="help-block">${_('Enable lfs extensions for this repository.')}</span>
% endif
</div>
% if display_globals:
<div class="field">
<div class="input">
${h.text('vcs_git_lfs_store_location' + suffix, size=59)}
</div>
</div>
<div class="label">
<span class="help-block">${_('Filesystem location where Git lfs objects should be stored.')}</span>
</div>
% endif
</div>
</div>
% endif
templating: use .mako as extensions for template files.
r1282 % if display_globals:
<div class="panel panel-default">
admin-settings: added anchors for vcs settings panels.
r1597 <div class="panel-heading" id="vcs-global-svn-options">
<h3 class="panel-title">${_('Global Subversion Settings')}<a class="permalink" href="#vcs-global-svn-options"> ΒΆ</a></h3>
templating: use .mako as extensions for template files.
r1282 </div>
<div class="panel-body">
<div class="field">
<div class="checkbox">
${h.checkbox('vcs_svn_proxy_http_requests_enabled' + suffix, 'True', **kwargs)}
<label for="vcs_svn_proxy_http_requests_enabled${suffix}">${_('Proxy subversion HTTP requests')}</label>
</div>
<div class="label">
<span class="help-block">
${_('Subversion HTTP Support. Enables communication with SVN over HTTP protocol.')}
routing: switched static redirection links to pyramid....
r1679 <a href="${h.route_url('enterprise_svn_setup')}" target="_blank">${_('SVN Protocol setup Documentation')}</a>.
templating: use .mako as extensions for template files.
r1282 </span>
</div>
</div>
<div class="field">
<div class="label">
<label for="vcs_svn_proxy_http_server_url">${_('Subversion HTTP Server URL')}</label><br/>
</div>
<div class="input">
${h.text('vcs_svn_proxy_http_server_url',size=59)}
% if c.svn_proxy_generate_config:
<span class="buttons">
<button class="btn btn-primary" id="vcs_svn_generate_cfg">${_('Generate Apache Config')}</button>
</span>
% endif
</div>
</div>
</div>
</div>
% endif
% if display_globals or repo_type in ['svn']:
<div class="panel panel-default">
admin-settings: added anchors for vcs settings panels.
r1597 <div class="panel-heading" id="vcs-svn-options">
<h3 class="panel-title">${_('Subversion Settings')}<a class="permalink" href="#vcs-svn-options"> ΒΆ</a></h3>
templating: use .mako as extensions for template files.
r1282 </div>
<div class="panel-body">
<div class="field">
<div class="content" >
<label>${_('Repository patterns')}</label><br/>
</div>
</div>
<div class="label">
<span class="help-block">${_('Patterns for identifying SVN branches and tags. For recursive search, use "*". Eg.: "/branches/*"')}</span>
</div>
<div class="field branch_patterns">
<div class="input" >
<label>${_('Branches')}:</label><br/>
</div>
% if svn_branch_patterns:
% for branch in svn_branch_patterns:
<div class="input adjacent" id="${'id%s' % branch.ui_id}">
${h.hidden('branch_ui_key' + suffix, branch.ui_key)}
${h.text('branch_value_%d' % branch.ui_id + suffix, branch.ui_value, size=59, readonly="readonly", class_='disabled')}
% if kwargs.get('disabled') != 'disabled':
<span class="btn btn-x" onclick="ajaxDeletePattern(${branch.ui_id},'${'id%s' % branch.ui_id}')">
${_('Delete')}
</span>
% endif
</div>
% endfor
%endif
</div>
% if kwargs.get('disabled') != 'disabled':
<div class="field branch_patterns">
<div class="input" >
${h.text('new_svn_branch',size=59,placeholder='New branch pattern')}
</div>
</div>
% endif
<div class="field tag_patterns">
<div class="input" >
<label>${_('Tags')}:</label><br/>
</div>
% if svn_tag_patterns:
% for tag in svn_tag_patterns:
<div class="input" id="${'id%s' % tag.ui_id + suffix}">
${h.hidden('tag_ui_key' + suffix, tag.ui_key)}
${h.text('tag_ui_value_new_%d' % tag.ui_id + suffix, tag.ui_value, size=59, readonly="readonly", class_='disabled tag_input')}
% if kwargs.get('disabled') != 'disabled':
<span class="btn btn-x" onclick="ajaxDeletePattern(${tag.ui_id},'${'id%s' % tag.ui_id}')">
${_('Delete')}
</span>
%endif
</div>
% endfor
% endif
</div>
% if kwargs.get('disabled') != 'disabled':
<div class="field tag_patterns">
<div class="input" >
${h.text('new_svn_tag' + suffix, size=59, placeholder='New tag pattern')}
</div>
</div>
%endif
</div>
</div>
% else:
${h.hidden('new_svn_branch' + suffix, '')}
${h.hidden('new_svn_tag' + suffix, '')}
% endif
% if display_globals or repo_type in ['hg', 'git']:
<div class="panel panel-default">
admin-settings: added anchors for vcs settings panels.
r1597 <div class="panel-heading" id="vcs-pull-requests-options">
<h3 class="panel-title">${_('Pull Request Settings')}<a class="permalink" href="#vcs-pull-requests-options"> ΒΆ</a></h3>
templating: use .mako as extensions for template files.
r1282 </div>
<div class="panel-body">
<div class="checkbox">
${h.checkbox('rhodecode_pr_merge_enabled' + suffix, 'True', **kwargs)}
<label for="rhodecode_pr_merge_enabled${suffix}">${_('Enable server-side merge for pull requests')}</label>
</div>
<div class="label">
<span class="help-block">${_('Note: when this feature is enabled, it only runs hooks defined in the rcextension package. Custom hooks added on the Admin -> Settings -> Hooks page will not be run when pull requests are automatically merged from the web interface.')}</span>
</div>
<div class="checkbox">
${h.checkbox('rhodecode_use_outdated_comments' + suffix, 'True', **kwargs)}
<label for="rhodecode_use_outdated_comments${suffix}">${_('Invalidate and relocate inline comments during update')}</label>
</div>
<div class="label">
<span class="help-block">${_('During the update of a pull request, the position of inline comments will be updated and outdated inline comments will be hidden.')}</span>
</div>
</div>
</div>
% endif
BartΕ‚omiej WoΕ‚yΕ„czyk
caching: add option to cache diffs for commits and pull requests....
r2685 % if display_globals or repo_type in ['hg', 'git', 'svn']:
<div class="panel panel-default">
<div class="panel-heading" id="vcs-pull-requests-options">
<h3 class="panel-title">${_('Diff cache')}<a class="permalink" href="#vcs-pull-requests-options"> ΒΆ</a></h3>
</div>
<div class="panel-body">
<div class="checkbox">
${h.checkbox('rhodecode_diff_cache' + suffix, 'True', **kwargs)}
<label for="rhodecode_diff_cache${suffix}">${_('Enable caching diffs for pull requests cache and commits')}</label>
</div>
</div>
</div>
% endif
pull-requests: use close action with proper --close-commit solution....
r2056 % if display_globals or repo_type in ['hg',]:
<div class="panel panel-default">
<div class="panel-heading" id="vcs-pull-requests-options">
<h3 class="panel-title">${_('Mercurial Pull Request Settings')}<a class="permalink" href="#vcs-hg-pull-requests-options"> ΒΆ</a></h3>
</div>
<div class="panel-body">
## Specific HG settings
<div class="checkbox">
${h.checkbox('rhodecode_hg_use_rebase_for_merging' + suffix, 'True', **kwargs)}
<label for="rhodecode_hg_use_rebase_for_merging${suffix}">${_('Use rebase as merge strategy')}</label>
</div>
<div class="label">
<span class="help-block">${_('Use rebase instead of creating a merge commit when merging via web interface.')}</span>
</div>
<div class="checkbox">
${h.checkbox('rhodecode_hg_close_branch_before_merging' + suffix, 'True', **kwargs)}
<label for="rhodecode_hg_close_branch_before_merging{suffix}">${_('Close branch before merging it')}</label>
</div>
<div class="label">
<span class="help-block">${_('Close branch before merging it into destination branch. No effect when rebase strategy is use.')}</span>
</div>
</div>
</div>
% endif
## DISABLED FOR GIT FOR NOW as the rebase/close is not supported yet
## % if display_globals or repo_type in ['git']:
## <div class="panel panel-default">
## <div class="panel-heading" id="vcs-pull-requests-options">
## <h3 class="panel-title">${_('Git Pull Request Settings')}<a class="permalink" href="#vcs-git-pull-requests-options"> ΒΆ</a></h3>
## </div>
## <div class="panel-body">
## <div class="checkbox">
## ${h.checkbox('rhodecode_git_use_rebase_for_merging' + suffix, 'True', **kwargs)}
## <label for="rhodecode_git_use_rebase_for_merging${suffix}">${_('Use rebase as merge strategy')}</label>
## </div>
## <div class="label">
## <span class="help-block">${_('Use rebase instead of creating a merge commit when merging via web interface.')}</span>
## </div>
##
## <div class="checkbox">
## ${h.checkbox('rhodecode_git_close_branch_before_merging' + suffix, 'True', **kwargs)}
## <label for="rhodecode_git_close_branch_before_merging{suffix}">${_('Delete branch after merging it')}</label>
## </div>
## <div class="label">
## <span class="help-block">${_('Delete branch after merging it into destination branch. No effect when rebase strategy is use.')}</span>
## </div>
## </div>
## </div>
## % endif
templating: use .mako as extensions for template files.
r1282 </%def>