Hide 'Mirror Settings' when unneeded, improve hints (#24433)
Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: Giteabot <teabot@gitea.io>
This commit is contained in:
parent
a70d853d06
commit
35ce7ca25b
3 changed files with 47 additions and 6 deletions
|
@ -1913,7 +1913,16 @@ settings.hooks = Webhooks
|
||||||
settings.githooks = Git Hooks
|
settings.githooks = Git Hooks
|
||||||
settings.basic_settings = Basic Settings
|
settings.basic_settings = Basic Settings
|
||||||
settings.mirror_settings = Mirror Settings
|
settings.mirror_settings = Mirror Settings
|
||||||
settings.mirror_settings.docs = Set up your project to automatically push and/or pull changes to/from another repository. Branches, tags, and commits will be synced automatically. <a target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io/en-us/repo-mirror/">How do I mirror repositories?</a>
|
settings.mirror_settings.docs = Set up your repository to automatically synchronize commits, tags and branches with another repository.
|
||||||
|
settings.mirror_settings.docs.disabled_pull_mirror.instructions = Set up your project to automatically push commits, tags and branches to another repository. Pull mirrors have been disabled by your site administrator.
|
||||||
|
settings.mirror_settings.docs.disabled_push_mirror.instructions = Set up your project to automatically pull commits, tags and branches from another repository.
|
||||||
|
settings.mirror_settings.docs.disabled_push_mirror.pull_mirror_warning = Right now, this can only be done in the "New Migration" menu. For more information, please consult:
|
||||||
|
settings.mirror_settings.docs.disabled_push_mirror.info = Push mirrors have been disabled by your site administrator.
|
||||||
|
settings.mirror_settings.docs.no_new_mirrors = Your repository is mirroring changes to or from another repository. Please keep in mind that you can't create any new mirrors at this time.
|
||||||
|
settings.mirror_settings.docs.can_still_use = Although you can't modify existing mirrors or create new ones, you may still use your existing mirror.
|
||||||
|
settings.mirror_settings.docs.pull_mirror_instructions = To set up a pull mirror, please consult:
|
||||||
|
settings.mirror_settings.docs.doc_link_title = How do I mirror repositories?
|
||||||
|
settings.mirror_settings.docs.pulling_remote_title = Pulling from a remote repository
|
||||||
settings.mirror_settings.mirrored_repository = Mirrored repository
|
settings.mirror_settings.mirrored_repository = Mirrored repository
|
||||||
settings.mirror_settings.direction = Direction
|
settings.mirror_settings.direction = Direction
|
||||||
settings.mirror_settings.direction.pull = Pull
|
settings.mirror_settings.direction.pull = Pull
|
||||||
|
|
|
@ -64,6 +64,7 @@ func SettingsCtxData(ctx *context.Context) {
|
||||||
ctx.Data["PageIsSettingsOptions"] = true
|
ctx.Data["PageIsSettingsOptions"] = true
|
||||||
ctx.Data["ForcePrivate"] = setting.Repository.ForcePrivate
|
ctx.Data["ForcePrivate"] = setting.Repository.ForcePrivate
|
||||||
ctx.Data["MirrorsEnabled"] = setting.Mirror.Enabled
|
ctx.Data["MirrorsEnabled"] = setting.Mirror.Enabled
|
||||||
|
ctx.Data["DisableNewPullMirrors"] = setting.Mirror.DisableNewPull
|
||||||
ctx.Data["DisableNewPushMirrors"] = setting.Mirror.DisableNewPush
|
ctx.Data["DisableNewPushMirrors"] = setting.Mirror.DisableNewPush
|
||||||
ctx.Data["DefaultMirrorInterval"] = setting.Mirror.DefaultInterval
|
ctx.Data["DefaultMirrorInterval"] = setting.Mirror.DefaultInterval
|
||||||
ctx.Data["MinimumMirrorInterval"] = setting.Mirror.MinInterval
|
ctx.Data["MinimumMirrorInterval"] = setting.Mirror.MinInterval
|
||||||
|
@ -108,6 +109,7 @@ func SettingsPost(ctx *context.Context) {
|
||||||
|
|
||||||
ctx.Data["ForcePrivate"] = setting.Repository.ForcePrivate
|
ctx.Data["ForcePrivate"] = setting.Repository.ForcePrivate
|
||||||
ctx.Data["MirrorsEnabled"] = setting.Mirror.Enabled
|
ctx.Data["MirrorsEnabled"] = setting.Mirror.Enabled
|
||||||
|
ctx.Data["DisableNewPullMirrors"] = setting.Mirror.DisableNewPull
|
||||||
ctx.Data["DisableNewPushMirrors"] = setting.Mirror.DisableNewPush
|
ctx.Data["DisableNewPushMirrors"] = setting.Mirror.DisableNewPush
|
||||||
ctx.Data["DefaultMirrorInterval"] = setting.Mirror.DefaultInterval
|
ctx.Data["DefaultMirrorInterval"] = setting.Mirror.DefaultInterval
|
||||||
ctx.Data["MinimumMirrorInterval"] = setting.Mirror.MinInterval
|
ctx.Data["MinimumMirrorInterval"] = setting.Mirror.MinInterval
|
||||||
|
|
|
@ -67,14 +67,44 @@
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{if .MirrorsEnabled}}
|
|
||||||
|
{{/* These variables exist to make the logic in the Settings window easier to comprehend and are not used later on. */}}
|
||||||
|
{{$newMirrorsPartiallyEnabled := or (not .DisableNewPullMirrors) (not .DisableNewPushMirrors)}}
|
||||||
|
{{/* .Repository.IsMirror is not always reliable if the repository is not actively acting as a mirror because of errors. */}}
|
||||||
|
{{$showMirrorSettings := or $newMirrorsPartiallyEnabled .Repository.IsMirror .PullMirror .PushMirrors}}
|
||||||
|
{{$newMirrorsEntirelyEnabled := and (not .DisableNewPullMirrors) (not .DisableNewPushMirrors)}}
|
||||||
|
{{$onlyNewPushMirrorsEnabled := and (not .DisableNewPushMirrors) .DisableNewPullMirrors}}
|
||||||
|
{{$onlyNewPullMirrorsEnabled := and .DisableNewPushMirrors (not .DisableNewPullMirrors)}}
|
||||||
|
{{$existingPushMirror := or .Repository.IsMirror .PushMirrors}}
|
||||||
|
{{$modifyBrokenPullMirror := and .Repository.IsMirror (not .PullMirror)}}
|
||||||
|
{{$isWorkingPullMirror := .PullMirror}}
|
||||||
|
|
||||||
|
{{if $showMirrorSettings}}
|
||||||
<h4 class="ui top attached header">
|
<h4 class="ui top attached header">
|
||||||
{{.locale.Tr "repo.settings.mirror_settings"}}
|
{{.locale.Tr "repo.settings.mirror_settings"}}
|
||||||
</h4>
|
</h4>
|
||||||
<div class="ui attached segment">
|
<div class="ui attached segment">
|
||||||
{{$.locale.Tr "repo.settings.mirror_settings.docs" | Safe}}
|
{{if $newMirrorsEntirelyEnabled}}
|
||||||
|
{{$.locale.Tr "repo.settings.mirror_settings.docs"}}
|
||||||
|
<a target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io/en-us/usage/repo-mirror/#pushing-to<ing-to-a-remote-repository">{{$.locale.Tr "repo.settings.mirror_settings.docs.doc_link_title"}}</a><br><br>
|
||||||
|
{{$.locale.Tr "repo.settings.mirror_settings.docs.pull_mirror_instructions"}}
|
||||||
|
<a target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io/en-us/usage/repo-mirror/#pulling-from-a-remote-repository">{{$.locale.Tr "repo.settings.mirror_settings.docs.doc_link_title"}}</a><br>
|
||||||
|
{{else if $onlyNewPushMirrorsEnabled}}
|
||||||
|
{{$.locale.Tr "repo.settings.mirror_settings.docs.disabled_pull_mirror.instructions"}}
|
||||||
|
<a target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io/en-us/usage/repo-mirror/#pulling-from-a-remote-repository">{{$.locale.Tr "repo.settings.mirror_settings.docs.doc_link_title"}}</a><br>
|
||||||
|
{{else if $onlyNewPullMirrorsEnabled}}
|
||||||
|
{{$.locale.Tr "repo.settings.mirror_settings.docs.disabled_push_mirror.instructions"}}
|
||||||
|
{{$.locale.Tr "repo.settings.mirror_settings.docs.disabled_push_mirror.pull_mirror_warning"}}
|
||||||
|
<a target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io/en-us/usage/repo-mirror/#pulling-from-a-remote-repository">{{$.locale.Tr "repo.settings.mirror_settings.docs.doc_link_title"}}</a><br><br>
|
||||||
|
{{$.locale.Tr "repo.settings.mirror_settings.docs.disabled_push_mirror.info"}}
|
||||||
|
{{if $existingPushMirror}}
|
||||||
|
{{$.locale.Tr "repo.settings.mirror_settings.docs.can_still_use"}}
|
||||||
|
{{end}}
|
||||||
|
{{else}}
|
||||||
|
{{$.locale.Tr "repo.settings.mirror_settings.docs.no_new_mirrors"}} {{$.locale.Tr "repo.settings.mirror_settings.docs.can_still_use"}}<br>
|
||||||
|
{{end}}
|
||||||
<table class="ui table">
|
<table class="ui table">
|
||||||
{{if or .Repository.IsMirror .PushMirrors}}
|
{{if $existingPushMirror}}
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th style="width:40%">{{$.locale.Tr "repo.settings.mirror_settings.mirrored_repository"}}</th>
|
<th style="width:40%">{{$.locale.Tr "repo.settings.mirror_settings.mirrored_repository"}}</th>
|
||||||
|
@ -84,7 +114,7 @@
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
{{end}}
|
{{end}}
|
||||||
{{if and .Repository.IsMirror (not .PullMirror)}}
|
{{if $modifyBrokenPullMirror}}
|
||||||
{{/* even if a repo is a pull mirror (IsMirror=true), the PullMirror might still be nil if the mirror migration is broken */}}
|
{{/* even if a repo is a pull mirror (IsMirror=true), the PullMirror might still be nil if the mirror migration is broken */}}
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -93,7 +123,7 @@
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
{{else if .PullMirror}}
|
{{else if $isWorkingPullMirror}}
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td>{{(MirrorRemoteAddress $.Context .Repository .PullMirror.GetRemoteName false).Address}}</td>
|
<td>{{(MirrorRemoteAddress $.Context .Repository .PullMirror.GetRemoteName false).Address}}</td>
|
||||||
|
|
Loading…
Reference in a new issue