diff options
-rw-r--r-- | admin/cat_modify.php | 1 | ||||
-rw-r--r-- | admin/include/functions.php | 23 | ||||
-rw-r--r-- | admin/template/goto/cat_list.tpl | 2 | ||||
-rw-r--r-- | admin/template/goto/cat_modify.tpl | 2 |
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> |