Commit graph

48 commits

Author SHA1 Message Date
Lukas Fleischer
03c6304e19 Rework permission handling
Add a new function has_credential() that checks whether the currently
logged in user is allowed to perform a given action. Moving all
permission handling to this central place makes adding new user groups
and adjusting permissions much more convenient.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-07-15 22:56:57 +02:00
Lukas Fleischer
7f29756196 Handle plurals in translations
Use ngettext() to handle plurals properly. Also, split pagination
captions into two strings.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-07-04 12:16:58 +02:00
Lukas Fleischer
f08bfa5d01 pkg_search_results.php: Link to account when logged in
Replace the maintainer package search links with links to the
maintainer's account when browsing the search results as a logged-in
user.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-04-05 16:52:15 +02:00
Lukas Fleischer
f461344211 Move package actions to package bases
Package actions now operate on package bases instead of packages. Move
all actions to the correct locations.

This also fixes some issues with comment notifications.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-04-05 13:54:06 +02:00
Lukas Fleischer
361e251bb1 pkg_search_results.php: Mark out-of-date packages
Highlight the version number of out-of-date packages on the package
search results page using the "flagged" class from archweb.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2012-10-14 15:07:25 +02:00
Lukas Fleischer
360ce61f7a pkg_search_results.php: Move version to a separate column
Synchronize the column layout with archweb. This also allows for
easily highlighting the version number of out-of-date packages.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2012-10-14 15:07:22 +02:00
Lukas Fleischer
eb7efe33ca pkg_search_results.php: Word-wrap package description
Implements FS#31803.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2012-10-04 19:51:59 +02:00
Lukas Fleischer
6102759b7c Use echo shortcut syntax
Replace all occurrences of "<?php echo" and "<?php print" by "<?=" to
reduce noise in templates.

Note that as of PHP 5.4.0, "<?=" is always available and no longer
requires "short_open_tag" to be set.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2012-09-24 12:23:04 +02:00
Lukas Fleischer
4aad42d993 Sync search result statistics with archweb
* Use archweb classes for search result statistics.
* Add some space between page numbers.
* Display current page number instead of current item range.
* Hide page numbers if the result fits into a single page.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2012-09-19 02:42:01 +02:00
Lukas Fleischer
03486c3b6f Use virtual paths for package details
Extend the routing front/back ends to allow for using
"/package/$pkgname/" for individual packages.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2012-07-15 22:48:32 +02:00
Lukas Fleischer
2425f963f8 Use virtual path feature for links
Use virtual paths in links (e.g. link to "/packages/" instead of
"/packages.php" etc.) if the virtual path feature is enabled.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2012-07-15 22:44:51 +02:00
Lukas Fleischer
f3ce74c714 Merge branch 'maint'
Conflicts:
	web/html/account.php
	web/html/addvote.php
	web/html/pkgsubmit.php
	web/lib/acctfuncs.inc.php
	web/template/actions_form.php
	web/template/pkg_comment_form.php
	web/template/pkg_comments.php
	web/template/pkg_details.php
	web/template/pkg_search_results.php
	web/template/tu_details.php
2012-07-14 22:52:04 +02:00
canyonknight
84d21e6f30 pkg_search_results.php: Pull out DB code
* Move DB code from pkg_search_results.php to already existing function
in pkgfuncs.inc.php
* Centralization of DB code important in a future transition to PDO interface

Signed-off-by: canyonknight <canyonknight@gmail.com>
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2012-07-06 11:26:56 +02:00
canyonknight
2416ffea66 pkg_search_results.php: Overhaul to match archweb
* Change search results table to use CSS from archweb with better alternating
line contrast
* Change table results header to match archweb
* General clean-up of XHTML

Signed-off-by: canyonknight <canyonknight@gmail.com>
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2012-07-06 11:26:03 +02:00
Lukas Fleischer
f90d569376 Remove all traces of "pgboxtitle"
Using a div container to format heading is ridiculous. Use "<h2></h2>"
instead.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
Signed-off-by: canyonknight <canyonknight@gmail.com>
2012-07-06 11:25:58 +02:00
canyonknight
2c93f0a98f Implement token system to fix CSRF vulnerabilities
Specially crafted pages can force authenticated users to unknowingly perform
actions on the AUR website despite being on an attacker's website. This
cross-site request forgery (CSRF) vulnerability applies to all POST data on
the AUR.

Implement a token system using a double submit cookie. Have a hidden form
value on every page containing POST forms. Use the newly added check_token() to
verify the token sent via POST matches the "AURSID" cookie value. Random
nature of the token limits potential for CSRF.

Signed-off-by: canyonknight <canyonknight@gmail.com>
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2012-06-24 10:59:23 +02:00
Dan McGee
8dc7b37909 Remove a boatload of inline table styles
Replacing with CSS styles where appropriate. A previously unused CSS
style is tweaked in the stylesheet to match most of what was done via
non-CSS styling.

Signed-off-by: Dan McGee <dan@archlinux.org>
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2011-10-24 17:57:52 +02:00
Lukas Fleischer
87bdee60bc Allow for merging deleted packages into existing ones
Merge all comments and votes of deleted packages into another package if
the "Merge with" field is used. Duplicate votes (votes from a user who
already voted on the target package or voted on more than one of the
deleted packages) are discarded.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2011-08-11 16:17:07 +02:00
Lukas Fleischer
9b112a56d0 Fix XSS vulnerability in package search results and package details.
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2011-03-11 19:15:04 +01:00
Lukas Fleischer
7f9e498e48 Fix broken XHTML.
Fix a lot of invalid XHTML in the templates and actions. There might
still be some legacy code left, but this should cover most of it.

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2011-03-11 19:00:50 +01:00
Dan McGee
80401c6afc More PHP Notice undefined fixups
Signed-off-by: Dan McGee <dan@archlinux.org>
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2011-03-10 18:15:59 +01:00
PyroPeter
346e82716b pkg_search_results: replace blind-table with floating divs
* I tried to remove errors in the sgml-structure
  e.g.: <div>
          <?php if (foo) { ?>
            </div>
          <?php } ?>
* I did not remove or add code (except the <table> and <div> stuff, of cause).
  I only changed the order of the html/php-tags.
* The bottom and top of the script are now properly indented.
  I did not indent the middle part (table of search results) because that would
  render the diff completely useless.

Signed-off-by: PyroPeter <abi1789@googlemail.com>
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2011-02-18 13:52:35 +01:00
PyroPeter
1fdecbd5a4 pkg_search_results: rewrite of pagination
* Most of the PHP-code was moved to pkgfuncs.php to keep the template simple.

Signed-off-by: PyroPeter <abi1789@googlemail.com>
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2011-02-17 18:54:26 +01:00
Dan McGee
7f5af61c88 Drop PackageLocations table and references
We don't need this anymore since all packages managed here are
well...managed here. Rip out all of the places we were using this field,
many of which depended on the magic value '2' anyway.

On the display side of things, we had a column that was always showing
'unsupported' that is now gone, and you can no longer sort by this column.

Signed-off-by: Dan McGee <dan@archlinux.org>
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2011-02-01 12:41:08 +01:00
Lukas Fleischer
517ac744b2 Implemented "First" and "Last" link for search results (fixes FS#15690).
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2011-01-20 20:45:09 +01:00
Lukas Fleischer
eda713032c Add timestamp when a package is flagged out-of-date (FS#20848).
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
- resolve conflict and omit i18n changes.
2010-11-10 14:50:35 -05:00
Manuel Tortosa
fa331f2cfe Fix columns headers visibility
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2010-10-03 03:50:07 -04:00
Lukas Fleischer
b5bc6ab742 Confirmation when deleting packages
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2010-07-01 21:19:18 -04:00
Lukas Fleischer
b18fb08ddc Add sorting by "Voted" and "Notify" fields
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2010-06-04 18:22:22 -04:00
Loui Chang
2f0a1911be Change legend style and default font size.
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-11-24 13:14:03 -05:00
Loui Chang
d29a7a5a67 pkg_search_results: Translate special characters to html entities.
Reported-by: Cedric Staniewski <cedric@gmx.ca>
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-10-26 12:54:31 -04:00
Loui Chang
9c98047f86 Fix search output if no results are found.
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-03-03 13:22:53 -05:00
Loui Chang
75758801d8 XHTML Validation fixes.
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-02-18 09:42:39 -05:00
Loui Chang
8d16f647f9 Clean up some markup and styles in page navigation.
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-02-06 18:24:04 -05:00
Callan Barrett
5702137e67 Change pagination style
Looks different now, next and previous on their own sides and elips for both

Signed-off-by: Callan Barrett <wizzomafizzo@gmail.com>
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-02-03 17:04:21 -05:00
Loui Chang
8d31fb8a50 Indicate when there are more search result pages than numbered links show.
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-01-24 13:10:16 -05:00
Loui Chang
f82f3dd247 Fix a few xhtml validation errors.
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-01-23 15:49:41 -05:00
Loui Chang
03edceff50 Add Previous and Next links for search results.
Move things around at the bottom of the search results page.

Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-01-23 15:02:49 -05:00
Loui Chang
80a95443c5 Remove urlencode('K') in pkg_search_results.
The urlencoded string should only be used for href, but it was being
applied and used in printed output, like the keywords textbox.

This fixes a problem that was reported in
FS#12791 - Faster navigation withing package search listing by page numbers

Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-01-23 10:38:13 -05:00
Loui Chang
345fbfe99f Only print links for up to five previous and next search results pages.
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-01-22 19:46:48 -05:00
Loui Chang
384f1ba3c9 Remove Less and More links from search results page.
Don't show extra search results link if there is only one page of results.
Fix indenting and coding style.

Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-01-19 15:28:10 -05:00
Gergely Imreh
2383f7dc06 Change: Switching "Legend" and number of results on search page
This is to present things in a bit more logical manner with the
search results page navigation.

Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-01-19 14:41:20 -05:00
Gergely Imreh
0bdfe847e3 Add: page numbering of AUR search results
On the search results page the number of pages is displayed and functions
as a link, for faster navigation (not just the usual "Less/More" buttons.

Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-01-19 14:39:21 -05:00
Dan McGee
8f97330100 Store account type in local var when possible
No need to call this function way too often, especially when on the package
list page where it could be called up to once per row.

Signed-off-by: Dan McGee <dan@archlinux.org>
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2009-01-04 14:09:53 -05:00
Callan Barrett
a16f4c77b3 Make search page use mkurl function, change variables around
Changed all the normal variables to their $_GET counterparts so everything is destructively changing the original variables, there should be no issue with this. If there I guess we need to consider making mkurl use a custom array of variables rather than $_GET

Signed-off-by: Callan Barrett <wizzomafizzo@gmail.com>
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2008-12-29 17:33:19 -05:00
Loui Chang
aebf02aa8c Don't require login to see out of date packages from package search.
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2008-12-22 22:02:01 +09:00
Loui Chang
8f6edc4517 Encode search string for use in anchor tags.
Sorting, and viewing more results resets the search
if you search for '#' in 1.5.3. This should fix that bug.

Signed-off-by: Loui Chang <louipc.ist@gmail.com>
Signed-off-by: Callan Barrett <wizzomafizzo@gmail.com>
2008-12-22 13:25:52 +09:00
Callan Barrett
b4a62c4915 Move package search results to a template
Logic is separated from html as much as possible, all html in a template

Signed-off-by: Callan Barrett <wizzomafizzo@gmail.com>
Signed-off-by: Loui Chang <louipc.ist@gmail.com>
2008-12-21 12:44:31 -05:00