2020-12-28 21:30:06 +03:00
{{ if not $ .DisableHTTP }}
2021-04-13 00:52:48 +03:00
<button class="ui basic clone button no-transition" id="repo-clone-https" data-link=" {{ if $ .PageIsWiki }} {{ $ .WikiCloneLink .HTTPS }} {{ else }} {{ $ .CloneLink .HTTPS }} {{ end }} ">
2020-12-28 21:30:06 +03:00
{{ if UseHTTPS }} HTTPS {{ else }} HTTP {{ end }}
</button>
{{ end }}
{{ if and ( not $ .DisableSSH ) ( or $ .IsSigned $ .ExposeAnonSSH ) }}
2021-04-13 00:52:48 +03:00
<button class="ui basic clone button no-transition" id="repo-clone-ssh" data-link=" {{ if $ .PageIsWiki }} {{ $ .WikiCloneLink .SSH }} {{ else }} {{ $ .CloneLink .SSH }} {{ end }} ">
2020-12-28 21:30:06 +03:00
SSH
</button>
{{ end }}
{{ if not $ .DisableHTTP }}
2021-04-13 00:52:48 +03:00
<input id="repo-clone-url" value=" {{ if $ .PageIsWiki }} {{ $ .WikiCloneLink .HTTPS }} {{ else }} {{ $ .CloneLink .HTTPS }} {{ end }} " readonly>
2020-12-28 21:30:06 +03:00
{{ else if and ( not .DisableSSH ) ( or $ .IsSigned $ .ExposeAnonSSH ) }}
2021-04-13 00:52:48 +03:00
<input id="repo-clone-url" value=" {{ if $ .PageIsWiki }} {{ $ .WikiCloneLink .SSH }} {{ else }} {{ $ .CloneLink .SSH }} {{ end }} " readonly>
2020-12-28 21:30:06 +03:00
{{ end }}
{{ if or ( not $ .DisableHTTP ) ( and ( not $ .DisableSSH ) ( or $ .IsSigned $ .ExposeAnonSSH ) ) }}
2021-11-18 06:26:50 +03:00
<button class="ui basic icon button tooltip" id="clipboard-btn" data-content=" {{ .i18n .Tr "copy_url" }} " data-clipboard-target="#repo-clone-url">
2021-08-17 08:32:48 +03:00
{{ svg "octicon-paste" }}
2020-12-28 21:30:06 +03:00
</button>
{{ end }}
{{ if not ( and $ .DisableHTTP $ .DisableSSH ) }}
<script defer>
const isSSH = localStorage.getItem('repo-clone-protocol') === 'ssh';
const sshButton = document.getElementById('repo-clone-ssh');
const httpsButton = document.getElementById('repo-clone-https');
const input = document.getElementById('repo-clone-url');
2021-11-22 11:19:01 +03:00
if (input) input.value = (isSSH ? sshButton : httpsButton).getAttribute('data-link');
2020-12-28 21:30:06 +03:00
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>
{{ end }}