From 1082a2425fd55dedb14ad83d8453b10a0713f2bd Mon Sep 17 00:00:00 2001
From: Yagami <976204163@qq.com>
Date: Wed, 10 Mar 2021 13:43:15 +0800
Subject: [PATCH 1/7] * Finish task #36436.
---
module/bug/model.php | 2 +-
module/common/lang/de.php | 4 +++-
module/common/lang/en.php | 6 +++++-
module/common/lang/fr.php | 4 +++-
module/common/lang/menuOrder.php | 12 ++++-------
module/common/lang/vi.php | 4 +++-
module/common/lang/zh-cn.php | 7 +++++--
.../custom/view/browsestoryconcept.html.php | 1 +
module/dev/lang/de.php | 8 ++++----
module/dev/lang/en.php | 8 ++++----
module/dev/lang/fr.php | 8 ++++----
module/dev/lang/vi.php | 6 +++---
module/dev/lang/zh-cn.php | 8 ++++----
module/execution/control.php | 8 ++++----
module/execution/lang/de.php | 20 +++++++++----------
module/execution/lang/en.php | 20 +++++++++----------
module/execution/lang/fr.php | 20 +++++++++----------
module/execution/lang/vi.php | 20 +++++++++----------
module/execution/lang/zh-cn.php | 18 ++++++++---------
module/execution/model.php | 4 ++--
.../execution/view/ajaxgetdropmenu.html.php | 2 +-
21 files changed, 100 insertions(+), 90 deletions(-)
diff --git a/module/bug/model.php b/module/bug/model.php
index c8e0d1d527..142eeb2f80 100644
--- a/module/bug/model.php
+++ b/module/bug/model.php
@@ -519,7 +519,7 @@ class bugModel extends model
->andWhere('t1.toStory')->eq(0)
->beginIF(!empty($products))->andWhere('t1.product')->in($products)->fi()
->beginIF(empty($products))->andWhere('t1.execution')->eq($executionID)->fi()
- ->andWhere('t2.execution')->eq($executionID)
+ ->andWhere('t2.project')->eq($executionID)
->andWhere("(t2.branch = '0' OR t1.branch = '0' OR t2.branch = t1.branch)")
->andWhere('t1.deleted')->eq(0)
->orderBy('id desc')
diff --git a/module/common/lang/de.php b/module/common/lang/de.php
index 36b7e1747d..9accc59c8f 100644
--- a/module/common/lang/de.php
+++ b/module/common/lang/de.php
@@ -149,7 +149,7 @@ $lang->mainNav->qa = ' Test|qa|index|';
$lang->mainNav->repo = ' Code|repo|browse|';
$lang->mainNav->doc = ' Doc|doc|index|';
$lang->mainNav->report = " Statistic|report|productsummary|";
-$lang->mainNav->system = ' System|my|team|';
+$lang->mainNav->system = ' System|company|browse|';
$lang->mainNav->admin = ' Admin|admin|index|';
if($config->systemMode == 'new') $lang->mainNav->program = " Program|$programModule|$programMethod|";
@@ -559,6 +559,8 @@ $lang->admin->subMenu->system->cron = array('link' => 'Cron|cron|index', '
$lang->admin->subMenu->system->timezone = array('link' => 'Timezone|custom|timezone', 'subModule' => 'custom');
$lang->admin->subMenu->system->buildIndex = array('link' => 'Full Text Search|search|buildindex|');
+$lang->admin->dividerMenu = ',message,system,';
+
$lang->convert = new stdclass();
$lang->upgrade = new stdclass();
$lang->action = new stdclass();
diff --git a/module/common/lang/en.php b/module/common/lang/en.php
index 699dc94eab..6fa36ce027 100644
--- a/module/common/lang/en.php
+++ b/module/common/lang/en.php
@@ -149,7 +149,7 @@ $lang->mainNav->qa = ' Test|qa|index|';
$lang->mainNav->repo = ' Code|repo|browse|';
$lang->mainNav->doc = ' Doc|doc|index|';
$lang->mainNav->report = " Statistic|report|productsummary|";
-$lang->mainNav->system = ' System|my|team|';
+$lang->mainNav->system = ' System|company|browse|';
$lang->mainNav->admin = ' Admin|admin|index|';
if($config->systemMode == 'new') $lang->mainNav->program = " Program|$programModule|$programMethod|";
@@ -172,6 +172,8 @@ else
$lang->project->menu->browse = array('link' => "$lang->executionCommon|project|browse|");
}
+$lang->project->dividerMenu = ',execution,programplan,doc,other,';
+
$lang->program->viewMenu = new stdclass();
$lang->program->viewMenu->product = array('link' => 'Product|program|product|program=%s', 'alias' => 'view');
$lang->program->viewMenu->project = array('link' => "Project|program|project|program=%s");
@@ -552,6 +554,8 @@ $lang->admin->subMenu->system->cron = array('link' => 'Cron|cron|index', '
$lang->admin->subMenu->system->timezone = array('link' => 'Timezone|custom|timezone', 'subModule' => 'custom');
$lang->admin->subMenu->system->buildIndex = array('link' => 'Full Text Search|search|buildindex|');
+$lang->admin->dividerMenu = ',message,system,';
+
$lang->convert = new stdclass();
$lang->upgrade = new stdclass();
$lang->action = new stdclass();
diff --git a/module/common/lang/fr.php b/module/common/lang/fr.php
index ea8d78141e..968d41c9aa 100644
--- a/module/common/lang/fr.php
+++ b/module/common/lang/fr.php
@@ -149,7 +149,7 @@ $lang->mainNav->qa = ' Test|qa|index|';
$lang->mainNav->repo = ' Code|repo|browse|';
$lang->mainNav->doc = ' Doc|doc|index|';
$lang->mainNav->report = " Statistic|report|productsummary|";
-$lang->mainNav->system = ' System|my|team|';
+$lang->mainNav->system = ' System|company|browse|';
$lang->mainNav->admin = ' Admin|admin|index|';
if($config->systemMode == 'new') $lang->mainNav->program = " Program|$programModule|$programMethod|";
@@ -551,6 +551,8 @@ $lang->admin->subMenu->system->cron = array('link' => 'Cron|cron|index', '
$lang->admin->subMenu->system->timezone = array('link' => 'Timezone|custom|timezone', 'subModule' => 'custom');
$lang->admin->subMenu->system->buildIndex = array('link' => 'Full Text Search|search|buildindex|');
+$lang->admin->dividerMenu = ',message,system,';
+
$lang->convert = new stdclass();
$lang->upgrade = new stdclass();
$lang->action = new stdclass();
diff --git a/module/common/lang/menuOrder.php b/module/common/lang/menuOrder.php
index 4b6b16c7fe..c5ae0b2f4b 100644
--- a/module/common/lang/menuOrder.php
+++ b/module/common/lang/menuOrder.php
@@ -154,16 +154,12 @@ $lang->system->menuOrder[15] = 'calendar';
/* admin menu order. */
$lang->admin->menuOrder[5] = 'index';
-$lang->admin->menuOrder[9] = 'company';
-$lang->admin->menuOrder[10] = 'message';
+$lang->admin->menuOrder[10] = 'model';
$lang->admin->menuOrder[15] = 'custom';
-$lang->admin->menuOrder[20] = 'sso';
+$lang->admin->menuOrder[20] = 'message';
$lang->admin->menuOrder[25] = 'extension';
-$lang->admin->menuOrder[30] = 'dev';
-$lang->admin->menuOrder[35] = 'translate';
-$lang->admin->menuOrder[40] = 'data';
-$lang->admin->menuOrder[45] = 'safe';
-$lang->admin->menuOrder[50] = 'system';
+$lang->admin->menuOrder[35] = 'dev';
+$lang->admin->menuOrder[40] = 'system';
$lang->admin->subMenuOrder = new stdclass();
$lang->admin->subMenuOrder->message[5] = 'mail';
diff --git a/module/common/lang/vi.php b/module/common/lang/vi.php
index 14800343e1..7008e03aae 100644
--- a/module/common/lang/vi.php
+++ b/module/common/lang/vi.php
@@ -149,7 +149,7 @@ $lang->mainNav->qa = ' Test|qa|index|';
$lang->mainNav->repo = ' Code|repo|browse|';
$lang->mainNav->doc = ' Doc|doc|index|';
$lang->mainNav->report = " Statistic|report|productsummary|";
-$lang->mainNav->system = ' System|my|team|';
+$lang->mainNav->system = ' System|company|browse|';
$lang->mainNav->admin = ' Admin|admin|index|';
if($config->systemMode == 'new') $lang->mainNav->program = " Program|$programModule|$programMethod|";
@@ -557,6 +557,8 @@ $lang->admin->subMenu->system->cron = array('link' => 'Cron|cron|index', '
$lang->admin->subMenu->system->timezone = array('link' => 'Timezone|custom|timezone', 'subModule' => 'custom');
$lang->admin->subMenu->system->buildIndex = array('link' => 'Full Text Search|search|buildindex|');
+$lang->admin->dividerMenu = ',message,system,';
+
$lang->convert = new stdclass();
$lang->upgrade = new stdclass();
$lang->action = new stdclass();
diff --git a/module/common/lang/zh-cn.php b/module/common/lang/zh-cn.php
index f2b6f24138..90c548368e 100644
--- a/module/common/lang/zh-cn.php
+++ b/module/common/lang/zh-cn.php
@@ -149,7 +149,7 @@ $lang->mainNav->qa = ' 测试|qa|index|';
$lang->mainNav->repo = ' 代码|repo|browse|';
$lang->mainNav->doc = ' 文档|doc|index|';
$lang->mainNav->report = " 统计|report|productSummary|";
-$lang->mainNav->system = ' 组织|my|team|';
+$lang->mainNav->system = ' 组织|company|browse|';
$lang->mainNav->admin = ' 后台|admin|index|';
if($config->systemMode == 'new') $lang->mainNav->program = " 项目集|$programModule|$programMethod|";
@@ -563,6 +563,8 @@ $lang->admin->subMenu->system->cron = array('link' => '定时|cron|index',
$lang->admin->subMenu->system->timezone = array('link' => '时区|custom|timezone', 'subModule' => 'custom');
$lang->admin->subMenu->system->buildIndex = array('link' => '重建索引|search|buildindex|');
+$lang->admin->dividerMenu = ',message,system,';
+
$lang->convert = new stdclass();
$lang->upgrade = new stdclass();
$lang->action = new stdclass();
@@ -699,6 +701,7 @@ $lang->navGroup->cron = 'admin';
$lang->navGroup->backup = 'admin';
$lang->navGroup->mail = 'admin';
$lang->navGroup->dev = 'admin';
+$lang->navGroup->entry = 'admin';
$lang->navGroup->extension = 'admin';
$lang->navGroup->action = 'admin';
$lang->navGroup->search = 'admin';
@@ -967,6 +970,6 @@ $lang->projectstory->menu = new stdclass();
$lang->stakeholder->menu = $lang->scrum->setMenu;
$lang->nc->menu = $lang->auditplan->menu;
-$lang->noMenuModule = array('report', 'my', 'todo', 'effort', 'program', 'product', 'execution', 'task', 'build', 'productplan', 'projectbuild', 'projectrelease', 'projectstory', 'story', 'branch', 'release', 'attend', 'leave', 'makeup', 'overtime', 'lieu', 'custom', 'admin', 'mail', 'extension', 'dev', 'backup', 'action', 'cron', 'pssp', 'sms', 'message', 'webhook', 'search', 'score', 'stage');
+$lang->noMenuModule = array('report', 'my', 'todo', 'effort', 'program', 'product', 'execution', 'task', 'build', 'productplan', 'projectbuild', 'projectrelease', 'projectstory', 'story', 'branch', 'release', 'attend', 'leave', 'makeup', 'overtime', 'lieu', 'custom', 'admin', 'mail', 'extension', 'dev', 'backup', 'action', 'cron', 'pssp', 'sms', 'message', 'webhook', 'search', 'score', 'stage', 'entry');
include (dirname(__FILE__) . '/menuOrder.php');
diff --git a/module/custom/view/browsestoryconcept.html.php b/module/custom/view/browsestoryconcept.html.php
index 18928bebb7..1d21b92205 100644
--- a/module/custom/view/browsestoryconcept.html.php
+++ b/module/custom/view/browsestoryconcept.html.php
@@ -55,6 +55,7 @@
diff --git a/module/testcase/view/view.html.php b/module/testcase/view/view.html.php
index 86379f11eb..8fa4c993b8 100644
--- a/module/testcase/view/view.html.php
+++ b/module/testcase/view/view.html.php
@@ -354,6 +354,7 @@ js::set('retrack', $lang->retrack);
$(function()
{
$('#subNavbar [data-id=testcase]').addClass('active');
+ $('#navbar [data-id=testcase]').addClass('active');
})
diff --git a/module/testtask/view/browseunits.html.php b/module/testtask/view/browseunits.html.php
index 5ce1eab1ac..c778e1ac7b 100644
--- a/module/testtask/view/browseunits.html.php
+++ b/module/testtask/view/browseunits.html.php
@@ -67,8 +67,8 @@
failCount?> |
id", '', 'list', 'list-alt','','',true);
- common::printIcon('testtask', 'edit', "taskID=$task->id", $task, 'list','','','',true);
+ common::printIcon('testtask', 'unitCases', "taskID=$task->id", '', 'list', 'list-alt', '', 'iframe', true, 'data-width="70%"');
+ common::printIcon('testtask', 'edit', "taskID=$task->id", $task, 'list', '', '', 'iframe', true);
if(common::hasPriv('testtask', 'delete', $task))
{
$deleteURL = $this->createLink('testtask', 'delete', "taskID=$task->id&confirm=yes");
From b4fe16255515d7d16eb99c257300a0f50797217b Mon Sep 17 00:00:00 2001
From: tianshujie98
Date: Wed, 10 Mar 2021 15:26:32 +0800
Subject: [PATCH 7/7] * Finish task #36501.
---
module/execution/model.php | 5 +++--
module/group/lang/resource.php | 26 +++++++++++++-----------
module/projectstory/lang/de.php | 15 +++++++-------
module/projectstory/lang/en.php | 15 +++++++-------
module/projectstory/lang/fr.php | 15 +++++++-------
module/projectstory/lang/vi.php | 15 +++++++-------
module/projectstory/lang/zh-cn.php | 15 +++++++-------
module/story/control.php | 2 +-
module/story/lang/de.php | 32 +++++++++++++++---------------
module/story/lang/en.php | 32 +++++++++++++++---------------
module/story/lang/fr.php | 32 +++++++++++++++---------------
module/story/lang/vi.php | 32 +++++++++++++++---------------
module/story/lang/zh-cn.php | 32 +++++++++++++++---------------
module/story/model.php | 4 ++--
14 files changed, 140 insertions(+), 132 deletions(-)
diff --git a/module/execution/model.php b/module/execution/model.php
index f7547627c6..8c8fae3e6b 100644
--- a/module/execution/model.php
+++ b/module/execution/model.php
@@ -2043,7 +2043,7 @@ class executionModel extends model
$data->order = ++$lastOrder;
$this->dao->insert(TABLE_PROJECTSTORY)->data($data)->exec();
$this->story->setStage($storyID);
- $action = $executionID == $this->session->PRJ ? 'linked2prj' : 'linked2execution';
+ $action = $executionID == $this->session->PRJ ? 'linked2project' : 'linked2execution';
$this->action->create('story', $storyID, $action, '', $executionID);
}
}
@@ -2119,7 +2119,8 @@ class executionModel extends model
}
$this->loadModel('story')->setStage($storyID);
- $this->loadModel('action')->create('story', $storyID, 'unlinkedfromexecution', '', $executionID);
+ $objectType = $executionID == $this->session->PRJ ? unlinkedfromproject : unlinkedfromexecution;
+ $this->loadModel('action')->create('story', $storyID, $objectType, '', $executionID);
$tasks = $this->dao->select('id')->from(TABLE_TASK)->where('story')->eq($storyID)->andWhere('execution')->eq($executionID)->andWhere('status')->in('wait,doing')->fetchPairs('id');
foreach($tasks as $taskID)
diff --git a/module/group/lang/resource.php b/module/group/lang/resource.php
index ecb72c2ef2..2acc1d244f 100644
--- a/module/group/lang/resource.php
+++ b/module/group/lang/resource.php
@@ -269,17 +269,19 @@ if($config->systemMode == 'new')
/* Project Story. */
$lang->resource->projectstory = new stdclass();
- $lang->resource->projectstory->story = 'story';
- $lang->resource->projectstory->track = 'track';
- $lang->resource->projectstory->view = 'view';
- $lang->resource->projectstory->linkStory = 'linkStory';
- $lang->resource->projectstory->unlinkStory = 'unlinkStory';
+ $lang->resource->projectstory->story = 'story';
+ $lang->resource->projectstory->track = 'track';
+ $lang->resource->projectstory->view = 'view';
+ $lang->resource->projectstory->linkStory = 'linkStory';
+ $lang->resource->projectstory->unlinkStory = 'unlinkStory';
+ $lang->resource->projectstory->importplanstories = 'importplanstories';
$lang->projectstory->methodOrder[5] = 'story';
$lang->projectstory->methodOrder[10] = 'track';
$lang->projectstory->methodOrder[15] = 'view';
$lang->projectstory->methodOrder[20] = 'linkStory';
$lang->projectstory->methodOrder[25] = 'unlinkStory';
+ $lang->projectstory->methodOrder[23] = 'importplanstories';
/* Release. */
$lang->resource->projectbuild = new stdclass();
@@ -1217,15 +1219,15 @@ $lang->tree->methodOrder[30] = 'delete';
/* Report. */
$lang->resource->report = new stdclass();
-$lang->resource->report->index = 'index';
-$lang->resource->report->projectDeviation = 'projectDeviation';
-$lang->resource->report->productSummary = 'productSummary';
-$lang->resource->report->bugCreate = 'bugCreate';
-$lang->resource->report->bugAssign = 'bugAssign';
-$lang->resource->report->workload = 'workload';
+$lang->resource->report->index = 'index';
+$lang->resource->report->executionDeviation = 'executionDeviation';
+$lang->resource->report->productSummary = 'productSummary';
+$lang->resource->report->bugCreate = 'bugCreate';
+$lang->resource->report->bugAssign = 'bugAssign';
+$lang->resource->report->workload = 'workload';
$lang->report->methodOrder[0] = 'index';
-$lang->report->methodOrder[5] = 'projectDeviation';
+$lang->report->methodOrder[5] = 'executionDeviation';
$lang->report->methodOrder[10] = 'productSummary';
$lang->report->methodOrder[15] = 'bugCreate';
$lang->report->methodOrder[20] = 'workload';
diff --git a/module/projectstory/lang/de.php b/module/projectstory/lang/de.php
index fb4cb26b0b..e7b910f23a 100644
--- a/module/projectstory/lang/de.php
+++ b/module/projectstory/lang/de.php
@@ -1,11 +1,12 @@
projectstory->common = "Project {$lang->SRCommon}";
-$lang->projectstory->index = "{$lang->SRCommon} Home";
-$lang->projectstory->view = "{$lang->SRCommon} Detail";
-$lang->projectstory->story = "{$lang->SRCommon} List";
-$lang->projectstory->track = 'Tracking Matrix';
-$lang->projectstory->linkStory = 'Linked' . $lang->SRCommon;
-$lang->projectstory->unlinkStory = 'Unlinked' . $lang->SRCommon;
+$lang->projectstory->common = "Project {$lang->SRCommon}";
+$lang->projectstory->index = "{$lang->SRCommon} Home";
+$lang->projectstory->view = "{$lang->SRCommon} Detail";
+$lang->projectstory->story = "{$lang->SRCommon} List";
+$lang->projectstory->track = 'Tracking Matrix';
+$lang->projectstory->linkStory = 'Linked' . $lang->SRCommon;
+$lang->projectstory->unlinkStory = 'Unlinked' . $lang->SRCommon;
+$lang->projectstory->importplanstories = 'Linked by plan' . $lang->SRCommon;
global $app;
$app->loadLang('product');
diff --git a/module/projectstory/lang/en.php b/module/projectstory/lang/en.php
index fb4cb26b0b..e7b910f23a 100644
--- a/module/projectstory/lang/en.php
+++ b/module/projectstory/lang/en.php
@@ -1,11 +1,12 @@
projectstory->common = "Project {$lang->SRCommon}";
-$lang->projectstory->index = "{$lang->SRCommon} Home";
-$lang->projectstory->view = "{$lang->SRCommon} Detail";
-$lang->projectstory->story = "{$lang->SRCommon} List";
-$lang->projectstory->track = 'Tracking Matrix';
-$lang->projectstory->linkStory = 'Linked' . $lang->SRCommon;
-$lang->projectstory->unlinkStory = 'Unlinked' . $lang->SRCommon;
+$lang->projectstory->common = "Project {$lang->SRCommon}";
+$lang->projectstory->index = "{$lang->SRCommon} Home";
+$lang->projectstory->view = "{$lang->SRCommon} Detail";
+$lang->projectstory->story = "{$lang->SRCommon} List";
+$lang->projectstory->track = 'Tracking Matrix';
+$lang->projectstory->linkStory = 'Linked' . $lang->SRCommon;
+$lang->projectstory->unlinkStory = 'Unlinked' . $lang->SRCommon;
+$lang->projectstory->importplanstories = 'Linked by plan' . $lang->SRCommon;
global $app;
$app->loadLang('product');
diff --git a/module/projectstory/lang/fr.php b/module/projectstory/lang/fr.php
index fb4cb26b0b..e7b910f23a 100644
--- a/module/projectstory/lang/fr.php
+++ b/module/projectstory/lang/fr.php
@@ -1,11 +1,12 @@
projectstory->common = "Project {$lang->SRCommon}";
-$lang->projectstory->index = "{$lang->SRCommon} Home";
-$lang->projectstory->view = "{$lang->SRCommon} Detail";
-$lang->projectstory->story = "{$lang->SRCommon} List";
-$lang->projectstory->track = 'Tracking Matrix';
-$lang->projectstory->linkStory = 'Linked' . $lang->SRCommon;
-$lang->projectstory->unlinkStory = 'Unlinked' . $lang->SRCommon;
+$lang->projectstory->common = "Project {$lang->SRCommon}";
+$lang->projectstory->index = "{$lang->SRCommon} Home";
+$lang->projectstory->view = "{$lang->SRCommon} Detail";
+$lang->projectstory->story = "{$lang->SRCommon} List";
+$lang->projectstory->track = 'Tracking Matrix';
+$lang->projectstory->linkStory = 'Linked' . $lang->SRCommon;
+$lang->projectstory->unlinkStory = 'Unlinked' . $lang->SRCommon;
+$lang->projectstory->importplanstories = 'Linked by plan' . $lang->SRCommon;
global $app;
$app->loadLang('product');
diff --git a/module/projectstory/lang/vi.php b/module/projectstory/lang/vi.php
index fb4cb26b0b..e7b910f23a 100644
--- a/module/projectstory/lang/vi.php
+++ b/module/projectstory/lang/vi.php
@@ -1,11 +1,12 @@
projectstory->common = "Project {$lang->SRCommon}";
-$lang->projectstory->index = "{$lang->SRCommon} Home";
-$lang->projectstory->view = "{$lang->SRCommon} Detail";
-$lang->projectstory->story = "{$lang->SRCommon} List";
-$lang->projectstory->track = 'Tracking Matrix';
-$lang->projectstory->linkStory = 'Linked' . $lang->SRCommon;
-$lang->projectstory->unlinkStory = 'Unlinked' . $lang->SRCommon;
+$lang->projectstory->common = "Project {$lang->SRCommon}";
+$lang->projectstory->index = "{$lang->SRCommon} Home";
+$lang->projectstory->view = "{$lang->SRCommon} Detail";
+$lang->projectstory->story = "{$lang->SRCommon} List";
+$lang->projectstory->track = 'Tracking Matrix';
+$lang->projectstory->linkStory = 'Linked' . $lang->SRCommon;
+$lang->projectstory->unlinkStory = 'Unlinked' . $lang->SRCommon;
+$lang->projectstory->importplanstories = 'Linked by plan' . $lang->SRCommon;
global $app;
$app->loadLang('product');
diff --git a/module/projectstory/lang/zh-cn.php b/module/projectstory/lang/zh-cn.php
index 2d39182b70..a6baedf642 100644
--- a/module/projectstory/lang/zh-cn.php
+++ b/module/projectstory/lang/zh-cn.php
@@ -1,11 +1,12 @@
projectstory->common = "项目{$lang->SRCommon}";
-$lang->projectstory->index = "{$lang->SRCommon}主页";
-$lang->projectstory->view = "{$lang->SRCommon}详情";
-$lang->projectstory->story = "{$lang->SRCommon}列表";
-$lang->projectstory->track = '矩阵';
-$lang->projectstory->linkStory = '关联' . $lang->SRCommon;
-$lang->projectstory->unlinkStory = '移除' . $lang->SRCommon;
+$lang->projectstory->common = "项目{$lang->SRCommon}";
+$lang->projectstory->index = "{$lang->SRCommon}主页";
+$lang->projectstory->view = "{$lang->SRCommon}详情";
+$lang->projectstory->story = "{$lang->SRCommon}列表";
+$lang->projectstory->track = '矩阵';
+$lang->projectstory->linkStory = '关联' . $lang->SRCommon;
+$lang->projectstory->unlinkStory = '移除' . $lang->SRCommon;
+$lang->projectstory->importplanstories = '按计划关联' . $lang->SRCommon;
global $app;
$app->loadLang('product');
diff --git a/module/story/control.php b/module/story/control.php
index 8ae0d131f2..6dbedb4d3c 100644
--- a/module/story/control.php
+++ b/module/story/control.php
@@ -140,7 +140,7 @@ class story extends control
if($executionID != 0)
{
if($executionID != $this->session->PRJ) $this->loadModel('action')->create('story', $storyID, 'linked2project', '', $executionID);
- $this->loadModel('action')->create('story', $storyID, 'linked2prj', '', $this->session->PRJ);
+ $this->loadModel('action')->create('story', $storyID, 'linked2project', '', $this->session->PRJ);
}
if($todoID > 0)
diff --git a/module/story/lang/de.php b/module/story/lang/de.php
index 000dcbd93f..c8ac65045d 100644
--- a/module/story/lang/de.php
+++ b/module/story/lang/de.php
@@ -273,22 +273,22 @@ $lang->story->form->resource = 'Wer plant die Resourcen? Wie lange wird das daue
$lang->story->form->file = 'Wenn Dateien zu dieser Story gehören, laden Sie diese bIttr hoch.';
$lang->story->action = new stdclass();
-$lang->story->action->reviewed = array('main' => '$date, geprüft von $actor. Das Ergebnis ist $extra.', 'extra' => 'reviewResultList');
-$lang->story->action->closed = array('main' => '$date, geschlossen von $actor. Der Grund ist $extra $appendLink.', 'extra' => 'reasonList');
-$lang->story->action->linked2plan = array('main' => '$date, verknüpft von $actor mit Plan $extra');
-$lang->story->action->unlinkedfromplan = array('main' => '$date, Verknüpfung aufgelöst durch $actor von Plan $extra.');
-$lang->story->action->linked2project = array('main' => '$date, verknüpft von $actor mit ' . $lang->executionCommon . ' $extra.');
-$lang->story->action->unlinkedfromproject = array('main' => '$date, Verknüpfung aufgelöst durch $actor mit ' . $lang->executionCommon . ' $extra.');
-$lang->story->action->linked2prj = array('main' => '$date, verknüpft von $actor mit project $extra.');
-$lang->story->action->unlinkedfromprj = array('main' => '$date, Verknüpfung aufgelöst durch $actor mit project $extra.');
-$lang->story->action->linked2build = array('main' => '$date, verknüpft von $actor mit Build $extra');
-$lang->story->action->unlinkedfrombuild = array('main' => '$date, Verknüpfung aufgelöst durch $actor von Build $extra.');
-$lang->story->action->linked2release = array('main' => '$date, verknüpft von $actor mit Release $extra');
-$lang->story->action->unlinkedfromrelease = array('main' => '$date, Verknüpfung aufgelöst durch $actor von Release $extra.');
-$lang->story->action->linkrelatedstory = array('main' => '$date, verknüpft von $actor mit Story $extra.');
-$lang->story->action->subdividestory = array('main' => '$date, aufgeteilt von $actor mit Story $extra.');
-$lang->story->action->unlinkrelatedstory = array('main' => '$date, Verknüpfung aufgelöst durch $actor von Story $extra.');
-$lang->story->action->unlinkchildstory = array('main' => '$date, Verknüpfung aufgelöst durch $actor Story $extra.');
+$lang->story->action->reviewed = array('main' => '$date, geprüft von $actor. Das Ergebnis ist $extra.', 'extra' => 'reviewResultList');
+$lang->story->action->closed = array('main' => '$date, geschlossen von $actor. Der Grund ist $extra $appendLink.', 'extra' => 'reasonList');
+$lang->story->action->linked2plan = array('main' => '$date, verknüpft von $actor mit Plan $extra');
+$lang->story->action->unlinkedfromplan = array('main' => '$date, Verknüpfung aufgelöst durch $actor von Plan $extra.');
+$lang->story->action->linked2execution = array('main' => '$date, verknüpft von $actor mit ' . $lang->executionCommon . ' $extra.');
+$lang->story->action->unlinkedfromexecution = array('main' => '$date, Verknüpfung aufgelöst durch $actor mit ' . $lang->executionCommon . ' $extra.');
+$lang->story->action->linked2project = array('main' => '$date, verknüpft von $actor mit project $extra.');
+$lang->story->action->unlinkedfromproject = array('main' => '$date, Verknüpfung aufgelöst durch $actor mit project $extra.');
+$lang->story->action->linked2build = array('main' => '$date, verknüpft von $actor mit Build $extra');
+$lang->story->action->unlinkedfrombuild = array('main' => '$date, Verknüpfung aufgelöst durch $actor von Build $extra.');
+$lang->story->action->linked2release = array('main' => '$date, verknüpft von $actor mit Release $extra');
+$lang->story->action->unlinkedfromrelease = array('main' => '$date, Verknüpfung aufgelöst durch $actor von Release $extra.');
+$lang->story->action->linkrelatedstory = array('main' => '$date, verknüpft von $actor mit Story $extra.');
+$lang->story->action->subdividestory = array('main' => '$date, aufgeteilt von $actor mit Story $extra.');
+$lang->story->action->unlinkrelatedstory = array('main' => '$date, Verknüpfung aufgelöst durch $actor von Story $extra.');
+$lang->story->action->unlinkchildstory = array('main' => '$date, Verknüpfung aufgelöst durch $actor Story $extra.');
/* 统计报表。*/
$lang->story->report = new stdclass();
diff --git a/module/story/lang/en.php b/module/story/lang/en.php
index 585010c0a3..50c63dc37f 100644
--- a/module/story/lang/en.php
+++ b/module/story/lang/en.php
@@ -273,22 +273,22 @@ $lang->story->form->resource = 'Who will allocate resources? How long does it ta
$lang->story->form->file = 'If any file that is linked to a story, please click Here to upload it.';
$lang->story->action = new stdclass();
-$lang->story->action->reviewed = array('main' => '$date, recorded by $actor. The result is $extra.', 'extra' => 'reviewResultList');
-$lang->story->action->closed = array('main' => '$date, closed by $actor. The reasion is $extra $appendLink.', 'extra' => 'reasonList');
-$lang->story->action->linked2plan = array('main' => '$date, linked by $actor to Plan $extra');
-$lang->story->action->unlinkedfromplan = array('main' => '$date, unlinked by $actor from Plan $extra.');
-$lang->story->action->linked2project = array('main' => '$date, linked by $actor to ' . $lang->executionCommon . ' $extra.');
-$lang->story->action->unlinkedfromproject = array('main' => '$date, unlinked by $actor from ' . $lang->executionCommon . ' $extra.');
-$lang->story->action->linked2prj = array('main' => '$date, linked by $actor to project $extra.');
-$lang->story->action->unlinkedfromprj = array('main' => '$date, unlinked by $actor from project $extra.');
-$lang->story->action->linked2build = array('main' => '$date, linked by $actor to Build $extra');
-$lang->story->action->unlinkedfrombuild = array('main' => '$date, unlinked by $actor from Build $extra.');
-$lang->story->action->linked2release = array('main' => '$date, linked by $actor to Release $extra');
-$lang->story->action->unlinkedfromrelease = array('main' => '$date, unlinked by $actor from Release $extra.');
-$lang->story->action->linkrelatedstory = array('main' => '$date, linked by $actor to Story $extra.');
-$lang->story->action->subdividestory = array('main' => '$date, decomposed by $actor to Story $extra.');
-$lang->story->action->unlinkrelatedstory = array('main' => '$date, unlinked by $actor from Story $extra.');
-$lang->story->action->unlinkchildstory = array('main' => '$date, unlinked by $actor Decomposed Story $extra.');
+$lang->story->action->reviewed = array('main' => '$date, recorded by $actor. The result is $extra.', 'extra' => 'reviewResultList');
+$lang->story->action->closed = array('main' => '$date, closed by $actor. The reasion is $extra $appendLink.', 'extra' => 'reasonList');
+$lang->story->action->linked2plan = array('main' => '$date, linked by $actor to Plan $extra');
+$lang->story->action->unlinkedfromplan = array('main' => '$date, unlinked by $actor from Plan $extra.');
+$lang->story->action->linked2execution = array('main' => '$date, linked by $actor to ' . $lang->executionCommon . ' $extra.');
+$lang->story->action->unlinkedfromexecution = array('main' => '$date, unlinked by $actor from ' . $lang->executionCommon . ' $extra.');
+$lang->story->action->linked2project = array('main' => '$date, linked by $actor to project $extra.');
+$lang->story->action->unlinkedfromproject = array('main' => '$date, unlinked by $actor from project $extra.');
+$lang->story->action->linked2build = array('main' => '$date, linked by $actor to Build $extra');
+$lang->story->action->unlinkedfrombuild = array('main' => '$date, unlinked by $actor from Build $extra.');
+$lang->story->action->linked2release = array('main' => '$date, linked by $actor to Release $extra');
+$lang->story->action->unlinkedfromrelease = array('main' => '$date, unlinked by $actor from Release $extra.');
+$lang->story->action->linkrelatedstory = array('main' => '$date, linked by $actor to Story $extra.');
+$lang->story->action->subdividestory = array('main' => '$date, decomposed by $actor to Story $extra.');
+$lang->story->action->unlinkrelatedstory = array('main' => '$date, unlinked by $actor from Story $extra.');
+$lang->story->action->unlinkchildstory = array('main' => '$date, unlinked by $actor Decomposed Story $extra.');
/* Statistical statement. */
$lang->story->report = new stdclass();
diff --git a/module/story/lang/fr.php b/module/story/lang/fr.php
index 3e4b01fc22..2826ee5aa1 100644
--- a/module/story/lang/fr.php
+++ b/module/story/lang/fr.php
@@ -273,22 +273,22 @@ $lang->story->form->resource = 'Qui va allouer des resources ? Combien de temps
$lang->story->form->file = 'Si certains fichiers sont associés à la story, cliquez ici pour les uploader.';
$lang->story->action = new stdclass();
-$lang->story->action->reviewed = array('main' => '$date, validée par $actor. Le résultat est $extra.', 'extra' => 'reviewResultList');
-$lang->story->action->closed = array('main' => '$date, Fermée par $actor. La raison est $extra $appendLink.', 'extra' => 'reasonList');
-$lang->story->action->linked2plan = array('main' => '$date, planifiée par $actor au Plan $extra');
-$lang->story->action->unlinkedfromplan = array('main' => '$date, déplanifiée par $actor du Plan $extra.');
-$lang->story->action->linked2project = array('main' => '$date, associée au ' . $lang->executionCommon . ' $extra par $actor.');
-$lang->story->action->unlinkedfromproject = array('main' => '$date, dissociée du ' . $lang->executionCommon . ' $extra par $actor.');
-$lang->story->action->linked2prj = array('main' => '$date, associée au project $extra par $actor.');
-$lang->story->action->unlinkedfromprj = array('main' => '$date, dissociée d uproject $extra par $actor.');
-$lang->story->action->linked2build = array('main' => '$date, intégrée par $actor au Build $extra');
-$lang->story->action->unlinkedfrombuild = array('main' => '$date, retirée par $actor du Build $extra.');
-$lang->story->action->linked2release = array('main' => '$date, ajoutée par $actor à la Release $extra');
-$lang->story->action->unlinkedfromrelease = array('main' => '$date, retirée par $actor de la Release $extra.');
-$lang->story->action->linkrelatedstory = array('main' => '$date, associée par $actor à la Story $extra.');
-$lang->story->action->subdividestory = array('main' => '$date, décomposée par $actor en Story $extra.');
-$lang->story->action->unlinkrelatedstory = array('main' => '$date, dissociée par $actor de la Story $extra.');
-$lang->story->action->unlinkchildstory = array('main' => '$date, dissociée par $actor de la sous-Story $extra.');
+$lang->story->action->reviewed = array('main' => '$date, validée par $actor. Le résultat est $extra.', 'extra' => 'reviewResultList');
+$lang->story->action->closed = array('main' => '$date, Fermée par $actor. La raison est $extra $appendLink.', 'extra' => 'reasonList');
+$lang->story->action->linked2plan = array('main' => '$date, planifiée par $actor au Plan $extra');
+$lang->story->action->unlinkedfromplan = array('main' => '$date, déplanifiée par $actor du Plan $extra.');
+$lang->story->action->linked2execution = array('main' => '$date, associée au ' . $lang->executionCommon . ' $extra par $actor.');
+$lang->story->action->unlinkedfromexecution = array('main' => '$date, dissociée du ' . $lang->executionCommon . ' $extra par $actor.');
+$lang->story->action->linked2project = array('main' => '$date, associée au project $extra par $actor.');
+$lang->story->action->unlinkedfromproject = array('main' => '$date, dissociée d uproject $extra par $actor.');
+$lang->story->action->linked2build = array('main' => '$date, intégrée par $actor au Build $extra');
+$lang->story->action->unlinkedfrombuild = array('main' => '$date, retirée par $actor du Build $extra.');
+$lang->story->action->linked2release = array('main' => '$date, ajoutée par $actor à la Release $extra');
+$lang->story->action->unlinkedfromrelease = array('main' => '$date, retirée par $actor de la Release $extra.');
+$lang->story->action->linkrelatedstory = array('main' => '$date, associée par $actor à la Story $extra.');
+$lang->story->action->subdividestory = array('main' => '$date, décomposée par $actor en Story $extra.');
+$lang->story->action->unlinkrelatedstory = array('main' => '$date, dissociée par $actor de la Story $extra.');
+$lang->story->action->unlinkchildstory = array('main' => '$date, dissociée par $actor de la sous-Story $extra.');
/* 统计报表。*/
$lang->story->report = new stdclass();
diff --git a/module/story/lang/vi.php b/module/story/lang/vi.php
index eb386e3e1e..3a2fe7901c 100644
--- a/module/story/lang/vi.php
+++ b/module/story/lang/vi.php
@@ -273,22 +273,22 @@ $lang->story->form->resource = 'Ai sẽ phân bổ nguồn lực? Bao lâu để
$lang->story->form->file = 'Nếu bất kỳ tập tin mà liên kết tới một câu chuyện, Vui lòng click tại đây để tải nó lên.';
$lang->story->action = new stdclass();
-$lang->story->action->reviewed = array('main' => '$date, ghi nhận bởi $actor. Kết quả là $extra.', 'extra' => 'reviewResultList');
-$lang->story->action->closed = array('main' => '$date, được đóng bởi $actor.Lý do là $extra $appendLink.', 'extra' => 'reasonList');
-$lang->story->action->linked2plan = array('main' => '$date, liên kết bởi $actor tới kế hoạch $extra');
-$lang->story->action->unlinkedfromplan = array('main' => '$date, bị hủy bởi $actor từ kế hoạch $extra.');
-$lang->story->action->linked2project = array('main' => '$date, liên kết bởi $actor tới ' . $lang->executionCommon . ' $extra.');
-$lang->story->action->unlinkedfromproject = array('main' => '$date, bị hủy bởi $actor từ ' . $lang->executionCommon . ' $extra.');
-$lang->story->action->linked2prj = array('main' => '$date, liên kết bởi $actor tớ project $extra.');
-$lang->story->action->unlinkedfromprj = array('main' => '$date, bị hủy bởi $actor từ project $extra.');
-$lang->story->action->linked2build = array('main' => '$date, liên kết bởi $actor tới Bản dựng $extra');
-$lang->story->action->unlinkedfrombuild = array('main' => '$date, bị hủy bởi $actor từ bản dựng $extra.');
-$lang->story->action->linked2release = array('main' => '$date, liên kết bởi $actor tới Phát hành $extra');
-$lang->story->action->unlinkedfromrelease = array('main' => '$date, bị hủy bởi $actor từ Phát hành $extra.');
-$lang->story->action->linkrelatedstory = array('main' => '$date, liên kết bởi $actor tới Câu chuyện $extra.');
-$lang->story->action->subdividestory = array('main' => '$date, được phân rã bởi $actor tới Câu chuyện $extra.');
-$lang->story->action->unlinkrelatedstory = array('main' => '$date, bị hủy bởi $actor từ Câu chuyện $extra.');
-$lang->story->action->unlinkchildstory = array('main' => '$date, bị hủy bởi $actor Câu chuyện được phân rã $extra.');
+$lang->story->action->reviewed = array('main' => '$date, ghi nhận bởi $actor. Kết quả là $extra.', 'extra' => 'reviewResultList');
+$lang->story->action->closed = array('main' => '$date, được đóng bởi $actor.Lý do là $extra $appendLink.', 'extra' => 'reasonList');
+$lang->story->action->linked2plan = array('main' => '$date, liên kết bởi $actor tới kế hoạch $extra');
+$lang->story->action->unlinkedfromplan = array('main' => '$date, bị hủy bởi $actor từ kế hoạch $extra.');
+$lang->story->action->linked2execution = array('main' => '$date, liên kết bởi $actor tới ' . $lang->executionCommon . ' $extra.');
+$lang->story->action->unlinkedfromexecution = array('main' => '$date, bị hủy bởi $actor từ ' . $lang->executionCommon . ' $extra.');
+$lang->story->action->linked2project = array('main' => '$date, liên kết bởi $actor tớ project $extra.');
+$lang->story->action->unlinkedfromproject = array('main' => '$date, bị hủy bởi $actor từ project $extra.');
+$lang->story->action->linked2build = array('main' => '$date, liên kết bởi $actor tới Bản dựng $extra');
+$lang->story->action->unlinkedfrombuild = array('main' => '$date, bị hủy bởi $actor từ bản dựng $extra.');
+$lang->story->action->linked2release = array('main' => '$date, liên kết bởi $actor tới Phát hành $extra');
+$lang->story->action->unlinkedfromrelease = array('main' => '$date, bị hủy bởi $actor từ Phát hành $extra.');
+$lang->story->action->linkrelatedstory = array('main' => '$date, liên kết bởi $actor tới Câu chuyện $extra.');
+$lang->story->action->subdividestory = array('main' => '$date, được phân rã bởi $actor tới Câu chuyện $extra.');
+$lang->story->action->unlinkrelatedstory = array('main' => '$date, bị hủy bởi $actor từ Câu chuyện $extra.');
+$lang->story->action->unlinkchildstory = array('main' => '$date, bị hủy bởi $actor Câu chuyện được phân rã $extra.');
/* Statistical statement. */
$lang->story->report = new stdclass();
diff --git a/module/story/lang/zh-cn.php b/module/story/lang/zh-cn.php
index 8912b44317..547ba377bf 100644
--- a/module/story/lang/zh-cn.php
+++ b/module/story/lang/zh-cn.php
@@ -273,22 +273,22 @@ $lang->story->form->resource = '资源分配,有谁完成?需要多少时
$lang->story->form->file = "附件,如果该{$lang->SRCommon}有相关文件,请点此上传。";
$lang->story->action = new stdclass();
-$lang->story->action->reviewed = array('main' => '$date, 由 $actor 记录评审结果,结果为 $extra。', 'extra' => 'reviewResultList');
-$lang->story->action->closed = array('main' => '$date, 由 $actor 关闭,原因为 $extra $appendLink。', 'extra' => 'reasonList');
-$lang->story->action->linked2plan = array('main' => '$date, 由 $actor 关联到计划 $extra。');
-$lang->story->action->unlinkedfromplan = array('main' => '$date, 由 $actor 从计划 $extra 移除。');
-$lang->story->action->linked2project = array('main' => '$date, 由 $actor 关联到' . $lang->executionCommon . ' $extra。');
-$lang->story->action->unlinkedfromproject = array('main' => '$date, 由 $actor 从' . $lang->executionCommon . ' $extra 移除。');
-$lang->story->action->linked2prj = array('main' => '$date, 由 $actor 关联到项目 $extra。');
-$lang->story->action->unlinkedfromprj = array('main' => '$date, 由 $actor 从项目 $extra 移除。');
-$lang->story->action->linked2build = array('main' => '$date, 由 $actor 关联到版本 $extra。');
-$lang->story->action->unlinkedfrombuild = array('main' => '$date, 由 $actor 从版本 $extra 移除。');
-$lang->story->action->linked2release = array('main' => '$date, 由 $actor 关联到发布 $extra。');
-$lang->story->action->unlinkedfromrelease = array('main' => '$date, 由 $actor 从发布 $extra 移除。');
-$lang->story->action->linkrelatedstory = array('main' => "\$date, 由 \$actor 关联相关{$lang->SRCommon} \$extra。");
-$lang->story->action->subdividestory = array('main' => "\$date, 由 \$actor 细分为{$lang->SRCommon} \$extra。");
-$lang->story->action->unlinkrelatedstory = array('main' => "\$date, 由 \$actor 移除相关{$lang->SRCommon} \$extra。");
-$lang->story->action->unlinkchildstory = array('main' => "\$date, 由 \$actor 移除细分{$lang->SRCommon} \$extra。");
+$lang->story->action->reviewed = array('main' => '$date, 由 $actor 记录评审结果,结果为 $extra。', 'extra' => 'reviewResultList');
+$lang->story->action->closed = array('main' => '$date, 由 $actor 关闭,原因为 $extra $appendLink。', 'extra' => 'reasonList');
+$lang->story->action->linked2plan = array('main' => '$date, 由 $actor 关联到计划 $extra。');
+$lang->story->action->unlinkedfromplan = array('main' => '$date, 由 $actor 从计划 $extra 移除。');
+$lang->story->action->linked2execution = array('main' => '$date, 由 $actor 关联到' . $lang->executionCommon . ' $extra。');
+$lang->story->action->unlinkedfromexecution = array('main' => '$date, 由 $actor 从' . $lang->executionCommon . ' $extra 移除。');
+$lang->story->action->linked2project = array('main' => '$date, 由 $actor 关联到项目 $extra。');
+$lang->story->action->unlinkedfromproject = array('main' => '$date, 由 $actor 从项目 $extra 移除。');
+$lang->story->action->linked2build = array('main' => '$date, 由 $actor 关联到版本 $extra。');
+$lang->story->action->unlinkedfrombuild = array('main' => '$date, 由 $actor 从版本 $extra 移除。');
+$lang->story->action->linked2release = array('main' => '$date, 由 $actor 关联到发布 $extra。');
+$lang->story->action->unlinkedfromrelease = array('main' => '$date, 由 $actor 从发布 $extra 移除。');
+$lang->story->action->linkrelatedstory = array('main' => "\$date, 由 \$actor 关联相关{$lang->SRCommon} \$extra。");
+$lang->story->action->subdividestory = array('main' => "\$date, 由 \$actor 细分为{$lang->SRCommon} \$extra。");
+$lang->story->action->unlinkrelatedstory = array('main' => "\$date, 由 \$actor 移除相关{$lang->SRCommon} \$extra。");
+$lang->story->action->unlinkchildstory = array('main' => "\$date, 由 \$actor 移除细分{$lang->SRCommon} \$extra。");
/* 统计报表。*/
$lang->story->report = new stdclass();
diff --git a/module/story/model.php b/module/story/model.php
index 5097a7d8d8..e3992b66b5 100644
--- a/module/story/model.php
+++ b/module/story/model.php
@@ -3188,8 +3188,8 @@ class storyModel extends model
if($branch) $branch = "0,$branch";
}
$plans = $this->dao->select('id,title')->from(TABLE_PRODUCTPLAN)
- ->where('product')->in($productID)
- ->andWhere('deleted')->eq(0)
+ ->Where('deleted')->eq(0)
+ ->beginIF($productID)->andWhere('product')->in($productID)->fi()
->fetchPairs('id', 'title');
/* For requirement children. */
|