mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
Add support for package base co-maintainers
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>
This commit is contained in:
parent
b32458cb8a
commit
fc23a9bd50
12 changed files with 156 additions and 9 deletions
21
web/html/comaintainers.php
Normal file
21
web/html/comaintainers.php
Normal file
|
@ -0,0 +1,21 @@
|
|||
<?php
|
||||
|
||||
set_include_path(get_include_path() . PATH_SEPARATOR . '../lib');
|
||||
|
||||
include_once("aur.inc.php");
|
||||
include_once("pkgbasefuncs.inc.php");
|
||||
|
||||
set_lang();
|
||||
check_sid();
|
||||
|
||||
if (!isset($base_id) || !has_credential(CRED_PKGBASE_EDIT_COMAINTAINERS, array(pkgbase_maintainer_uid($base_id)))) {
|
||||
header('Location: /');
|
||||
exit();
|
||||
}
|
||||
|
||||
html_header(__("Manage Co-maintainers"));
|
||||
$users = pkgbase_get_comaintainers($base_id);
|
||||
include('comaintainers_form.php');
|
||||
html_footer(AUR_VERSION);
|
||||
|
||||
|
|
@ -78,6 +78,9 @@ if (!empty($tokens[1]) && '/' . $tokens[1] == get_pkg_route()) {
|
|||
case "request":
|
||||
include('pkgreq.php');
|
||||
return;
|
||||
case "comaintainers":
|
||||
include('comaintainers.php');
|
||||
return;
|
||||
default:
|
||||
header("HTTP/1.0 404 Not Found");
|
||||
include "./404.php";
|
||||
|
|
|
@ -97,6 +97,8 @@ if (check_token()) {
|
|||
list($ret, $output) = pkgreq_file($ids, $_POST['type'], $_POST['merge_into'], $_POST['comments']);
|
||||
} elseif (current_action("do_CloseRequest")) {
|
||||
list($ret, $output) = pkgreq_close($_POST['reqid'], $_POST['reason'], $_POST['comments']);
|
||||
} elseif (current_action("do_EditComaintainers")) {
|
||||
list($ret, $output) = pkgbase_set_comaintainers($base_id, explode("\n", $_POST['users']));
|
||||
}
|
||||
|
||||
if (isset($_REQUEST['comment'])) {
|
||||
|
@ -124,7 +126,7 @@ if (check_token()) {
|
|||
}
|
||||
|
||||
$pkgs = pkgbase_get_pkgnames($base_id);
|
||||
if (count($pkgs) == 1) {
|
||||
if (!$output && count($pkgs) == 1) {
|
||||
/* Not a split package. Redirect to the package page. */
|
||||
if (empty($_SERVER['QUERY_STRING'])) {
|
||||
header('Location: ' . get_pkg_uri($pkgs[0]));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue