summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Korpel <marcel.korpel@gmail.com>2015-06-18 17:11:48 +0200
committerLukas Fleischer <lfleischer@archlinux.org>2015-06-19 14:40:08 +0200
commitd852da79e4c3de66552bc216a76bdfa40bc1e0bd (patch)
tree145d3fc7ebf14c5a8de9cabae4269f7b1161f1f4
parent6e3cbb9e65c0a743b5f8d88de42e2fddaaaaaa99 (diff)
downloadaur-d852da79e4c3de66552bc216a76bdfa40bc1e0bd.tar.gz
aur-d852da79e4c3de66552bc216a76bdfa40bc1e0bd.tar.xz
pkgbase_details.php/pkg_details.php: Show keywords
Keywords are hyperlinked so a user can search for other packages with the same name and/or keyword. Signed-off-by: Marcel Korpel <marcel.korpel@gmail.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
-rw-r--r--web/html/css/aurweb.css18
-rw-r--r--web/template/pkg_details.php14
-rw-r--r--web/template/pkgbase_details.php14
3 files changed, 44 insertions, 2 deletions
diff --git a/web/html/css/aurweb.css b/web/html/css/aurweb.css
index 346f2eab..620e0fab 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 90e57294..2f121e72 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 99893699..dc30e48e 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; ?>