权限细分:让客服查看会员列表但不能编辑会员资料
ECSHOP的后台给管理员分配权限,很多都是笼统的,往往一个权限附带多个权限。比如客服在后台需要查看会员列表,包括会员名、邮箱、电话、积分、订单等,但默认如果给予查看会员列表的权限,就同时拥有编辑会员资料的权限,可以添加、删除会员,也可以修改会员等级、邮箱、电话号等,这就很扯蛋了。万一客服误操作,那不是损失一大片?
细化后台权限,做几个修改就可以办到了。
第一步,给权限列表添加语言项
在/languages/zh_cn/admin/priv_action.php 的会员管理权限中增加
$_LANG['users_list'] = '会员列表';
第二步,给数据表增加字段
在后台--数据库管理--SQL查询中,执行以下代码:.
INSERT INTO `ecs_admin_action` ( `action_id`, `parent_id`, `action_code`, `relevance` ) VALUES ('136', '3', 'users_list', '');
第三步,给PHP文件修改权限检查方式
打开admin/users.php文件,找
if ($_REQUEST['act'] == 'list')
{
/* 检查权限 */
把之下一行的
admin_priv('users_manage');
改为
admin_priv('users_list');
看到了吧,这里查看会员列表是可以manage的,也就是你查看的同时就可以编辑。
第四步,指定权限代码.
打开/admin/include/inc_priv.php,把
$purview['03_users_list'] = 'users_manage';
修改为
$purview['03_users_list'] = 'users_list';
这里也是列表等于编辑。我们把它修改为看列表就是看列表,不要编辑。
第五步,后台分配权限
做以上修改后,管理员要重新勾选“会员列表”才有查看会员列表的权限,否则也会提示无操作权。
然后给客服分配权限的时候,仅勾“会员列表”,其余“会员管理、会员账户管理、会员余额管理”等通通不要勾选。