".
$this->get_view_count($event->image->id) .
diff --git a/ext/media/main.php b/ext/media/main.php
index c0edd3a7..e11a6009 100644
--- a/ext/media/main.php
+++ b/ext/media/main.php
@@ -253,7 +253,7 @@ class Media extends Extension
{
global $database, $page, $user;
- if ($event->page_matches("media_rescan/") && $user->is_admin() && isset($_POST['image_id'])) {
+ if ($event->page_matches("media_rescan/") && $user->can(Permissions::RESCAN_MEDIA) && isset($_POST['image_id'])) {
$image = Image::by_id(int_escape($_POST['image_id']));
$this->update_image_media_properties($image->hash, $image->ext);
@@ -321,7 +321,7 @@ class Media extends Extension
{
global $user;
- if ($user->is_admin()) {
+ if ($user->can(Permissions::RESCAN_MEDIA)) {
$event->add_action("bulk_media_rescan", "Scan Media Properties");
}
}
@@ -332,7 +332,7 @@ class Media extends Extension
switch ($event->action) {
case "bulk_media_rescan":
- if ($user->is_admin()) {
+ if ($user->can(Permissions::RESCAN_MEDIA)) {
$total = 0;
foreach ($event->items as $image) {
try {
diff --git a/ext/notes/main.php b/ext/notes/main.php
index e0aa847b..9f4f9e72 100644
--- a/ext/notes/main.php
+++ b/ext/notes/main.php
@@ -113,7 +113,7 @@ class Notes extends Extension
$page->set_redirect(make_link("post/view/".$_POST["image_id"]));
break;
case "nuke_notes":
- if ($user->is_admin()) {
+ if ($user->can(Permissions::NOTES_ADMIN)) {
$this->nuke_notes();
}
@@ -121,7 +121,7 @@ class Notes extends Extension
$page->set_redirect(make_link("post/view/".$_POST["image_id"]));
break;
case "nuke_requests":
- if ($user->is_admin()) {
+ if ($user->can(Permissions::NOTES_ADMIN)) {
$this->nuke_requests();
}
@@ -136,7 +136,7 @@ class Notes extends Extension
}
break;
case "delete_note":
- if ($user->is_admin()) {
+ if ($user->can(Permissions::NOTES_ADMIN)) {
$this->delete_note();
$page->set_mode(PageMode::REDIRECT);
$page->set_redirect(make_link("post/view/".$_POST["image_id"]));
@@ -160,7 +160,7 @@ class Notes extends Extension
//display form on image event
$notes = $this->get_notes($event->image->id);
- $this->theme->display_note_system($page, $event->image->id, $notes, $user->is_admin());
+ $this->theme->display_note_system($page, $event->image->id, $notes, $user->can(Permissions::NOTES_ADMIN));
}
@@ -173,7 +173,7 @@ class Notes extends Extension
if (!$user->is_anonymous()) {
$event->add_part($this->theme->note_button($event->image->id));
$event->add_part($this->theme->request_button($event->image->id));
- if ($user->is_admin()) {
+ if ($user->can(Permissions::NOTES_ADMIN)) {
$event->add_part($this->theme->nuke_notes_button($event->image->id));
$event->add_part($this->theme->nuke_requests_button($event->image->id));
}
diff --git a/ext/pools/main.php b/ext/pools/main.php
index fe734bd5..6604e4f2 100644
--- a/ext/pools/main.php
+++ b/ext/pools/main.php
@@ -291,7 +291,7 @@ class Pools extends Extension
case "nuke":
// Completely remove the given pool.
// -> Only admins and owners may do this
- if ($user->is_admin() || $user->id == $pool['user_id']) {
+ if ($user->can(Permissions::POOLS_ADMIN) || $user->id == $pool['user_id']) {
$this->nuke_pool($pool_id);
$page->set_mode(PageMode::REDIRECT);
$page->set_redirect(make_link("pool/list"));
@@ -351,7 +351,7 @@ class Pools extends Extension
{
global $config, $database, $user;
if ($config->get_bool(PoolsConfig::ADDER_ON_VIEW_IMAGE) && !$user->is_anonymous()) {
- if ($user->is_admin()) {
+ if ($user->can(Permissions::POOLS_ADMIN)) {
$pools = $database->get_all("SELECT * FROM pools");
} else {
$pools = $database->get_all("SELECT * FROM pools WHERE user_id=:id", ["id" => $user->id]);
@@ -479,7 +479,7 @@ class Pools extends Extension
private function have_permission(User $user, array $pool): bool
{
// If the pool is public and user is logged OR if the user is admin OR if the pool is owned by the user.
- if ((($pool['public'] == "Y" || $pool['public'] == "y") && !$user->is_anonymous()) || $user->is_admin() || $user->id == $pool['user_id']) {
+ if ((($pool['public'] == "Y" || $pool['public'] == "y") && !$user->is_anonymous()) || $user->can(Permissions::POOLS_ADMIN) || $user->id == $pool['user_id']) {
return true;
} else {
return false;
@@ -887,7 +887,7 @@ class Pools extends Extension
global $user, $database;
$p_id = $database->get_one("SELECT user_id FROM pools WHERE id = :pid", ["pid" => $poolID]);
- if ($user->is_admin()) {
+ if ($user->can(Permissions::POOLS_ADMIN)) {
$database->execute("DELETE FROM pool_history WHERE pool_id = :pid", ["pid" => $poolID]);
$database->execute("DELETE FROM pool_images WHERE pool_id = :pid", ["pid" => $poolID]);
$database->execute("DELETE FROM pools WHERE id = :pid", ["pid" => $poolID]);
diff --git a/ext/pools/theme.php b/ext/pools/theme.php
index bfaacb30..d9278847 100644
--- a/ext/pools/theme.php
+++ b/ext/pools/theme.php
@@ -137,7 +137,7 @@ class PoolsTheme extends Themelet
if (!is_null($pools) && count($pools) == 1) {
$pool = $pools[0];
- if ($pool['public'] == "Y" || $user->is_admin()) {// IF THE POOL IS PUBLIC OR IS ADMIN SHOW EDIT PANEL
+ if ($pool['public'] == "Y" || $user->can(Permissions::POOLS_ADMIN)) {// IF THE POOL IS PUBLIC OR IS ADMIN SHOW EDIT PANEL
if (!$user->is_anonymous()) {// IF THE USER IS REGISTERED AND LOGGED IN SHOW EDIT PANEL
$this->sidebar_options($page, $pool, $check_all);
}
@@ -195,7 +195,7 @@ class PoolsTheme extends Themelet
';
- if ($user->id == $pool['user_id'] || $user->is_admin()) {
+ if ($user->id == $pool['user_id'] || $user->can(Permissions::POOLS_ADMIN)) {
$editor .= "