From 3df376cabb35ee0d0dbcc954f161037c82da9254 Mon Sep 17 00:00:00 2001 From: xieqiyu Date: Wed, 24 Aug 2022 18:31:17 +0800 Subject: [PATCH] * Fix bug#26777. --- module/my/view/requirement.html.php | 29 +++++++++++++++++++++++------ module/my/view/story.html.php | 24 +++++++++++++++++++++--- module/story/model.php | 2 +- 3 files changed, 45 insertions(+), 10 deletions(-) diff --git a/module/my/view/requirement.html.php b/module/my/view/requirement.html.php index b26b4eec70..9628c48df1 100644 --- a/module/my/view/requirement.html.php +++ b/module/my/view/requirement.html.php @@ -103,7 +103,15 @@ { $vars = "story={$story->id}"; echo common::buildIconButton('story', 'change', "$vars&from=&storyType=requirement", $story, 'list', 'alter', '', 'iframe', true); - echo common::buildIconButton('story', 'review', "$vars&from=product&storyType=requirement", $story, 'list', 'search', '', 'iframe', true); + + if(strpos('draft,changing', $story->status) !== false) + { + echo common::buildIconButton('story', 'submitReview', "$vars&storyType=requirement", $story, 'list', 'sub-review', '', 'iframe', true); + } + else + { + echo common::buildIconButton('story', 'review', "$vars&from=product&storyType=requirement", $story, 'list', 'search', '', 'iframe', true); + } echo common::buildIconButton('story', 'recall', "$vars&from=list&storyType=requirement", $story, 'list', 'undo', 'hiddenwin', '', '', '', $lang->story->recall); echo common::buildIconButton('story', 'close', "$vars&from=&storyType=requirement", $story, 'list', '', '', 'iframe', true); echo common::buildIconButton('story', 'edit', "$vars&from=default&storyType=requirement", $story, 'list', '', '', 'iframe', true, "data-width='95%'"); @@ -147,11 +155,20 @@ } else { - common::printIcon('story', 'change', $vars, $child, 'list', 'alter'); - common::printIcon('story', 'review', $vars, $child, 'list', 'search'); - common::printIcon('story', 'close', $vars, $child, 'list', '', '', 'iframe', true); - common::printIcon('story', 'edit', $vars, $child, 'list'); - common::printIcon('story', 'createCase', "productID=$child->product&branch=$child->branch&module=0&from=¶m=0&$vars", $child, 'list', 'sitemap'); + common::printIcon('story', 'change', "$vars&from=&storyType=requirement", $child, 'list', 'alter'); + + if(strpos('draft,changing', $child->status) !== false) + { + common::printIcon('story', 'submitReview', "$vars&storyType=requirement", $child, 'list', 'sub-review', '', 'iframe', true); + } + else + { + common::printIcon('story', 'review', "$vars&from=product&storyType=requirement", $child, 'list', 'search', '', 'iframe', true); + } + + common::printIcon('story', 'recall', "$vars&from=list&storyType=requirement", $child, 'list', 'undo', 'hiddenwin', '', '', '', $lang->story->recall); + common::printIcon('story', 'close', "$vars&from=&storyType=requirement", $child, 'list', '', '', 'iframe', true); + common::printIcon('story', 'edit', "$vars&from=default&storyType=requirement", $child, 'list'); } } ?> diff --git a/module/my/view/story.html.php b/module/my/view/story.html.php index 192f898a06..e19a82ece3 100644 --- a/module/my/view/story.html.php +++ b/module/my/view/story.html.php @@ -105,7 +105,16 @@ { $vars = "story={$story->id}"; echo common::buildIconButton('story', 'change', $vars, $story, 'list', 'alter', '', 'iframe', true); - echo common::buildIconButton('story', 'review', $vars, $story, 'list', 'search', '', 'iframe', true); + + if(strpos('draft,changing', $story->status) !== false) + { + echo common::buildIconButton('story', 'submitReview', $vars, $story, 'list', 'sub-review', '', 'iframe', true); + } + else + { + echo common::buildIconButton('story', 'review', $vars, $story, 'list', 'search', '', 'iframe', true); + } + echo common::buildIconButton('story', 'recall', $vars, $story, 'list', 'undo', 'hiddenwin', '', '', '', $lang->story->recall); echo common::buildIconButton('story', 'close', $vars, $story, 'list', '', '', 'iframe', true); echo common::buildIconButton('story', 'edit', $vars, $story, 'list', '', '', 'iframe', true, "data-width='95%'"); @@ -145,8 +154,17 @@ if($canBeChanged) { $vars = "story={$child->id}"; - common::printIcon('story', 'change', $vars, $child, 'list', 'alter', '', 'iframe', true); - common::printIcon('story', 'review', $vars, $child, 'list', 'search', '', 'iframe', true); + common::printIcon('story', 'change', $vars, $child, 'list', 'alter', '', 'iframe', true); + + if(strpos('draft,changing', $child->status) !== false) + { + common::printIcon('story', 'submitReview', $vars, $child, 'list', 'sub-review', '', 'iframe', true); + } + else + { + common::printIcon('story', 'review', $vars, $child, 'list', 'search', '', 'iframe', true); + } + common::printIcon('story', 'recall', $vars, $child, 'list', 'undo', 'hiddenwin', '', '', '', $lang->story->recall); common::printIcon('story', 'close', $vars, $child, 'list', '', '', 'iframe', true); common::printIcon('story', 'edit', $vars, $child, 'list', '', '', 'iframe', true, "data-width='95%'"); common::printIcon('story', 'createCase', "productID=$child->product&branch=$child->branch&module=0&from=¶m=0&$vars", $child, 'list', 'sitemap', '', 'iframe', true, "data-width='95%'"); diff --git a/module/story/model.php b/module/story/model.php index dda6cac00c..00b23b32ea 100644 --- a/module/story/model.php +++ b/module/story/model.php @@ -4290,7 +4290,7 @@ class storyModel extends model if($type == 'view') { $menu .= $this->buildMenu('story', 'change', $params . "&from=&storyType=$story->type", $story, $type, 'alter', '', 'showinonlybody'); - if($story->status == 'draft') $menu .= $this->buildMenu('story', 'submitReview', $params . "&storyType=$story->type", $story, $type, 'sub-review', '', 'showinonlybody iframe', true, "data-width='50%'"); + if(strpos('draft,changing', $story->status) !== false) $menu .= $this->buildMenu('story', 'submitReview', $params . "&storyType=$story->type", $story, $type, 'sub-review', '', 'showinonlybody iframe', true, "data-width='50%'"); $title = $story->status == 'changing' ? $this->lang->story->recallChange : $this->lang->story->recall; $menu .= $this->buildMenu('story', 'recall', $params . "&from=view&confirm=no&storyType=$story->type", $story, $type, 'undo', 'hiddenwin', 'showinonlybody', false, '', $title);