Keywords are hyperlinked so a user can search for other packages with
the same name and/or keyword.

Signed-off-by: Marcel Korpel <[email protected]>
---
Making the colours of the keyword tags a bit darker and applying all the
changes also to pkgbase_details.php.

 web/html/css/aurweb.css          | 18 ++++++++++++++++++
 web/template/pkg_details.php     | 14 +++++++++++++-
 web/template/pkgbase_details.php | 14 +++++++++++++-
 3 files changed, 44 insertions(+), 2 deletions(-)

diff --git a/web/html/css/aurweb.css b/web/html/css/aurweb.css
index a3f43bd..ca53fa1 100644
--- a/web/html/css/aurweb.css
+++ b/web/html/css/aurweb.css
@@ -53,6 +53,24 @@
        text-align:right;
 }
 
+.keyword:link, .keyword:visited {
+       float: left;
+       margin: 1px .5ex 1px 0;
+       padding: 0 1em;
+       color: white;
+       background-color: #36a;
+       border: 1px solid transparent;
+       border-radius: 2px;
+}
+
+.keyword:hover {
+       cursor: pointer;
+}
+
+.keyword:focus {
+       border: 1px dotted #000;
+}
+
 .text-button {
        background: transparent;
        border: none !important;
diff --git a/web/template/pkg_details.php b/web/template/pkg_details.php
index ae49e24..d2d3fe6 100644
--- a/web/template/pkg_details.php
+++ b/web/template/pkg_details.php
@@ -190,11 +190,14 @@ $sources = pkg_sources($row["ID"]);
                        <td><a href="<?= htmlspecialchars($row['URL'], 
ENT_QUOTES) ?>" title="<?= __('Visit the website for') . ' ' . 
htmlspecialchars( $row['Name'])?>"><?= htmlspecialchars($row['URL'], 
ENT_QUOTES) ?></a></td>
                </tr>
 <?php
-if (has_credential(CRED_PKGBASE_SET_KEYWORDS, array($row["MaintainerUID"]))):
+if (has_credential(CRED_PKGBASE_SET_KEYWORDS, array($row["MaintainerUID"])) || 
count($keywords) > 0):
 ?>
                <tr>
                        <th><?= __('Keywords') . ': ' ?></th>
                        <td>
+<?php
+if (has_credential(CRED_PKGBASE_SET_KEYWORDS, array($row["MaintainerUID"]))):
+?>
                                <form method="post" action="<?= 
htmlspecialchars(get_pkgbase_uri($row['BaseName']), ENT_QUOTES); ?>">
                                        <div>
                                                <input type="hidden" 
name="action" value="do_SetKeywords" />
@@ -205,6 +208,15 @@ if (has_credential(CRED_PKGBASE_SET_KEYWORDS, 
array($row["MaintainerUID"]))):
                                                <input type="submit" value="<?= 
__('Update') ?>"/>
                                        </div>
                                </form>
+<?php
+else:
+       foreach ($keywords as $kw) {
+               echo '<a class="keyword" href="';
+               echo get_uri('/packages/') . '?K=' . urlencode($kw) . 
'&amp;SB=p';
+               echo '">' . htmlspecialchars($kw) . "</a>\n";
+       }
+endif;
+?>
                        </td>
                </tr>
 <?php endif; ?>
diff --git a/web/template/pkgbase_details.php b/web/template/pkgbase_details.php
index fa24e12..61e167b 100644
--- a/web/template/pkgbase_details.php
+++ b/web/template/pkgbase_details.php
@@ -129,11 +129,14 @@ $pkgs = pkgbase_get_pkgnames($base_id);
                        </td>
                </tr>
 <?php
-if (has_credential(CRED_PKGBASE_SET_KEYWORDS, array($row["MaintainerUID"]))):
+if (has_credential(CRED_PKGBASE_SET_KEYWORDS, array($row["MaintainerUID"])) || 
count($keywords) > 0):
 ?>
                <tr>
                        <th><?= __('Keywords') . ': ' ?></th>
                        <td>
+<?php
+if (has_credential(CRED_PKGBASE_SET_KEYWORDS, array($row["MaintainerUID"]))):
+?>
                                <form method="post" action="<?= 
htmlspecialchars(get_pkgbase_uri($row['Name']), ENT_QUOTES); ?>">
                                        <div>
                                                <input type="hidden" 
name="action" value="do_SetKeywords" />
@@ -144,6 +147,15 @@ if (has_credential(CRED_PKGBASE_SET_KEYWORDS, 
array($row["MaintainerUID"]))):
                                                <input type="submit" value="<?= 
__('Update') ?>"/>
                                        </div>
                                </form>
+<?php
+else:
+       foreach ($keywords as $kw) {
+               echo '<a class="keyword" href="';
+               echo get_uri('/packages/') . '?K=' . urlencode($kw) . 
'&amp;SB=p';
+               echo '">' . htmlspecialchars($kw) . "</a>\n";
+       }
+endif;
+?>
                        </td>
                </tr>
 <?php endif; ?>
-- 
2.4.4

Reply via email to