Ensure isSSH is set whenever DISABLE_HTTP_GIT is set (#19028) (#19146)

Backport #19028

When DISABLE_HTTP_GIT is set we should always show the SSH button

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
This commit is contained in:
zeripath 2022-03-21 00:59:55 +00:00 committed by GitHub
parent 1aa5dc75df
commit 08feb6b664
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 19 additions and 12 deletions

View File

@ -19,17 +19,24 @@
</button> </button>
{{end}} {{end}}
{{if not (and $.DisableHTTP $.DisableSSH)}} {{if not (and $.DisableHTTP $.DisableSSH)}}
<script defer> <script>
const isSSH = localStorage.getItem('repo-clone-protocol') === 'ssh'; <!-- /* eslint-disable */ -->
const sshButton = document.getElementById('repo-clone-ssh'); window.config.pageData['repoCloneButtons']= {httpsDisabled: {{$.DisableHTTP}}};
const httpsButton = document.getElementById('repo-clone-https'); </script>
const input = document.getElementById('repo-clone-url'); <script>
if (input) input.value = (isSSH ? sshButton : httpsButton).getAttribute('data-link'); (() => {
if (sshButton) sshButton.classList[isSSH ? 'add' : 'remove']('primary'); const tmplData = window.config.pageData.repoCloneButtons;
if (httpsButton) httpsButton.classList[isSSH ? 'remove' : 'add']('primary'); const isSSH = tmplData.httpsDisabled || localStorage.getItem('repo-clone-protocol') === 'ssh';
setTimeout(() => { const sshButton = document.getElementById('repo-clone-ssh');
if (sshButton) sshButton.classList.remove('no-transition'); const httpsButton = document.getElementById('repo-clone-https');
if (httpsButton) httpsButton.classList.remove('no-transition'); const input = document.getElementById('repo-clone-url');
}, 100); if (input) input.value = (isSSH ? sshButton : httpsButton).getAttribute('data-link');
if (sshButton) sshButton.classList[isSSH ? 'add' : 'remove']('primary');
if (httpsButton) httpsButton.classList[isSSH ? 'remove' : 'add']('primary');
setTimeout(() => {
if (sshButton) sshButton.classList.remove('no-transition');
if (httpsButton) httpsButton.classList.remove('no-transition');
}, 100);
})();
</script> </script>
{{end}} {{end}}