summaryrefslogtreecommitdiffstats
path: root/web
AgeCommit message (Collapse)AuthorFilesLines
2015-06-08Add Chinese (Taiwan) translationsLukas Fleischer1-1/+2
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-08Release 4.0.0-rc1v4.0.0-rc1Lukas Fleischer1-1/+1
Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-04pkgfuncs.inc.php: Remove a conflict markerLukas Fleischer1-1/+0
Remove a Git conflict marker that was added accidentally in 74edb6f (Use Git repositories to store packages, 2014-06-06). Reported-by: Johannes Löthberg <johannes@kyriasis.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-06-01Use gitnamespaces for efficient storageLukas Fleischer1-3/+3
Instead of using one Git repository per package, use a single large object storage for space efficiency. The refs of the individual package bases are divided using gitnamespaces(7) which allows for exposing each namespace as an independent repository easily. Also, git-serve is modified to create a branch for each package, allowing to browse the large repository with cgit. Helped-by: Florian Pritz <bluewind@xinu.at> Helped-by: Johannes Löthberg <johannes@kyriasis.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-31Do not show the activity check box when registeringLukas Fleischer1-0/+2
Creating an inactive account does not make sense. Hide the activity check box from the registration page. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-31Show the SSH key field on the registration pageLukas Fleischer2-3/+2
Now that we have a short explanation on how we use the SSH public key, we can show that field on the registration page. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-31Add more details on the SSH public key fieldLukas Fleischer2-7/+16
Also, reorder the fields such that optional fields come last. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-31Allow for resetting the SSH public keyLukas Fleischer1-2/+2
Use NULL instead of an empty string if the SSH public key field is left empty. Additionally, do not check for duplicate keys in that case. Fixes FS#45109. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-22Include user name in password reset emailsLukas Fleischer1-4/+6
Fixes FS#44320. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-22Update co-maintainer list when promoting a userLukas Fleischer1-13/+20
When a user disowns a package and promotes a co-maintainer, remove that new maintainer from the list of package co-maintainers. Since only the package maintainer can manage co-maintainers, this must happen before the actual disown operation. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-22Fix processing of pkgbase_get_comaintainers()Lukas Fleischer2-9/+12
pkgbase_get_comaintainers() returns an array of user names, not an array of user IDs. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-22Move package disowning to a separate pageLukas Fleischer3-4/+64
The disown link in the package actions box leads to a new page (pkgdisown.php) that can be used to confirm package disowning. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-22Update co-maintainers when disowning a packageLukas Fleischer1-0/+18
When a user disowns a package, the co-maintainer with the highest priority automatically becomes the new maintainer. When the package is disowned by a Trusted User or a Developer, the list of co-maintainers is cleared. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-22Fix the permission check in pkgbase_adopt()Lukas Fleischer1-10/+18
Filter the affected package bases before closing any package requests. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-22Store co-maintainer prioritiesLukas Fleischer1-2/+5
In addition to saving the list of package co-maintainers, also save their order. This makes it possible to define a "primary" co-maintainer. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-22Support boolean operators in search queriesLukas Fleischer1-1/+18
This adds very basic support for boolean search queries such as "video or movie" or "lin and not linux". However, nested queries such as "(video or movie) and editing" are not (yet) supported. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-22Do not allow more than 20 terms in search queriesLukas Fleischer1-0/+11
Specifying a huge number of search terms currently results in complex SQL queries. In practice, queries with more than 20 terms are rarely needed. Ignore everything apart from the first 20 keywords to prevent from potential abuse. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-22Use keyword search by defaultLukas Fleischer1-3/+5
Change the default search mode such that packages that contain all of the space-separated search terms are returned. For example, the query image edit "command line" returns all packages where "image", "edit" and "command line" occurs in the package name or description. This is much more convenient and general than a simple substring search (one can still perform a substring search by quoting the whole search term). Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-21Make the type parameter of pkgreq_by_pkgbase() optionalLukas Fleischer2-7/+7
This simplifies the code a bit, improves maintainability and reduces the number of SQL queries when deleting a package. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-05-21Fix email body of password reset emailsLukas Fleischer1-1/+1
When the password reset function was factored out in 5d31bb2 (Move reset key submission to a separate function, 2013-03-19), a semicolon was accidentally replaced by a concatenation operator. As a result of this, all password reset emails sent since mid-2013 only contained a password reset link without any description. Fix this by terminating the assignment with a semicolon again. Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
2015-03-04Automatically close requestsLukas Fleischer2-1/+51
Close requests automatically when a package is deleted or orphaned. Implements FS#43799. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2015-03-04Allow users to delete their own packagesLukas Fleischer2-2/+17
Allow users to remove their own package bases for a short period of time after initial submission (defaults to one day). Implements FS#43648. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2015-02-04Rename the AUR software to aurwebLukas Fleischer22-127/+24
Rename the project to help differentiate between the software providing access to the Arch User Repository and the collection of source packages itself. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2015-01-09Link to the cgit log from package detailsLukas Fleischer2-2/+8
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2015-01-07Merge branch 'maint'Lukas Fleischer1-1/+1
2015-01-07Fix link to package base votersLukas Fleischer1-1/+1
Reported-by: Bartłomiej Piotrowski <b@bpiotrowski.pl> Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2015-01-07Add support for package base co-maintainersLukas Fleischer8-1/+119
This allows for having multiple co-maintainers for AUR packages. Co-maintainers have push access to the package base Git repository but are not allowed to change the package base category, disown the package or modify the list of co-maintainers. The primary maintainer of an AUR package can edit the list of co-maintainers from the Package Actions box. Implements FS#17911. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-29Disallow specifying an SSH key during registrationLukas Fleischer1-0/+2
Make sure that users confirm their email addresses before setting an initial SSH key. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-29Add links to public and private clone URLsLukas Fleischer2-4/+16
Show a public clone URL (using Git over HTTP) by default and only show the private clone URL to the package maintainer. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-29Use the AUR footer in cgitLukas Fleischer2-7/+14
Use the footer that is already used in other parts of the AUR website instead of the footer from the main Arch Linux website. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-29Use a custom logoLukas Fleischer6-2/+11
Currently, the AUR sites are hard to distinguish from the official website, especially when browsing Git repositories in cgit. Add "user repository" to the logo to make it distinguishable from the official site. In order to avoid confusion, also change the link in the logo to the AUR home page instead of the main Arch Linux website. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-28Add cgit configuration and style sheetLukas Fleischer4-0/+876
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-28Hide fresh package bases from stats and resultsLukas Fleischer2-1/+2
Do not show package bases that have just been created in the package update statistics or in the search results. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-27Add public clone URLs to package detailsLukas Fleischer2-0/+10
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-27Use Git repositories to store packagesLukas Fleischer11-3660/+11
* Remove package submission page from the web interface. * Replace PKGBUILD and tarball links with links to cgit. * Remove the "URLPath" field from RPC replies. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-27Add support for adding SSH public keys to profilesLukas Fleischer3-9/+79
Users can now add an SSH public key on the account edit page. This will later be used to authenticate users via SSH. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-27Use raw scanner mode in config_get()Lukas Fleischer1-1/+1
We do not want PHP to parse the values for us. Use raw scanner mode to avoid issues with certain values, such as regular expressions. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-27Release 3.5.1v3.5.1Lukas Fleischer1-1/+1
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-19Suggest using makepkg instead of mkaurballLukas Fleischer1-2/+2
pacman 4.2.0 supports .SRCINFO and generates meta data by default. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-13Redirect to requests page after accepting deletionsLukas Fleischer1-1/+2
Fixes FS#43100. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-13Show user name in title on the account details pageLukas Fleischer1-13/+19
Suggested-by: Florian Pritz <bluewind@xinu.at> Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-12-13Avoid double slashes in notification email bodyLukas Fleischer6-20/+26
Refactor some of the URI generation code to avoid double slashes in absolute URIs. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-11-22Release 3.5.0v3.5.0Lukas Fleischer1-1/+1
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-11-21Remove duplicate slash in the password reset URLLukas Fleischer1-1/+1
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-11-21Check password length on the password reset formLukas Fleischer1-0/+4
We already check for a minimum password length on the account edit page. Add the same check to the password reset form (which is also used to set an initial password). Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-11-21Always use virtual URLsLukas Fleischer7-170/+45
Support for non-virtual URLs has been broken for a long time and is no longer used on the official AUR setup. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-11-19Fix login linkLukas Fleischer1-1/+1
Regression introduced in 76343fb (Use an INI-style configuration file, 2014-10-24). Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-11-18Add support for .SRCINFOLukas Fleischer1-3/+4
pacman officially supports .SRCINFO since commit 6029a77 (makepkg: introduce .SRCINFO files for source packages, 2014-11-08). Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-10-24Use an INI-style configuration fileLukas Fleischer20-207/+153
Replace web/lib/config.inc.php with an INI-style configuration file. This allows us to get rid of several globals and makes it easier to use the same configuration file in external scripts. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
2014-10-17voters.php: Show time stamps if availableLukas Fleischer2-2/+7
Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>