Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -3,5 +3,6 @@
|
||||
.border-right::after {content: ''; position: absolute; right: 0px; width: 1px; height: 40px; background: #EEE; top: 50%; margin-top: -20px;}
|
||||
.avatar-border-one {width: 4.2rem; height: 4.2rem; background: #f4f5f3; position: relative;}
|
||||
.avatar-border-two {width: 3.6rem; height: 3.6rem; background: #F5EBDE; position: absolute;}
|
||||
.welcome-avatar {border: 2px solid #FBC962; position: absolute;}
|
||||
.tile-amount {font-size: 32px; font-weight: 700; line-height: 56px; }
|
||||
.welcome-avatar {border: 2px solid #FBC962; position: absolute; border-radius: 50% 50%;}
|
||||
.tile-amount {font-size: 32px; font-weight: 700; line-height: 56px;}
|
||||
.welcome-label-delay {background: var(--color-danger-50); color: var(--color-danger-600);}
|
||||
|
||||
@@ -18,15 +18,17 @@ function onParamsTypeChange(event)
|
||||
}
|
||||
else
|
||||
{
|
||||
const $paramstype = document.querySelector('#paramstype');
|
||||
|
||||
if(lang.indexOf('zh') >= 0)
|
||||
{
|
||||
const $paramstype = document.querySelector('#paramstype');
|
||||
const blockTitle = $paramstype.options[$paramstype.selectedIndex].text + of + $code.options[$code.selectedIndex].text;
|
||||
$('#title').val(blockTitle);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* TODO */
|
||||
const blockTitle = $code.options[$code.selectedIndex].text + of + $paramstype.options[$paramstype.selectedIndex].text;
|
||||
}
|
||||
|
||||
$('#title').val(blockTitle);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,3 +6,30 @@ function getForm(event)
|
||||
const url = $.createLink('block', 'edit', 'blockID=' + blockID + '&module=' + module + '&code=' + (code ? code : ''));
|
||||
loadPage(url, '#codesRow, #paramsRow');
|
||||
}
|
||||
|
||||
function onParamsTypeChange(event)
|
||||
{
|
||||
const lang = config.clientLang;
|
||||
const $code = document.querySelector('#code');
|
||||
|
||||
if($('#module').val() == 'scrumtest' && $('#paramstype').val() != 'all')
|
||||
{
|
||||
$('#title').val($code.options[$code.selectedIndex].text);
|
||||
}
|
||||
else
|
||||
{
|
||||
const $paramstype = document.querySelector('#paramstype');
|
||||
let blockTitle = '';
|
||||
|
||||
if(lang.indexOf('zh') >= 0)
|
||||
{
|
||||
blockTitle = $paramstype.options[$paramstype.selectedIndex].text + of + $code.options[$code.selectedIndex].text;
|
||||
}
|
||||
else
|
||||
{
|
||||
blockTitle = $code.options[$code.selectedIndex].text + of + $paramstype.options[$paramstype.selectedIndex].text;
|
||||
}
|
||||
|
||||
$('#title').val(blockTitle);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@ namespace zin;
|
||||
|
||||
set::title($title);
|
||||
jsVar('blockID', $block->id);
|
||||
jsVar('of', $lang->block->of);
|
||||
|
||||
$paramsRows = array();
|
||||
$showModules = ($dashboard == 'my' and $modules);
|
||||
@@ -28,6 +29,7 @@ foreach($params as $key => $row)
|
||||
set::value($block->params->{$key}),
|
||||
set::control(array
|
||||
(
|
||||
'id' => "params$key",
|
||||
'type' => $row['control'],
|
||||
'items' => isset($row['options']) ? $row['options'] : null
|
||||
))
|
||||
@@ -38,6 +40,7 @@ form
|
||||
(
|
||||
on::change('#module', 'getForm'),
|
||||
on::change('#code', 'getForm'),
|
||||
on::change('#paramstype', 'onParamsTypeChange'),
|
||||
formGroup
|
||||
(
|
||||
set::class($showModules ? '' : 'hidden'),
|
||||
|
||||
@@ -53,48 +53,36 @@ panel
|
||||
),
|
||||
div
|
||||
(
|
||||
setClass('flex items-center justify-around pt-6'),
|
||||
center
|
||||
setClass('flex justify-around pt-6'),
|
||||
col
|
||||
(
|
||||
col
|
||||
set('class', 'text-center'),
|
||||
span
|
||||
(
|
||||
set('justify', 'center'),
|
||||
set('class', 'text-center'),
|
||||
span
|
||||
(
|
||||
set('class', 'tile-amount text-primary'),
|
||||
81
|
||||
),
|
||||
span('研发需求数')
|
||||
)
|
||||
set('class', 'tile-amount text-primary'),
|
||||
81
|
||||
),
|
||||
span('研发需求数')
|
||||
),
|
||||
center
|
||||
col
|
||||
(
|
||||
col
|
||||
set('class', 'text-center'),
|
||||
span
|
||||
(
|
||||
set('justify', 'center'),
|
||||
set('class', 'text-center'),
|
||||
span
|
||||
(
|
||||
set('class', 'tile-amount text-primary'),
|
||||
81
|
||||
),
|
||||
span('研发需求数')
|
||||
)
|
||||
set('class', 'tile-amount text-primary'),
|
||||
81
|
||||
),
|
||||
span('研发需求数')
|
||||
),
|
||||
center
|
||||
col
|
||||
(
|
||||
col
|
||||
set('class', 'text-center'),
|
||||
span
|
||||
(
|
||||
set('justify', 'center'),
|
||||
set('class', 'text-center'),
|
||||
span
|
||||
(
|
||||
set('class', 'tile-amount text-primary'),
|
||||
81
|
||||
),
|
||||
span('研发需求数')
|
||||
)
|
||||
set('class', 'tile-amount text-primary'),
|
||||
81
|
||||
),
|
||||
span('研发需求数')
|
||||
)
|
||||
)
|
||||
),
|
||||
@@ -109,34 +97,32 @@ panel
|
||||
),
|
||||
div
|
||||
(
|
||||
setClass('flex items-center justify-around pt-6'),
|
||||
center
|
||||
setClass('flex justify-around pt-6'),
|
||||
col
|
||||
(
|
||||
col
|
||||
set('class', 'text-center items-center'),
|
||||
span
|
||||
(
|
||||
set('justify', 'center'),
|
||||
set('class', 'text-center'),
|
||||
span
|
||||
(
|
||||
set('class', 'tile-amount text-primary'),
|
||||
81
|
||||
),
|
||||
span('研发需求数')
|
||||
set('class', 'tile-amount text-primary'),
|
||||
81
|
||||
),
|
||||
span('任务数'),
|
||||
div
|
||||
(
|
||||
set('class', 'rounded-full welcome-label-delay px-1 text-sm'),
|
||||
'延期 3'
|
||||
)
|
||||
),
|
||||
center
|
||||
col
|
||||
(
|
||||
col
|
||||
set('justify', 'center'),
|
||||
set('class', 'text-center'),
|
||||
span
|
||||
(
|
||||
set('justify', 'center'),
|
||||
set('class', 'text-center'),
|
||||
span
|
||||
(
|
||||
set('class', 'tile-amount text-primary'),
|
||||
81
|
||||
),
|
||||
span('研发需求数')
|
||||
)
|
||||
set('class', 'tile-amount text-primary'),
|
||||
81
|
||||
),
|
||||
span('研发需求数'),
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -1382,6 +1382,7 @@ class projectModel extends model
|
||||
|
||||
if(!empty($executionsCount) and $oldProject->multiple) $this->checkDatesValidByProject($projectID ,$project);
|
||||
$this->projectTao->doUpdate($projectID, $project, $oldProject);
|
||||
|
||||
if(dao::isError()) return false;
|
||||
|
||||
if(!$oldProject->hasProduct and ($oldProject->name != $project->name or $oldProject->parent != $project->parent or $oldProject->acl != $project->acl)) $this->updateShadowProduct($project);
|
||||
@@ -1411,6 +1412,7 @@ class projectModel extends model
|
||||
|
||||
$teamMembers[$account] = $member;
|
||||
}
|
||||
|
||||
if($oldProject->model == 'kanban')
|
||||
{
|
||||
$this->dao->delete()->from(TABLE_TEAM)
|
||||
@@ -3048,6 +3050,7 @@ class projectModel extends model
|
||||
{
|
||||
foreach($plans as $planList)
|
||||
{
|
||||
if(is_array($planList))
|
||||
foreach($planList as $planID) $newPlans[$planID] = $planID;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* The control file of todo module of ZenTaoPMS.
|
||||
*
|
||||
@@ -22,9 +21,6 @@ class todo extends control
|
||||
{
|
||||
parent::__construct();
|
||||
|
||||
$this->app->loadClass('date');
|
||||
$this->loadModel('task');
|
||||
$this->loadModel('bug');
|
||||
$this->app->loadLang('my');
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* The model file of todo module of ZenTaoPMS.
|
||||
*
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
|
||||
class todoTao extends todoModel
|
||||
{
|
||||
/**
|
||||
|
||||
+2
-3
@@ -1,6 +1,5 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
|
||||
class todoZen extends todo
|
||||
{
|
||||
/**
|
||||
@@ -244,8 +243,8 @@ class todoZen extends todo
|
||||
|
||||
list($editedTodos, $objectIdList) = $this->getBatchEditInitTodos($formData, $type, $account, $status);
|
||||
|
||||
$bugs = $this->bug->getUserBugPairs($account, true, 0, '', '', isset($objectIdList['bug']) ? $objectIdList['bug'] : '');
|
||||
$tasks = $this->task->getUserTaskPairs($account, 'wait,doing', '', isset($objectIdList['task']) ? $objectIdList['task'] : '');
|
||||
$bugs = $this->loadModel('bug')->getUserBugPairs($account, true, 0, '', '', isset($objectIdList['bug']) ? $objectIdList['bug'] : '');
|
||||
$tasks = $this->loadModel('task')->getUserTaskPairs($account, 'wait,doing', '', isset($objectIdList['task']) ? $objectIdList['task'] : '');
|
||||
$storys = $this->loadModel('story')->getUserStoryPairs($account, 10, 'story', '', isset($objectIdList['story']) ? $objectIdList['story'] : '');
|
||||
$users = $this->loadModel('user')->getPairs('noclosed|nodeleted|noempty');
|
||||
$testtasks = $this->loadModel('testtask')->getUserTestTaskPairs($account);
|
||||
|
||||
Reference in New Issue
Block a user