diff --git a/Makefile b/Makefile index 9f8a28d0a1..cc8fefd074 100644 --- a/Makefile +++ b/Makefile @@ -108,6 +108,7 @@ zentaoxx: sed -i "s/\$$super = \$$this->dao->select('admin')->from(TABLE_USER)->where('id')->eq(\$$userID)->fetch('admin');/\$$account = \$$this->dao->select('account')->from(TABLE_USER)->where('id')->eq(\$$userID)->fetch('account');\n\$$admins = \$$this->dao->select('admins')->from(TABLE_COMPANY)->where('id')->eq(\$$this->app->company->id)->fetch('admins');\n\$$adminArray = explode(',', \$$admins);\n\$$super = in_array(\$$account, \$$adminArray) ? 'super' : '';/g" zentaoxx/extension/xuan/im/control.php sed -i "/foreach(\$$users as \$$user)/i \$$admins = \$$this->dao->select('admins')->from(TABLE_COMPANY)->where('id')->eq(\$$this->app->company->id)->fetch('admins');\$$adminArray = explode(',', \$$admins);" zentaoxx/extension/xuan/im/model/user.php sed -i "/if(\!isset(\$$user->signed)) \$$user->signed = 0;/a \$$user->admin = in_array(\$$user->account, \$$adminArray) ? 'super' : '';" zentaoxx/extension/xuan/im/model/user.php + sed -i "/updateUser->ping/d" zentaoxx/extension/xuan/im/model/user.php sed -i "s/\$$user = \$$this->user->login(\$$account, \$$user->password);/\$$user = \$$this->user->login(\$$user);\n\$$url .= \$$this->config->requestType == 'GET' ? '\&' : '?';\n\$$url .= \"{\$$this->config->sessionVar}={\$$this->app->sessionID}\";\n/" zentaoxx/extension/xuan/im/control.php sed -i "s/\$$file->fullURL/\$$file->webPath/" zentaoxx/extension/xuan/im/control.php sed -i 's/XXBVERSION/$(XVERSION)/g' zentaoxx/config/ext/_0_xuanxuan.php diff --git a/db/update18.0.beta1.sql b/db/update18.0.beta1.sql index 4c8c909760..038173600a 100644 --- a/db/update18.0.beta1.sql +++ b/db/update18.0.beta1.sql @@ -2,3 +2,5 @@ ALTER TABLE `zt_story` ADD COLUMN `twins` varchar(255) NOT NULL AFTER `linkRequi ALTER TABLE `zt_productplan` MODIFY COLUMN `branch` varchar(255) NOT NULL DEFAULT '0'; ALTER TABLE `zt_effort` ADD `extra` text COLLATE 'utf8_general_ci' NOT NULL AFTER `end`; ALTER TABLE `zt_build` MODIFY COLUMN `branch` varchar(255) NOT NULL DEFAULT '0'; +ALTER TABLE `zt_feedback` ADD COLUMN `activatedBy` varchar(30) NOT NULL AFTER `assignedDate`; +ALTER TABLE `zt_feedback` ADD COLUMN `activatedDate` datetime NOT NULL AFTER `activatedBy`; diff --git a/module/bug/control.php b/module/bug/control.php index 96ea49c4bf..a4b7127e33 100755 --- a/module/bug/control.php +++ b/module/bug/control.php @@ -1801,7 +1801,7 @@ class bug extends control } else { - return print(js::closeModal('parent.parent')); + return print(js::closeModal('parent.parent', 'this', "typeof(parent.parent.setTitleWidth) == 'function' ? parent.parent.setTitleWidth() : parent.parent.location.reload()")); } } if(defined('RUN_MODE') && RUN_MODE == 'api') @@ -1988,7 +1988,7 @@ class bug extends control } else { - return print(js::closeModal('parent.parent', 'this', "function(){parent.parent.location.reload();}")); + return print(js::closeModal('parent.parent', 'this', "typeof(parent.parent.setTitleWidth) == 'function' ? parent.parent.setTitleWidth() : parent.parent.location.reload()")); } } if(defined('RUN_MODE') && RUN_MODE == 'api') diff --git a/module/bug/js/browse.js b/module/bug/js/browse.js index 0cc3ce246d..5c32f9e35b 100644 --- a/module/bug/js/browse.js +++ b/module/bug/js/browse.js @@ -1,6 +1,6 @@ $(function() { - if($('#bugList thead th.c-title').width() < 150) $('#bugList thead th.c-title').width(150); + setTitleWidth(); /* The display of the adjusting sidebarHeader is synchronized with the sidebar. */ $(".sidebar-toggle").click(function() diff --git a/module/bug/js/common.js b/module/bug/js/common.js index 7134ecab5b..81920153b2 100644 --- a/module/bug/js/common.js +++ b/module/bug/js/common.js @@ -985,3 +985,20 @@ function setBranchRelated(branchID, productID, num) $.ajaxSettings.async = true; } } + +/** + * Set title field width. + * + * @access public + * @return void + */ +function setTitleWidth() +{ + if(window.config.currentMethod != 'browse') return false; + + if($('#bugList thead th.c-title').width() < 150) $('#bugList thead th.c-title').width(150); + setTimeout(function() + { + if($('#bugList thead th.c-title').width() < 150) $('#bugList thead th.c-title').width(150); + }, 400) +} diff --git a/module/build/css/view.css b/module/build/css/view.css index 0789a2c0c3..baaa980afa 100644 --- a/module/build/css/view.css +++ b/module/build/css/view.css @@ -7,3 +7,19 @@ .body-modal #mainContent {min-height: 200px;} td.article-content{overflow:auto !important;} td.c-build{white-space: nowrap; overflow:hidden;} + +#stories th, #stories td{padding-left:16px;} +#stories .c-estimate{width:90px; text-align:right} +#stories .c-status{width:120px} +#stories .c-stage{width:130px; text-align:left;} +#bugs .c-status{width:100px;} +#bugs .c-build{width:160px; text-align:left} +#bugs .c-user{width:120px;} +#bugs .c-date{width:130px;} +#bugs .c-actions-1{width:60px;} +#generatedBugs .c-id {width:60px;} +#generatedBugs .c-severity {width:70px;} +#generatedBugs .c-status {width:100px;} +#generatedBugs .c-build {width:160px; text-align:left} +#generatedBugs .c-user {width:100px;} +#generatedBugs .c-date {width:120px;} diff --git a/module/build/view/view.html.php b/module/build/view/view.html.php index 036a9518f5..9ccf26e647 100644 --- a/module/build/view/view.html.php +++ b/module/build/view/view.html.php @@ -88,15 +88,15 @@ tbody tr td:first-child input {display: none;} idAB);?> - pri;?>>priAB);?> story->title);?> + pri;?>>priAB);?> + statusAB);?> build->linkedBuild;?> - openedByAB);?> - story->estimateAB);?> - statusAB);?> - story->stageAB);?> + openedByAB);?> + story->estimateAB);?> + story->stageAB);?> actions?> @@ -125,11 +125,6 @@ tbody tr td:first-child input {display: none;} id);?> - - pri):?> - story->priList, $story->pri, $story->pri);?> - - parent > 0) echo "{$lang->story->childrenAB}"; @@ -147,17 +142,20 @@ tbody tr td:first-child input {display: none;} } ?> + + pri):?> + story->priList, $story->pri, $story->pri);?> + + + + processStatus('story', $story);?> + openedBy);?> - estimate . $config->hourUnit;?> - - - processStatus('story', $story);?> - - - story->stageList[$story->stage];?> + estimate . $config->hourUnit;?> + story->stageList[$story->stage];?> idAB);?> - bug->title);?> - bug->status);?> + bug->title);?> + bug->status);?> - build->linkedBuild?> + build->linkedBuild?> openedByAB);?> bug->openedDateAB);?> - bug->resolvedByAB);?> + bug->resolvedBy);?> bug->resolvedDateAB);?> actions?> @@ -254,7 +252,7 @@ tbody tr td:first-child input {display: none;} - + openedBy);?> openedDate) ? '' : substr($bug->openedDate, 5, 11);?> @@ -297,14 +295,14 @@ tbody tr td:first-child input {display: none;} id}&type=generatedBug&link=$link¶m=$param&orderBy=%s";?> - idAB);?> - bug->severity;?>>bug->severityAB);?> - bug->title);?> - bug->status);?> - bug->openedBuild;?> + idAB);?> + bug->title);?> + bug->severity;?>>bug->severityAB);?> + bug->status);?> + bug->openedBuild;?> openedByAB);?> bug->openedDateAB);?> - bug->resolvedByAB);?> + bug->resolvedBy);?> bug->resolvedDateAB);?> @@ -324,6 +322,9 @@ tbody tr td:first-child input {display: none;} createLink('bug', 'view', "bugID=$bug->id", '', true);?> id);?> + + title, '', isonlybody() ? "data-width='1000'" : "class='iframe' data-width='1000'");?> + bug->severityList, $bug->severity, $bug->severity);?> @@ -331,9 +332,6 @@ tbody tr td:first-child input {display: none;} - - title, '', isonlybody() ? "data-width='1000'" : "class='iframe' data-width='1000'");?> - processStatus('bug', $bug);?> @@ -343,7 +341,7 @@ tbody tr td:first-child input {display: none;} $openedBuilds = ''; foreach(explode(',', $bug->openedBuild) as $buildID) $openedBuilds .= ($buildID == 'trunk' ? 'Trunk' : zget($buildPairs, $buildID, '')) . ' '; ?> - + openedBy);?> openedDate) ? '' : substr($bug->openedDate, 5, 11);?> resolvedBy);?> diff --git a/module/dept/model.php b/module/dept/model.php index 7fd5752c90..fa432bda96 100644 --- a/module/dept/model.php +++ b/module/dept/model.php @@ -371,10 +371,10 @@ class deptModel extends model /** * Get users of a deparment. * - * @param varchar $browseType inside|outside|all + * @param string $browseType inside|outside|all * @param int $deptID * @param object $pager - * @param varchar $orderBy + * @param string $orderBy * @access public * @return array */ diff --git a/module/execution/control.php b/module/execution/control.php index 0e3a109c25..5379ec4ddb 100644 --- a/module/execution/control.php +++ b/module/execution/control.php @@ -934,6 +934,17 @@ class execution extends control $moduleTree = $this->tree->getProjectStoryTreeMenu($executionID, 0, array('treeModel', $createModuleLink)); } + $executionProductList = $this->loadModel('product')->getProducts($executionID); + $multiBranch = false; + foreach($executionProductList as $executionProduct) + { + if($executionProduct->type != 'normal') + { + $multiBranch = true; + break; + } + } + /* Assign. */ $this->view->title = $title; $this->view->position = $position; @@ -963,6 +974,7 @@ class execution extends control $this->view->canBeChanged = common::canModify('execution', $execution); // Determines whether an object is editable. $this->view->showBranch = $showBranch; $this->view->storyStages = $this->product->batchGetStoryStage($stories); + $this->view->multiBranch = $multiBranch; $this->display(); } diff --git a/module/execution/css/story.css b/module/execution/css/story.css index e0333312b2..2eff8dd035 100644 --- a/module/execution/css/story.css +++ b/module/execution/css/story.css @@ -34,3 +34,4 @@ th.c-pri{width:50px;} .table td.c-estimate {padding-right: 12px;} .main-table tbody > tr.table-children > td:first-child::before {width: 3px;} .table-footer {z-index: 1;} +#linkStoryByPlan .modal-header {padding: 20px 0 10px 0; border-bottom: 0px} \ No newline at end of file diff --git a/module/execution/lang/de.php b/module/execution/lang/de.php index e325edbcdc..1aad7582a6 100644 --- a/module/execution/lang/de.php +++ b/module/execution/lang/de.php @@ -597,3 +597,6 @@ $lang->execution->gantt->exporting = 'Exporting...'; $lang->execution->gantt->exportFail = 'Failed to export.'; $lang->execution->boardColorList = array('#32C5FF', '#006AF1', '#9D28B2', '#FF8F26', '#7FBB00', '#424BAC', '#66c5f8', '#EC2761'); + +$lang->execution->linkBranchStoryByPlanTips = "When a scheduled association requirement is executed, only the active requirements associated with the %s of this execution are imported."; +$lang->execution->linkNormalStoryByPlanTips = "Only the active requirements are imported when the scheduled requirements are associated."; \ No newline at end of file diff --git a/module/execution/lang/en.php b/module/execution/lang/en.php index d273799d4b..412c0c9f74 100644 --- a/module/execution/lang/en.php +++ b/module/execution/lang/en.php @@ -597,3 +597,6 @@ $lang->execution->gantt->exporting = 'Exporting...'; $lang->execution->gantt->exportFail = 'Failed to export.'; $lang->execution->boardColorList = array('#32C5FF', '#006AF1', '#9D28B2', '#FF8F26', '#7FBB00', '#424BAC', '#66c5f8', '#EC2761'); + +$lang->execution->linkBranchStoryByPlanTips = "When a scheduled association requirement is executed, only the active requirements associated with the %s of this execution are imported."; +$lang->execution->linkNormalStoryByPlanTips = "Only the active requirements are imported when the scheduled requirements are associated."; \ No newline at end of file diff --git a/module/execution/lang/fr.php b/module/execution/lang/fr.php index a107beff48..4e87634ef9 100644 --- a/module/execution/lang/fr.php +++ b/module/execution/lang/fr.php @@ -597,3 +597,6 @@ $lang->execution->gantt->exporting = 'Exporting...'; $lang->execution->gantt->exportFail = 'Failed to export.'; $lang->execution->boardColorList = array('#32C5FF', '#006AF1', '#9D28B2', '#FF8F26', '#7FBB00', '#424BAC', '#66c5f8', '#EC2761'); + +$lang->execution->linkBranchStoryByPlanTips = "When a scheduled association requirement is executed, only the active requirements associated with the %s of this execution are imported."; +$lang->execution->linkNormalStoryByPlanTips = "Only the active requirements are imported when the scheduled requirements are associated."; \ No newline at end of file diff --git a/module/execution/lang/zh-cn.php b/module/execution/lang/zh-cn.php index 48db681691..320385aef4 100644 --- a/module/execution/lang/zh-cn.php +++ b/module/execution/lang/zh-cn.php @@ -597,3 +597,6 @@ $lang->execution->gantt->exporting = '正在导出……'; $lang->execution->gantt->exportFail = '导出失败。'; $lang->execution->boardColorList = array('#32C5FF', '#006AF1', '#9D28B2', '#FF8F26', '#7FBB00', '#424BAC', '#66c5f8', '#EC2761'); + +$lang->execution->linkBranchStoryByPlanTips = "执行按计划关联需求时,只导入本执行所关联%s的激活状态的需求。"; +$lang->execution->linkNormalStoryByPlanTips = "执行按计划关联需求时,只导入激活状态的需求。"; \ No newline at end of file diff --git a/module/execution/view/story.html.php b/module/execution/view/story.html.php index 6ca7343939..bb35137bae 100644 --- a/module/execution/view/story.html.php +++ b/module/execution/view/story.html.php @@ -402,7 +402,10 @@