* Lukas Fleischer <lfleischer@archlinux.org> (Thu, 18 Jun 2015 09:14:23 +0200):
+td#keywords { + white-space: normal; +}
Is this needed?
For one reason or another in archweb.css is (l. 246ff.): th, td { white-space: nowrap; text-align: left; } If we don't reset that for this cell, all keywords are attached to eachother in one long line, causing the layout to break. Ah, that was when the float: left wasn't there yet, with that it works without white-space: normal.
I tried the following CSS instead:
.keyword:link, .keyword:visited { float: left; margin: 1px .5ex 1px 0; padding: 0 1em; color: white; background-color: #36a; border-radius: 2px; }
.keyword:hover { cursor: pointer; }
I like the darker colors better. Opinions?
Yes, this looks better, but now the focus border is drawn around a selected tag, that makes the button in the row below jump (and the button itself moves to the right and bottom with 1px. I'll amend your CSS to circumvent this issue.
+<?php + if (has_credential(CRED_PKGBASE_SET_KEYWORDS, array($row["MaintainerUID"]))):
Don't indent here, please.
Okay. It is a nested if, so I thought I should indent it.
+ echo ' <a class="keyword" href="';
Please also drop the printed whitespace. We do not care about the formatting of the output and this makes the source code slightly harder to read.
Okay.
+ echo get_uri('/packages/') . '?O=0&SeB=nd&K=' . urlencode($kw); + echo '&outdated=&SB=p&SO=a&PP=50&do_Search=Go'; + echo '">' . htmlspecialchars($kw) . "</a>\n";
There's no need to specify all these values. Just specify the parameters that are needed (K and SB). The remaining values will be initialized with the corresponding default values automatically.
Done. The only drawback is that when clicking 'Go' on the search result page, the URL is filled with those default values, but the same page appears. This slightly 'breaks' the back button, as going one page back shows the same page again. With all default parameters already sent this behaviour isn't exhibited and the user goes just back to the package page after clicking 'Go' and 'back'.
All these changes need to be made in pkgbase_details.php as well. It would be desirable to get rid of this code duplication but for now, every change needs to be made in both places.
I'll do so and send a new patch soon.