mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
Add a new user group "Trusted User & Developer"
This group has full permissions on everything. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
This commit is contained in:
parent
1b901616dc
commit
3610f3c6a4
7 changed files with 26 additions and 5 deletions
|
@ -15,6 +15,7 @@ CREATE TABLE AccountTypes (
|
|||
INSERT INTO AccountTypes (ID, AccountType) VALUES (1, 'User');
|
||||
INSERT INTO AccountTypes (ID, AccountType) VALUES (2, 'Trusted User');
|
||||
INSERT INTO AccountTypes (ID, AccountType) VALUES (3, 'Developer');
|
||||
INSERT INTO AccountTypes (ID, AccountType) VALUES (4, 'Trusted User & Developer');
|
||||
|
||||
|
||||
-- User information for each user regardless of type.
|
||||
|
|
5
upgrading/3.4.0.txt
Normal file
5
upgrading/3.4.0.txt
Normal file
|
@ -0,0 +1,5 @@
|
|||
1. Add the "Trusted User & Developer" user group:
|
||||
|
||||
----
|
||||
INSERT INTO AccountTypes (ID, AccountType) VALUES (4, 'Trusted User & Developer');
|
||||
----
|
|
@ -338,6 +338,9 @@ function search_results_page($O=0,$SB="",$U="",$T="",
|
|||
} elseif ($T == "d") {
|
||||
$q.= "AND AccountTypes.ID = 3 ";
|
||||
$search_vars[] = "T";
|
||||
} elseif ($T == "td") {
|
||||
$q.= "AND AccountTypes.ID = 4 ";
|
||||
$search_vars[] = "T";
|
||||
}
|
||||
if ($S) {
|
||||
$q.= "AND Users.Suspended = 1 ";
|
||||
|
@ -1080,7 +1083,8 @@ function cast_proposal_vote($voteid, $uid, $vote, $newtotal) {
|
|||
* @return bool True if permission to edit the account, otherwise false
|
||||
*/
|
||||
function can_edit_account($acctinfo) {
|
||||
if ($acctinfo['AccountType'] == 'Developer') {
|
||||
if ($acctinfo['AccountType'] == 'Developer' ||
|
||||
$acctinfo['AccountType'] == 'Trusted User & Developer') {
|
||||
return has_credential(CRED_ACCOUNT_EDIT_DEV);
|
||||
}
|
||||
|
||||
|
|
|
@ -48,7 +48,8 @@ function has_credential($credential, $approved_users=array()) {
|
|||
case CRED_PKGBASE_NOTIFY:
|
||||
case CRED_PKGBASE_VOTE:
|
||||
return ($atype == 'User' || $atype == 'Trusted User' ||
|
||||
$atype == 'Developer');
|
||||
$atype == 'Developer' ||
|
||||
$atype == 'Trusted User & Developer');
|
||||
case CRED_ACCOUNT_CHANGE_TYPE:
|
||||
case CRED_ACCOUNT_EDIT:
|
||||
case CRED_ACCOUNT_LAST_LOGIN:
|
||||
|
@ -63,13 +64,16 @@ function has_credential($credential, $approved_users=array()) {
|
|||
case CRED_PKGBASE_UNFLAG:
|
||||
case CRED_PKGREQ_CLOSE:
|
||||
case CRED_PKGREQ_LIST:
|
||||
return ($atype == 'Trusted User' || $atype == 'Developer');
|
||||
return ($atype == 'Trusted User' || $atype == 'Developer' ||
|
||||
$atype == 'Trusted User & Developer');
|
||||
case CRED_TU_ADD_VOTE:
|
||||
case CRED_TU_LIST_VOTES:
|
||||
case CRED_TU_VOTE:
|
||||
return ($atype == 'Trusted User');
|
||||
return ($atype == 'Trusted User' ||
|
||||
$atype == 'Trusted User & Developer');
|
||||
case CRED_ACCOUNT_EDIT_DEV:
|
||||
return ($atype == 'Developer');
|
||||
return ($atype == 'Developer' ||
|
||||
$atype == 'Trusted User & Developer');
|
||||
}
|
||||
|
||||
return false;
|
||||
|
|
|
@ -17,6 +17,8 @@
|
|||
print __("Trusted User");
|
||||
} elseif ($row["AccountType"] == "Developer") {
|
||||
print __("Developer");
|
||||
} elseif ($row["AccountType"] == "Trusted User & Developer") {
|
||||
print __("Trusted User & Developer");
|
||||
}
|
||||
?>
|
||||
</td>
|
||||
|
|
|
@ -37,6 +37,10 @@
|
|||
<?php $T == 3 ? print " selected=\"selected\">" : print ">";
|
||||
print __("Developer")."\n"; ?>
|
||||
</option>
|
||||
<option value="4"
|
||||
<?php $T == 4 ? print " selected=\"selected\">" : print ">";
|
||||
print __("Trusted User & Developer")."\n"; ?>
|
||||
</option>
|
||||
<?php endif; ?>
|
||||
|
||||
</select>
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
<option value="u"><?= __("Normal user"); ?></option>
|
||||
<option value="t"><?= __("Trusted user"); ?></option>
|
||||
<option value="d"><?= __("Developer"); ?></option>
|
||||
<option value="td"><?= __("Trusted User & Developer"); ?></option>
|
||||
</select>
|
||||
</p>
|
||||
<p>
|
||||
|
|
Loading…
Add table
Reference in a new issue