mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
Add comment edit icon and form
Show an icon next to the comment deletion icon, which leads to a comment edit form. Signed-off-by: Marcel Korpel <marcel.korpel@gmail.com> Signed-off-by: Lukas Fleischer <lfleischer@archlinux.org>
This commit is contained in:
parent
8375d21210
commit
92e19e95f3
11 changed files with 139 additions and 9 deletions
|
@ -576,6 +576,25 @@ function salted_hash($passwd, $salt) {
|
|||
return md5($salt . $passwd);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a package comment
|
||||
*
|
||||
* @param int $comment_id The ID of the comment
|
||||
*
|
||||
* @return array The user ID and comment OR null, null in case of an error
|
||||
*/
|
||||
function comment_by_id($comment_id) {
|
||||
$dbh = DB::connect();
|
||||
$q = "SELECT UsersID, Comments FROM PackageComments ";
|
||||
$q.= "WHERE ID = " . intval($comment_id);
|
||||
$result = $dbh->query($q);
|
||||
if (!$result) {
|
||||
return array(null, null);
|
||||
}
|
||||
|
||||
return $result->fetch(PDO::FETCH_NUM);
|
||||
}
|
||||
|
||||
/**
|
||||
* Process submitted comments so any links can be followed
|
||||
*
|
||||
|
|
|
@ -7,6 +7,7 @@ define("CRED_ACCOUNT_LAST_LOGIN", 4);
|
|||
define("CRED_ACCOUNT_SEARCH", 5);
|
||||
define("CRED_COMMENT_DELETE", 6);
|
||||
define("CRED_COMMENT_VIEW_DELETED", 22);
|
||||
define("CRED_COMMENT_EDIT", 25);
|
||||
define("CRED_PKGBASE_ADOPT", 7);
|
||||
define("CRED_PKGBASE_SET_KEYWORDS", 8);
|
||||
define("CRED_PKGBASE_DELETE", 9);
|
||||
|
@ -58,6 +59,7 @@ function has_credential($credential, $approved_users=array()) {
|
|||
case CRED_ACCOUNT_SEARCH:
|
||||
case CRED_COMMENT_DELETE:
|
||||
case CRED_COMMENT_VIEW_DELETED:
|
||||
case CRED_COMMENT_EDIT:
|
||||
case CRED_PKGBASE_ADOPT:
|
||||
case CRED_PKGBASE_SET_KEYWORDS:
|
||||
case CRED_PKGBASE_DELETE:
|
||||
|
|
|
@ -42,6 +42,20 @@ function can_delete_comment_array($comment) {
|
|||
return has_credential(CRED_COMMENT_DELETE, array($comment['UsersID']));
|
||||
}
|
||||
|
||||
/**
|
||||
* Determine if the user can edit a specific package comment using an array
|
||||
*
|
||||
* Only the comment submitter, Trusted Users, and Developers can edit
|
||||
* comments. This function is used for the frontend side of comment editing.
|
||||
*
|
||||
* @param array $comment All database information relating a specific comment
|
||||
*
|
||||
* @return bool True if the user can edit the comment, otherwise false
|
||||
*/
|
||||
function can_edit_comment_array($comment) {
|
||||
return has_credential(CRED_COMMENT_EDIT, array($comment['UsersID']));
|
||||
}
|
||||
|
||||
/**
|
||||
* Check to see if the package name already exists in the database
|
||||
*
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue