aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorvdigital <vdigital@piwigo.org>2008-10-19 15:37:43 +0000
committervdigital <vdigital@piwigo.org>2008-10-19 15:37:43 +0000
commitaa1a71488f556c24eac6171dbde569faea3faeaf (patch)
treec1c76e2ab6431b9e90fdb90375770af6dcfed68a
parenta48c2e52816441e40d69bfd145813c2cd2d056af (diff)
Jump to category icon is removed on user forbidden categories (previously check_restrictions was leading administrators to the access denied page).
git-svn-id: http://piwigo.org/svn/branches/2.0@2776 68402e56-0260-453c-a942-63ccdbb3a9ee
-rw-r--r--admin/cat_modify.php1
-rw-r--r--admin/include/functions.php23
-rw-r--r--admin/template/goto/cat_list.tpl2
-rw-r--r--admin/template/goto/cat_modify.tpl2
4 files changed, 28 insertions, 0 deletions
diff --git a/admin/cat_modify.php b/admin/cat_modify.php
index 4a385217d..b0876ecb8 100644
--- a/admin/cat_modify.php
+++ b/admin/cat_modify.php
@@ -235,6 +235,7 @@ if (!empty($category['id_uppercat']))
$template->assign(
array(
'CATEGORIES_NAV' => $navigation,
+ 'CAT_ID' => $category['id'],
'CAT_NAME' => @htmlspecialchars($category['name']),
'CAT_COMMENT' => @htmlspecialchars($category['comment']),
diff --git a/admin/include/functions.php b/admin/include/functions.php
index 4b0713226..658033e0c 100644
--- a/admin/include/functions.php
+++ b/admin/include/functions.php
@@ -1899,4 +1899,27 @@ SELECT id
);
}
}
+
+/**
+ * Is the category accessible to the (Admin) user ?
+ *
+ * Note : if the user is not authorized to see this category, category jump
+ * will be replaced by admin cat_modify page
+ *
+ * @param int category id to verify
+ * @return bool
+ */
+function cat_admin_access($category_id)
+{
+ global $user;
+
+ // $filter['visible_categories'] and $filter['visible_images']
+ // are not used because it's not necessary (filter <> restriction)
+ if (in_array($category_id, explode(',', $user['forbidden_categories'])))
+ {
+ return false;
+ }
+ return true;
+}
+
?> \ No newline at end of file
diff --git a/admin/template/goto/cat_list.tpl b/admin/template/goto/cat_list.tpl
index 4bf158baf..9f26e1f9c 100644
--- a/admin/template/goto/cat_list.tpl
+++ b/admin/template/goto/cat_list.tpl
@@ -48,7 +48,9 @@
<li class="categoryLi{if $category.IS_VIRTUAL} virtual_cat{/if}" id="cat_{$category.ID}">
<!-- category {$category.ID} -->
<ul class="categoryActions">
+ {if cat_admin_access($category.ID)}
<li><a href="{$category.U_JUMPTO}" title="{'jump to category'|@translate}"><img src="{$themeconf.admin_icon_dir}/category_jump-to.png" class="button" alt="{'jump to category'|@translate}" /></a></li>
+ {/if}
<li><a href="{$category.U_EDIT}" title="{'edit category informations'|@translate}"><img src="{$themeconf.admin_icon_dir}/category_edit.png" class="button" alt="{'edit'|@translate}"/></a></li>
{if isset($category.U_MANAGE_ELEMENTS) }
<li><a href="{$category.U_MANAGE_ELEMENTS}" title="{'manage category elements'|@translate}"><img src="{$themeconf.admin_icon_dir}/category_elements.png" class="button" alt="{'elements'|@translate}" /></a></li>
diff --git a/admin/template/goto/cat_modify.tpl b/admin/template/goto/cat_modify.tpl
index b9746ffe1..418f87539 100644
--- a/admin/template/goto/cat_modify.tpl
+++ b/admin/template/goto/cat_modify.tpl
@@ -10,7 +10,9 @@
<h3>{$CATEGORIES_NAV}</h3>
<ul class="categoryActions">
+ {if cat_admin_access($CAT_ID)}
<li><a href="{$U_JUMPTO}" title="{'jump to category'|@translate}"><img src="{$themeconf.admin_icon_dir}/category_jump-to.png" class="button" alt="{'jump to category'|@translate}" /></a></li>
+ {/if}
{if isset($U_MANAGE_ELEMENTS) }
<li><a href="{$U_MANAGE_ELEMENTS}" title="{'manage category elements'|@translate}"><img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/category_elements.png" class="button" alt="{'elements'|@translate}" /></a></li>
<li><a href="{$U_MANAGE_RANKS}" title="{'manage image ranks'|@translate}"><img src="{$ROOT_URL}{$themeconf.admin_icon_dir}/ranks.png" class="button" alt="{'ranks'|@translate}" /></a></li>