From b6b1925c28531052b83bc95648fdc3539352be33 Mon Sep 17 00:00:00 2001 From: Zongjun Lan Date: Mon, 11 Apr 2022 15:45:34 +0800 Subject: [PATCH 1/3] * fix bug error params --- module/kanban/control.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/module/kanban/control.php b/module/kanban/control.php index 94f5b70d70..a91f8bedd0 100644 --- a/module/kanban/control.php +++ b/module/kanban/control.php @@ -1404,8 +1404,8 @@ class kanban extends control if(dao::isError()) return $this->send(array('result' => 'fail', 'message' => dao::getError())); $kanbanID = $this->kanban->getKanbanIDByregion($regionID); - $$browseType = $this->config->vision == 'lite' ? 'task' : 'all'; - $kanbanGroup = $this->kanban->getRDKanban($kanbanID, $$browseType); + $browseType = $this->config->vision == 'lite' ? 'task' : 'all'; + $kanbanGroup = $this->kanban->getRDKanban($kanbanID, $browseType); return print(json_encode($kanbanGroup)); } From 6af3e182b07acab527a72fbd547b9c60e08bdc60 Mon Sep 17 00:00:00 2001 From: Zongjun Lan Date: Mon, 11 Apr 2022 15:48:46 +0800 Subject: [PATCH 2/3] * fix bug error params --- module/kanban/control.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/kanban/control.php b/module/kanban/control.php index a91f8bedd0..40bd8f5c49 100644 --- a/module/kanban/control.php +++ b/module/kanban/control.php @@ -1404,7 +1404,7 @@ class kanban extends control if(dao::isError()) return $this->send(array('result' => 'fail', 'message' => dao::getError())); $kanbanID = $this->kanban->getKanbanIDByregion($regionID); - $browseType = $this->config->vision == 'lite' ? 'task' : 'all'; + $browseType = $this->config->vision == 'lite' ? 'task' : $this->session->execLaneType; $kanbanGroup = $this->kanban->getRDKanban($kanbanID, $browseType); return print(json_encode($kanbanGroup)); From 8ef47e9292bbc42e450344350c0d47b238ee2374 Mon Sep 17 00:00:00 2001 From: Zongjun Lan Date: Tue, 12 Apr 2022 10:58:35 +0800 Subject: [PATCH 3/3] * fix bug *18722 --- module/product/model.php | 43 +++++++++++++++++++++++++++++++++++++++- module/program/model.php | 7 +++++++ 2 files changed, 49 insertions(+), 1 deletion(-) diff --git a/module/product/model.php b/module/product/model.php index a45425cd51..daa261a65b 100644 --- a/module/product/model.php +++ b/module/product/model.php @@ -1801,7 +1801,11 @@ class productModel extends model ->andWhere('status')->eq('normal') ->fetchGroup('product', 'id'); - return array('programList' => $programList, 'productList' => $productList, 'planList' => $planList, 'projectList' => $projectList, 'executionList' => $executionList, 'projectProduct' => $projectProduct, 'projectLatestExecutions' => $projectLatestExecutions, 'hourList' => $hourList, 'releaseList' => $releaseList); + /* Convert predefined HTML entities to characters. */ + $statsData = array('programList' => $programList, 'productList' => $productList, 'planList' => $planList, 'projectList' => $projectList, 'executionList' => $executionList, 'projectProduct' => $projectProduct, 'projectLatestExecutions' => $projectLatestExecutions, 'hourList' => $hourList, 'releaseList' => $releaseList); + $statsData = $this->covertHtmlSpecialChars($statsData); + + return $statsData; } /** @@ -2256,4 +2260,41 @@ class productModel extends model $this->lang->product->branch = sprintf($this->lang->product->branch, $this->lang->product->branchName[$product->type]); } } + + /** + * Convert predefined HTML entities to characters + * + * @param array $statsData + * @return array + */ + public function covertHtmlSpecialChars($statsData) + { + if(empty($statsData)) return array(); + + foreach($statsData as $key => $data) + { + if($key == 'productList' || $key == 'projectList') + { + !empty($data) && array_map(function($item) + { + return $item->name = htmlspecialchars_decode($item->name, ENT_QUOTES); + }, + $data); + } + + if($key == 'planList') + { + foreach($data as $productID => $plan) + { + !empty($plan) && array_map(function($planItem) + { + return $planItem->title = htmlspecialchars_decode($planItem->title, ENT_QUOTES); + }, + $plan); + } + } + } + + return $statsData; + } } diff --git a/module/program/model.php b/module/program/model.php index f7f4f5bb8b..6c8f7ef137 100644 --- a/module/program/model.php +++ b/module/program/model.php @@ -247,6 +247,7 @@ class programModel extends model return $planVal->title = htmlspecialchars_decode($planVal->title, ENT_QUOTES); }, $product->plans); + $product->name = htmlspecialchars_decode($product->name, ENT_QUOTES); $product->releases = zget($releases, $product->id, array()); $projects = zget($projectGroup, $product->id, array()); @@ -265,6 +266,9 @@ class programModel extends model $project->execution = $execution; $project->hours['progress'] = zget($projectHours, $project->id, array()); + + /* Convert predefined HTML entities to characters. */ + $project->name = htmlspecialchars_decode($project->name, ENT_QUOTES); $product->projects[$status][] = $project; } } @@ -1368,6 +1372,9 @@ class programModel extends model $project->leftTasks = isset($leftTasks[$project->id]) ? $leftTasks[$project->id]->tasks : '—'; $project->teamMembers = isset($teamMembers[$project->id]) ? array_keys($teamMembers[$project->id]) : array(); + /* Convert predefined HTML entities to characters. */ + $project->name = htmlspecialchars_decode($project->name, ENT_QUOTES); + $stats[$key] = $project; } return $stats;