diff --git a/module/action/lang/de.php b/module/action/lang/de.php index b0b3eed13b..b416dafb40 100644 --- a/module/action/lang/de.php +++ b/module/action/lang/de.php @@ -223,6 +223,7 @@ $lang->action->desc->reopen = '$date, reopened by $actoraction->desc->merged = '$date, merged by $actor .' . "\n"; $lang->action->desc->submitreview = '$date, submitted for review by $actor.' . "\n"; $lang->action->desc->ganttmove = '$date, sort by $actor .' . "\n"; +$lang->action->desc->switchtolean = '$date, Switch from new mode to lean mode by '. $lang->admin->system .'.' . "\n"; /* Used to describe the history of operations related to parent-child tasks. */ $lang->action->desc->createchildren = '$date, $actor created a child task $extra。' . "\n"; @@ -390,6 +391,7 @@ $lang->action->label->tolib = 'imported'; $lang->action->label->updatetolib = 'updated'; $lang->action->label->ganttmove = 'sorted'; $lang->action->label->submitreview = 'submitted'; +$lang->action->label->switchtolean = 'switch from new mode to lean mode'; /* Dynamic information is grouped by object. */ $lang->action->dynamicAction = new stdclass; @@ -409,12 +411,13 @@ $lang->action->dynamicAction->program['activated'] = 'Activate Program'; $lang->action->dynamicAction->program['deleted'] = 'Delete Program'; $lang->action->dynamicAction->program['closed'] = 'Close Program'; -$lang->action->dynamicAction->project['opened'] = 'Create Project'; -$lang->action->dynamicAction->project['edited'] = 'Edit Project'; -$lang->action->dynamicAction->project['started'] = 'Start 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['opened'] = 'Create Project'; +$lang->action->dynamicAction->project['edited'] = 'Edit Project'; +$lang->action->dynamicAction->project['started'] = 'Start 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['switchtolean'] = 'Switch Mode'; $lang->action->dynamicAction->product['opened'] = 'Create ' . $lang->productCommon; $lang->action->dynamicAction->product['edited'] = 'Edit ' . $lang->productCommon; diff --git a/module/action/lang/en.php b/module/action/lang/en.php index 57e0473102..2afc2554f6 100755 --- a/module/action/lang/en.php +++ b/module/action/lang/en.php @@ -223,6 +223,7 @@ $lang->action->desc->reopen = '$date, reopened by $actoraction->desc->merged = '$date, merged by $actor .' . "\n"; $lang->action->desc->submitreview = '$date, submitted for review by $actor.' . "\n"; $lang->action->desc->ganttmove = '$date, sort by $actor .' . "\n"; +$lang->action->desc->switchtolean = '$date, Switch from new mode to lean mode by '. $lang->admin->system .'.' . "\n"; /* Used to describe the history of operations related to parent-child tasks. */ $lang->action->desc->createchildren = '$date, $actor created a child task $extra。' . "\n"; @@ -390,6 +391,7 @@ $lang->action->label->tolib = 'imported'; $lang->action->label->updatetolib = 'updated'; $lang->action->label->ganttmove = 'sorted'; $lang->action->label->submitreview = 'submitted'; +$lang->action->label->switchtolean = 'switch from new mode to lean mode'; /* Dynamic information is grouped by object. */ $lang->action->dynamicAction = new stdclass; @@ -409,12 +411,13 @@ $lang->action->dynamicAction->program['activated'] = 'Activate Program'; $lang->action->dynamicAction->program['deleted'] = 'Delete Program'; $lang->action->dynamicAction->program['closed'] = 'Close Program'; -$lang->action->dynamicAction->project['opened'] = 'Create Project'; -$lang->action->dynamicAction->project['edited'] = 'Edit Project'; -$lang->action->dynamicAction->project['started'] = 'Start 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['opened'] = 'Create Project'; +$lang->action->dynamicAction->project['edited'] = 'Edit Project'; +$lang->action->dynamicAction->project['started'] = 'Start 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['switchtolean'] = 'Switch Mode'; $lang->action->dynamicAction->product['opened'] = 'Create ' . $lang->productCommon; $lang->action->dynamicAction->product['edited'] = 'Edit ' . $lang->productCommon; diff --git a/module/action/lang/fr.php b/module/action/lang/fr.php index fd061e4dee..04bcf949a4 100644 --- a/module/action/lang/fr.php +++ b/module/action/lang/fr.php @@ -223,6 +223,7 @@ $lang->action->desc->reopen = '$date, reopened by $actoraction->desc->merged = '$date, merged by $actor .' . "\n"; $lang->action->desc->submitreview = '$date, submitted for review by $actor.' . "\n"; $lang->action->desc->ganttmove = '$date, sort by $actor .' . "\n"; +$lang->action->desc->switchtolean = '$date, Switch from new mode to lean mode by '. $lang->admin->system .'.' . "\n"; /* Used to describe the history of operations related to parent-child tasks. */ $lang->action->desc->createchildren = '$date, $actor a créé un sous-tâche $extra。' . "\n"; @@ -390,6 +391,7 @@ $lang->action->label->tolib = 'Importé'; $lang->action->label->updatetolib = 'MàJ'; $lang->action->label->ganttmove = 'sorted'; $lang->action->label->submitreview = 'submitted'; +$lang->action->label->switchtolean = 'switch from new mode to lean mode'; /* Dynamic information is grouped by object. */ $lang->action->dynamicAction = new stdclass(); @@ -409,12 +411,13 @@ $lang->action->dynamicAction->program['activated'] = 'Activate Program'; $lang->action->dynamicAction->program['deleted'] = 'Delete Program'; $lang->action->dynamicAction->program['closed'] = 'Close Program'; -$lang->action->dynamicAction->project['opened'] = 'Créer ' . $lang->executionCommon; -$lang->action->dynamicAction->project['edited'] = 'Editer ' . $lang->executionCommon; -$lang->action->dynamicAction->project['started'] = 'Commencer ' . $lang->executionCommon; -$lang->action->dynamicAction->project['suspended'] = 'Suspendre ' . $lang->executionCommon; -$lang->action->dynamicAction->project['activated'] = 'Activer ' . $lang->executionCommon; -$lang->action->dynamicAction->project['closed'] = 'Fermer ' . $lang->executionCommon; +$lang->action->dynamicAction->project['opened'] = 'Créer ' . $lang->executionCommon; +$lang->action->dynamicAction->project['edited'] = 'Editer ' . $lang->executionCommon; +$lang->action->dynamicAction->project['started'] = 'Commencer ' . $lang->executionCommon; +$lang->action->dynamicAction->project['suspended'] = 'Suspendre ' . $lang->executionCommon; +$lang->action->dynamicAction->project['activated'] = 'Activer ' . $lang->executionCommon; +$lang->action->dynamicAction->project['closed'] = 'Fermer ' . $lang->executionCommon; +$lang->action->dynamicAction->project['switchtolean'] = 'Switch Mode'; $lang->action->dynamicAction->product['opened'] = 'Créer ' . $lang->productCommon; $lang->action->dynamicAction->product['edited'] = 'Editer ' . $lang->productCommon; diff --git a/module/action/lang/zh-cn.php b/module/action/lang/zh-cn.php index 60fc4a7905..b244a9126b 100755 --- a/module/action/lang/zh-cn.php +++ b/module/action/lang/zh-cn.php @@ -223,6 +223,7 @@ $lang->action->desc->reopen = '$date, 由 $actor $lang->action->desc->merged = '$date, 由 $actor 合并。' . "\n"; $lang->action->desc->submitreview = '$date, 由 $actor 提交评审。' . "\n"; $lang->action->desc->ganttmove = '$date, 由 $actor 排序。' . "\n"; +$lang->action->desc->switchtolean = '$date, 由 '. $lang->admin->system .' 从综合模式切换为迅捷模式。' . "\n"; /* 用来描述和父子任务相关的操作历史记录。*/ $lang->action->desc->createchildren = '$date, 由 $actor 创建子任务 $extra。' . "\n"; @@ -390,6 +391,7 @@ $lang->action->label->tolib = '导入了'; $lang->action->label->updatetolib = '更新了'; $lang->action->label->ganttmove = '排序了'; $lang->action->label->submitreview = '提交了评审'; +$lang->action->label->switchtolean = '从综合模式切换为迅捷模式'; /* 动态信息按照对象分组 */ $lang->action->dynamicAction = new stdclass(); @@ -409,12 +411,13 @@ $lang->action->dynamicAction->program['activated'] = '激活项目集'; $lang->action->dynamicAction->program['deleted'] = '删除项目集'; $lang->action->dynamicAction->program['closed'] = '关闭项目集'; -$lang->action->dynamicAction->project['opened'] = '创建项目'; -$lang->action->dynamicAction->project['edited'] = '编辑项目'; -$lang->action->dynamicAction->project['started'] = '开始项目'; -$lang->action->dynamicAction->project['suspended'] = '延期项目'; -$lang->action->dynamicAction->project['activated'] = '激活项目'; -$lang->action->dynamicAction->project['closed'] = '关闭项目'; +$lang->action->dynamicAction->project['opened'] = '创建项目'; +$lang->action->dynamicAction->project['edited'] = '编辑项目'; +$lang->action->dynamicAction->project['started'] = '开始项目'; +$lang->action->dynamicAction->project['suspended'] = '延期项目'; +$lang->action->dynamicAction->project['activated'] = '激活项目'; +$lang->action->dynamicAction->project['closed'] = '关闭项目'; +$lang->action->dynamicAction->project['switchtolean'] = '切换模式'; $lang->action->dynamicAction->product['opened'] = '创建' . $lang->productCommon; $lang->action->dynamicAction->product['edited'] = '编辑' . $lang->productCommon; diff --git a/module/custom/model.php b/module/custom/model.php index f09ab3715e..d1619b3b25 100644 --- a/module/custom/model.php +++ b/module/custom/model.php @@ -842,17 +842,24 @@ class customModel extends model */ public function processProjectAcl() { - $projectGroup = $this->dao->select('id,parent,whitelist')->from(TABLE_PROJECT) + $projectGroup = $this->dao->select('id,parent,whitelist,acl')->from(TABLE_PROJECT) ->where('parent')->ne('0') ->andwhere('type')->eq('project') ->andWhere('acl')->eq('program') - ->fetchGroup('parent'); + ->fetchGroup('parent', 'id'); $programs = $this->dao->select("id,CONCAT(PM,',',openedBy)")->from(TABLE_PROGRAM) ->where('id')->in(array_keys($projectGroup)) ->andWhere('type')->eq('program') ->fetchPairs(); + $projectIDList = array(); + foreach($projectGroup as $projects) $projectIDList = array_merge($projectIDList, array_keys($projects)); + $executionGroup = $this->dao->select('project,id')->from(TABLE_EXECUTION)->where('project')->in($projectIDList)->fetchGroup('project', 'id'); + + $this->loadModel('user'); + $this->loadModel('action'); + $this->loadModel('personnel'); foreach($projectGroup as $projects) { foreach($projects as $project) @@ -866,6 +873,21 @@ class customModel extends model $data->acl = 'private'; $data->whitelist = $whitelist; $this->dao->update(TABLE_PROJECT)->data($data)->where('id')->eq($project->id)->exec(); + + $whitelist = explode(',', $whitelist); + $this->personnel->updateWhitelist($whitelist, 'project', $project->id); + + $this->user->updateUserView($project->id, 'project'); + if(zget($executionGroup, $project->id, '')) + { + $executions = zget($executionGroup, $project->id); + $executionPairs = array(); + foreach($executions as $executionID => $execution) $executionPairs[$executionID] = $executionID; + $this->user->updateUserView($executionPairs, 'sprint'); + } + $changes = common::createChanges($project, $data); + $actionID = $this->action->create('project', $project->id, 'SwitchToLean'); + $this->action->logHistory($actionID, $changes); } } }