diff --git a/module/action/lang/en.php b/module/action/lang/en.php index 51d9754537..fdb98b6f6d 100755 --- a/module/action/lang/en.php +++ b/module/action/lang/en.php @@ -220,12 +220,12 @@ $lang->action->dynamicAction->todo['assigned'] = 'Assign Todo'; $lang->action->dynamicAction->todo['undeleted'] = 'Restore Todo'; $lang->action->dynamicAction->todo['hidden'] = 'Hide Todo'; -$lang->action->dynamicAction->product['opened'] = 'Create' . $lang->productCommon; -$lang->action->dynamicAction->product['edited'] = 'Edit' . $lang->productCommon; -$lang->action->dynamicAction->product['deleted'] = 'Delete' . $lang->productCommon; -$lang->action->dynamicAction->product['closed'] = 'Close' . $lang->productCommon; -$lang->action->dynamicAction->product['undeleted'] = 'Restore Product'; -$lang->action->dynamicAction->product['hidden'] = 'Hide Product'; +$lang->action->dynamicAction->product['opened'] = 'Create ' . $lang->productCommon; +$lang->action->dynamicAction->product['edited'] = 'Edit ' . $lang->productCommon; +$lang->action->dynamicAction->product['deleted'] = 'Delete ' . $lang->productCommon; +$lang->action->dynamicAction->product['closed'] = 'Close ' . $lang->productCommon; +$lang->action->dynamicAction->product['undeleted'] = 'Restore ' . $lang->productCommon; +$lang->action->dynamicAction->product['hidden'] = 'Hide ' . $lang->productCommon; $lang->action->dynamicAction->productplan['opened'] = 'Create Plan'; $lang->action->dynamicAction->productplan['edited'] = 'Edit Plan'; $lang->action->dynamicAction->release['opened'] = 'Create Release'; @@ -239,7 +239,6 @@ $lang->action->dynamicAction->story['activated'] = 'Activate Story'; $lang->action->dynamicAction->story['reviewed'] = 'Review Story'; $lang->action->dynamicAction->story['closed'] = 'Close Story'; $lang->action->dynamicAction->story['assigned'] = 'Assign'; -$lang->action->dynamicAction->story['closed'] = 'Close Story'; $lang->action->dynamicAction->story['changed'] = 'Change Story'; $lang->action->dynamicAction->story['linked2plan'] = 'Link Story to Plan'; $lang->action->dynamicAction->story['unlinkedfromplan'] = 'Unlink Story from Plan'; @@ -251,19 +250,19 @@ $lang->action->dynamicAction->story['unlinkedfromproject'] = 'Unlink Project'; $lang->action->dynamicAction->story['undeleted'] = 'Restore Story'; $lang->action->dynamicAction->story['hidden'] = 'Hide Story'; -$lang->action->dynamicAction->project['opened'] = 'Create Project'; -$lang->action->dynamicAction->project['edited'] = 'Edit Project'; -$lang->action->dynamicAction->project['deleted'] = 'Delete Project'; -$lang->action->dynamicAction->project['started'] = 'Start Project'; -$lang->action->dynamicAction->project['delayed'] = 'Delay Project'; -$lang->action->dynamicAction->project['suspended'] = 'Suspend Project'; -$lang->action->dynamicAction->project['activated'] = 'Activate Project'; -$lang->action->dynamicAction->project['closed'] = 'Close Project'; -$lang->action->dynamicAction->project['managed'] = 'Manage Project'; -$lang->action->dynamicAction->project['undeleted'] = 'Restore Project'; -$lang->action->dynamicAction->project['hidden'] = 'Hide Project'; +$lang->action->dynamicAction->project['opened'] = 'Create ' . $lang->projectCommon; +$lang->action->dynamicAction->project['edited'] = 'Edit ' . $lang->projectCommon; +$lang->action->dynamicAction->project['deleted'] = 'Delete ' . $lang->projectCommon; +$lang->action->dynamicAction->project['started'] = 'Start ' . $lang->projectCommon; +$lang->action->dynamicAction->project['delayed'] = 'Delay ' . $lang->projectCommon; +$lang->action->dynamicAction->project['suspended'] = 'Suspend ' . $lang->projectCommon; +$lang->action->dynamicAction->project['activated'] = 'Activate ' . $lang->projectCommon; +$lang->action->dynamicAction->project['closed'] = 'Close ' . $lang->projectCommon; +$lang->action->dynamicAction->project['managed'] = 'Manage ' . $lang->projectCommon; +$lang->action->dynamicAction->project['undeleted'] = 'Restore ' . $lang->projectCommon; +$lang->action->dynamicAction->project['hidden'] = 'Hide ' . $lang->projectCommon; $lang->action->dynamicAction->project['moved'] = 'Improt Task'; -$lang->action->dynamicAction->task['opened'] = 'Create Task'; +$lang->action->dynamicAction->task['opened'] = 'Create Task'; $lang->action->dynamicAction->task['edited'] = 'Edit Task'; $lang->action->dynamicAction->task['commented'] = 'Task Comment'; $lang->action->dynamicAction->task['assigned'] = 'Assign Task'; diff --git a/module/action/lang/zh-cn.php b/module/action/lang/zh-cn.php index be9d3f371b..d785679dc0 100755 --- a/module/action/lang/zh-cn.php +++ b/module/action/lang/zh-cn.php @@ -220,12 +220,12 @@ $lang->action->dynamicAction->todo['assigned'] = '指派待办'; $lang->action->dynamicAction->todo['undeleted'] = '还原待办'; $lang->action->dynamicAction->todo['hidden'] = '隐藏待办'; -$lang->action->dynamicAction->product['opened'] = '创建' . $lang->productCommon; +$lang->action->dynamicAction->product['opened'] = '创建' . $lang->productCommon; $lang->action->dynamicAction->product['edited'] = '编辑' . $lang->productCommon; $lang->action->dynamicAction->product['deleted'] = '删除' . $lang->productCommon; $lang->action->dynamicAction->product['closed'] = '关闭' . $lang->productCommon; -$lang->action->dynamicAction->product['undeleted'] = '还原产品'; -$lang->action->dynamicAction->product['hidden'] = '隐藏产品'; +$lang->action->dynamicAction->product['undeleted'] = '还原' . $lang->productCommon; +$lang->action->dynamicAction->product['hidden'] = '隐藏' . $lang->productCommon; $lang->action->dynamicAction->productplan['opened'] = '创建计划'; $lang->action->dynamicAction->productplan['edited'] = '编辑计划'; $lang->action->dynamicAction->release['opened'] = '创建发布'; @@ -251,19 +251,19 @@ $lang->action->dynamicAction->story['unlinkedfromproject'] = '移除项目'; $lang->action->dynamicAction->story['undeleted'] = '还原需求'; $lang->action->dynamicAction->story['hidden'] = '隐藏需求'; -$lang->action->dynamicAction->project['opened'] = '创建项目'; -$lang->action->dynamicAction->project['edited'] = '编辑项目'; -$lang->action->dynamicAction->project['deleted'] = '删除项目'; -$lang->action->dynamicAction->project['started'] = '开始项目'; -$lang->action->dynamicAction->project['delayed'] = '延期项目'; -$lang->action->dynamicAction->project['suspended'] = '挂起项目'; -$lang->action->dynamicAction->project['activated'] = '激活项目'; -$lang->action->dynamicAction->project['closed'] = '关闭项目'; -$lang->action->dynamicAction->project['managed'] = '维护项目'; -$lang->action->dynamicAction->project['undeleted'] = '还原项目'; -$lang->action->dynamicAction->project['hidden'] = '隐藏项目'; +$lang->action->dynamicAction->project['opened'] = '创建' . $lang->projectCommon; +$lang->action->dynamicAction->project['edited'] = '编辑' . $lang->projectCommon; +$lang->action->dynamicAction->project['deleted'] = '删除' . $lang->projectCommon; +$lang->action->dynamicAction->project['started'] = '开始' . $lang->projectCommon; +$lang->action->dynamicAction->project['delayed'] = '延期' . $lang->projectCommon; +$lang->action->dynamicAction->project['suspended'] = '挂起' . $lang->projectCommon; +$lang->action->dynamicAction->project['activated'] = '激活' . $lang->projectCommon; +$lang->action->dynamicAction->project['closed'] = '关闭' . $lang->projectCommon; +$lang->action->dynamicAction->project['managed'] = '维护' . $lang->projectCommon; +$lang->action->dynamicAction->project['undeleted'] = '还原' . $lang->projectCommon; +$lang->action->dynamicAction->project['hidden'] = '隐藏' . $lang->projectCommon; $lang->action->dynamicAction->project['moved'] = '导入任务'; -$lang->action->dynamicAction->task['opened'] = '创建任务'; +$lang->action->dynamicAction->task['opened'] = '创建任务'; $lang->action->dynamicAction->task['edited'] = '编辑任务'; $lang->action->dynamicAction->task['commented'] = '备注任务'; $lang->action->dynamicAction->task['assigned'] = '指派任务'; diff --git a/module/group/js/manageview.js b/module/group/js/manageview.js index 5466b7e213..4ef177020b 100644 --- a/module/group/js/manageview.js +++ b/module/group/js/manageview.js @@ -10,27 +10,16 @@ function toggleProject() function selectAll(obj) { - if($(obj).prop('checked')) - { - $(obj).closest('tr').find(':checkbox').attr('checked', 'checked'); - } - else - { - $(obj).closest('tr').find(':checkbox').removeAttr('checked'); - } + $(obj).closest('tr').find(':checkbox').prop('checked', $(obj).prop('checked')); } $('input:checkbox[name^="allchecker"]').change(function() { - setTimeout(function(){toggleProduct(),toggleProject()}, 50); + $('.group-item :checkbox[name^="actions"]').change(); }); -$('#product').change(function(){toggleProduct();}) -$('#project').change(function(){toggleProject();}) $(function() { - toggleProduct(); - toggleProject(); $('.group-item :checkbox[name^="actions"]').change(function() { var allChecked = true; @@ -41,10 +30,22 @@ $(function() $('.group-item input:checkbox[name^="allchecker"]').prop('checked', allChecked); var id = $(this).attr('id'); - if($('#' + id + 'ActionBox').length == 1) - { - $('#' + id + 'ActionBox').toggle($(this).prop("checked")); - $('#' + id + 'ActionBox').closest('tr').find('td :checkbox').prop('checked', $(this).prop("checked")); - } + if(id == 'product') toggleProduct(); + if(id == 'project') toggleProject(); + if($('#' + id + 'ActionBox').length == 1) $('#' + id + 'ActionBox').toggle($(this).prop("checked")); }) -}) + $('.group-item :checkbox[name^="actions"]').change(); + $("tr[id$='ActionBox']").each(function() + { + var allChecked = true; + $(this).find('td:last :checkbox').each(function() + { + if(!$(this).prop('checked')) + { + allChecked = false; + return true; + } + }); + if(allChecked) $(this).find('th :checkbox').prop('checked', true); + }); +}); diff --git a/module/group/model.php b/module/group/model.php index 3db79399be..e968c8b877 100644 --- a/module/group/model.php +++ b/module/group/model.php @@ -269,6 +269,23 @@ class groupModel extends model if(isset($_POST['allchecker']))$actions['views'] = array(); if(!isset($actions['actions']))$actions['actions'] = array(); + $dynamic = array(); + foreach($actions['actions'] as $moduleName => $moduleActions) + { + if(isset($this->lang->menugroup->$moduleName)) + { + $groupModule = $this->lang->menugroup->$moduleName; + if($groupModule != 'my' and !isset($actions['views'][$groupModule])) continue; + } + else + { + if($moduleName != 'my' and !isset($actions['views'][$moduleName])) continue; + } + + $dynamic[$moduleName] = $moduleActions; + } + $actions['actions'] = $dynamic; + $actions = empty($actions) ? '' : json_encode($actions); $this->dao->update(TABLE_GROUP)->set('acl')->eq($actions)->where('id')->eq($groupID)->exec(); return dao::isError() ? false : true; diff --git a/module/group/view/manageview.html.php b/module/group/view/manageview.html.php index e44d77dcec..3b702134ee 100644 --- a/module/group/view/manageview.html.php +++ b/module/group/view/manageview.html.php @@ -74,10 +74,10 @@ menu as $module => $title):?> action->dynamicAction->$module) and !isset($menugroup[$module])) continue;?> - +
- +
@@ -119,7 +119,7 @@ - + diff --git a/module/testsuite/view/view.html.php b/module/testsuite/view/view.html.php index 1709f62c3c..8c8242d0bb 100644 --- a/module/testsuite/view/view.html.php +++ b/module/testsuite/view/view.html.php @@ -23,7 +23,7 @@ id;?> name;?> deleted):?> - suite->deleted;?> + delete;?>