官方参考:http://www.zentao.net/book/zentaopmshelp/68.html
官方文档中遗漏了一个重要的说明,即必须配置相应的权限资源,才能在给用户组设置了权限后显示相应菜单。
假定一个wiki模块:
- 在/zentao_path/module/common/ext/lang/zh-cn/目录下,新建一个文件,文件名随意,如wiki.php,代码如下:
<?php
//模块名称标签资源
$lang->wiki->common = 'Wiki';
//登记一级菜单
$lang->menu->wiki = 'Wiki|wiki|create';
$lang->menuOrder[210] = 'wiki';
$lang->wiki->create = "新增";
$lang->wiki->batchCreate = "批量添加";
$lang->wiki->edit = "更新待办";
$lang->wiki->batchEdit = "批量编辑";
$lang->wiki->view = "待办详情";
$lang->wiki->viewAB = "详情";
$lang->wiki->finish = "完成";
$lang->wiki->batchFinish = "批量完成";
$lang->wiki->export = "导出";
$lang->wiki->delete = "删除待办";
$lang->wiki->browse = "浏览待办";
$lang->wiki->import2Today = "导入到今天";
$lang->wiki->import = "导入";
$lang->moduleOrder[1650] = 'wiki';
- 定义权限资源
在/zentao_path/module/group/ext/lang/zh-cn/目录下,新建一个文件,文件名随意,如wiki.php,代码如下:
<?php
/* wiki. */
$lang->resource->wiki = new stdclass();
$lang->resource->wiki->create = 'create';
$lang->resource->wiki->batchCreate = 'batchCreate';
$lang->resource->wiki->edit = 'edit';
$lang->resource->wiki->batchEdit = 'batchEdit';
$lang->resource->wiki->view = 'view';
$lang->resource->wiki->delete = 'delete';
$lang->resource->wiki->export = 'export';
$lang->resource->wiki->finish = 'finish';
$lang->resource->wiki->batchFinish = 'batchFinish';
$lang->resource->wiki->import2Today = 'import2Today';
$lang->wiki->methodOrder[5] = 'create';
$lang->wiki->methodOrder[10] = 'batchCreate';
$lang->wiki->methodOrder[15] = 'edit';
$lang->wiki->methodOrder[20] = 'view';
$lang->wiki->methodOrder[25] = 'delete';
$lang->wiki->methodOrder[30] = 'export';
$lang->wiki->methodOrder[35] = 'finish';
$lang->wiki->methodOrder[40] = 'import2Today';
文件编辑完后,去后台编辑权限。
最后,设置了相应权限的组的用户,必须退出后重新登陆,才能看到效果。
PS:以上是定义内部模块的菜单定义方式,如果直接要增加一个外部系统的菜单,以前的版本中还有个webapp的东东,新版本去掉了,此时,可以用钩子的方式。
最简单的方法,在/zentao_path/module/common/ext/view/目录下,建一个footer.wiki.html.hook.php
里面用js的方式增加页面元素即可。
<script>
$(document).ready(function()
{
$("#mainmenu ul.nav").append('<li><a id="menuwiki" href="/wiki">Wiki</a><\/li>');
});
</script>