The Git repository URLs are not meant to be visited using a web browser.
Copy the link to the clipboard instead.

Signed-off-by: Lukas Fleischer <lfleisc...@archlinux.org>
---
 web/template/pkg_details.php     | 17 +++++++++++++++--
 web/template/pkgbase_details.php | 17 +++++++++++++++--
 2 files changed, 30 insertions(+), 4 deletions(-)

diff --git a/web/template/pkg_details.php b/web/template/pkg_details.php
index 93b5f1e..c6bb32d 100644
--- a/web/template/pkg_details.php
+++ b/web/template/pkg_details.php
@@ -100,9 +100,9 @@ $base_uri = get_pkgbase_uri($row['BaseName']);
                <tr>
                        <th><?= __('Git Clone URL') . ': ' ?></th>
                        <td>
-                               <a href="<?= $git_clone_uri_anon ?>"><?= 
$git_clone_uri_anon ?></a> (<?= __('read-only') ?>)
+                               <a class="copy" href="<?= $git_clone_uri_anon 
?>"><?= $git_clone_uri_anon ?></a> (<?= __('read-only') ?>, <?= __('click to 
copy') ?>)
                                <?php if (in_array($uid, $maintainers)): ?>
-                               <br /> <a href="<?= $git_clone_uri_priv ?>"><?= 
$git_clone_uri_priv ?></a>
+                               <br /> <a class="copy" href="<?= 
$git_clone_uri_priv ?>"><?= $git_clone_uri_priv ?></a> (<?= __('click to copy') 
?>)
                                <?php endif; ?>
                        </td>
                </tr>
@@ -306,3 +306,16 @@ endif;
                <?php endif; ?>
        </div>
 </div>
+
+<script>
+$(document).ready(function() {
+       $('.copy').click(function(e) {
+               var tmp = $("<input>");
+               $("body").append(tmp);
+               tmp.val($(this).text()).select();
+               document.execCommand("copy");
+               tmp.remove();
+               e.preventDefault();
+       });
+});
+</script>
diff --git a/web/template/pkgbase_details.php b/web/template/pkgbase_details.php
index b2ce8cb..a6857c4 100644
--- a/web/template/pkgbase_details.php
+++ b/web/template/pkgbase_details.php
@@ -49,9 +49,9 @@ $base_uri = get_pkgbase_uri($row['Name']);
                <tr>
                        <th><?= __('Git Clone URL') . ': ' ?></th>
                        <td>
-                               <a href="<?= $git_clone_uri_anon ?>"><?= 
$git_clone_uri_anon ?></a> (<?= __('read-only') ?>)
+                               <a class="copy" href="<?= $git_clone_uri_anon 
?>"><?= $git_clone_uri_anon ?></a> (<?= __('read-only') ?>, <?= __('click to 
copy') ?>)
                                <?php if (in_array($uid, $maintainers)): ?>
-                               <br /> <a href="<?= $git_clone_uri_priv ?>"><?= 
$git_clone_uri_priv ?></a>
+                               <br /> <a class="copy" href="<?= 
$git_clone_uri_priv ?>"><?= $git_clone_uri_priv ?></a> (<?= __('click to copy') 
?>)
                                <?php endif; ?>
                        </td>
                </tr>
@@ -135,3 +135,16 @@ endif;
                </div>
        </div>
 </div>
+
+<script>
+$(document).ready(function() {
+       $('.copy').click(function(e) {
+               var tmp = $("<input>");
+               $("body").append(tmp);
+               tmp.val($(this).text()).select();
+               document.execCommand("copy");
+               tmp.remove();
+               e.preventDefault();
+       });
+});
+</script>
-- 
2.24.0

Reply via email to