From 20a5b36a9d1e6948ac885e24a4c834bf67ce77f1 Mon Sep 17 00:00:00 2001 From: daitingting Date: Wed, 28 Sep 2022 06:35:07 +0000 Subject: [PATCH 1/3] * Disable features when upgrade from classic to lean. --- module/upgrade/control.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/module/upgrade/control.php b/module/upgrade/control.php index c0fbe19efb..0be4d9bd72 100644 --- a/module/upgrade/control.php +++ b/module/upgrade/control.php @@ -171,6 +171,8 @@ class upgrade extends control $this->upgrade->upgradeInProjectMode($programID, $systemMode); + $this->loadModel('custom')->disableFeaturesByMode($mode); + $selectMode = false; } if(version_compare($openVersion, '18_0', '>=')) $selectMode = false; From f9310ade48d81e4b7b78e196555163401552cf6d Mon Sep 17 00:00:00 2001 From: wangyuting2 <851424971@qq.com> Date: Wed, 28 Sep 2022 06:59:18 +0000 Subject: [PATCH 2/3] * Fix bug #27929. --- module/custom/model.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/module/custom/model.php b/module/custom/model.php index 0c330e1a5a..cc24f6e11c 100644 --- a/module/custom/model.php +++ b/module/custom/model.php @@ -847,11 +847,16 @@ class customModel extends model ->andWhere('acl')->eq('program') ->fetchGroup('parent', 'id'); - $programs = $this->dao->select("id,CONCAT(PM,',',openedBy)")->from(TABLE_PROGRAM) + $programPM = $this->dao->select("id,PM")->from(TABLE_PROGRAM) ->where('id')->in(array_keys($projectGroup)) ->andWhere('type')->eq('program') ->fetchPairs(); + $stakeholders = $this->dao->select('*')->from(TABLE_STAKEHOLDER) + ->where('objectType')->eq('program') + ->andWhere('objectID')->in(array_keys($projectGroup)) + ->fetchGroup('objectID', 'user'); + $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'); @@ -863,7 +868,11 @@ class customModel extends model { foreach($projects as $project) { - $whitelist = rtrim($project->whitelist . ',' . zget($programs, $project->parent, '')); + $PM = zget($programPM, $project->parent, ''); + $stakeholder = zget($stakeholders, $project->parent, ''); + if($stakeholder) $stakeholder = join(',', array_keys($stakeholder)); + + $whitelist = rtrim($project->whitelist . ',' . $PM . ',' . $stakeholder); $whitelist = explode(',', $whitelist); $whitelist = array_filter(array_unique($whitelist)); $whitelist = join(',', $whitelist); From 63f84968b78b2243587147754a7c98596b39d0c6 Mon Sep 17 00:00:00 2001 From: daitingting Date: Wed, 28 Sep 2022 07:17:52 +0000 Subject: [PATCH 3/3] * Finish task #70546. --- framework/router.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/router.class.php b/framework/router.class.php index d0f81d9e73..2981a840d0 100755 --- a/framework/router.class.php +++ b/framework/router.class.php @@ -224,7 +224,7 @@ class router extends baseRouter /* User preference init. */ $config->URSR = $URSR; - $config->URAndSR = $URAndSR; + $config->URAndSR = $URAndSR && strpos(",{$disabledFeatures},", ',URStory,') === false; $config->programLink = 'program-browse'; $config->productLink = 'product-all'; $config->projectLink = 'project-browse';