diff --git a/module/kanban/css/view.css b/module/kanban/css/view.css index 9362b65e3b..c2392a81c8 100644 --- a/module/kanban/css/view.css +++ b/module/kanban/css/view.css @@ -58,15 +58,16 @@ body {background-color: #fff} .region .kanban-lane-items {overflow: auto; padding-bottom: 10px;} .region .kanban-item {position: relative} -.region .kanban-item > .title {display: block; max-height: 38px; overflow: hidden; color: inherit; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;} -.region .kanban-item > .title:hover {color: #2272eb} -.region .kanban-item > .info {margin-top: 5px; position: relative;} -.region .kanban-item > .info > .pri {height: 14px; border-width: 1px; font-size: 12px; line-height: 12px; min-width: 14px; padding: 0 1px;} -.region .kanban-item > .info > .time {margin-left: 10px; font-size: 12px} -.region .kanban-item > .info > .user {position: absolute; right: 0; top: 0} -.region .kanban-item > .actions {position: absolute; top: 0px; right: 4px; opacity: 0;} -.region .kanban-item > .actions > a {display: block; float: left; width: 20px; height: 20px; line-height: 20px; text-align: center; border-radius: 4px; opacity: .7;} -.region .kanban-item > .actions > a:hover {background-color: rgba(0,0,0,.075); opacity: 1;} +.region .kanban-item > .kanban-card > .title {display: block; max-height: 38px; overflow: hidden; color: inherit; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;} +.region .kanban-item > .kanban-card > .title:hover {color: #2272eb} +.region .kanban-item > .kanban-card > .info {margin-top: 5px; position: relative;} +.region .kanban-item > .kanban-card > .info > .pri {height: 14px; border-width: 1px; font-size: 12px; line-height: 12px; min-width: 14px; padding: 0 1px;} +.region .kanban-item > .kanban-card > .info > .estimate{margin-left: 10px; color: #999} +.region .kanban-item > .kanban-card > .info > .time {margin-left: 10px; font-size: 12px; background: rgb(242, 242, 242)} +.region .kanban-item > .kanban-card > .info > .user {position: absolute; right: 0; top: 0} +.region .kanban-item > .kanban-card > .actions {position: absolute; top: 0px; right: 4px; opacity: 0;} +.region .kanban-item > .kanban-card > .actions > a {display: block; float: left; width: 20px; height: 20px; line-height: 20px; text-align: center; border-radius: 4px; opacity: .7;} +.region .kanban-item > .kanban-card > .actions > a:hover {background-color: rgba(0,0,0,.075); opacity: 1;} .region .kanban-item:hover > .actions {opacity: 1;} .region .kanban-item.has-color .title, .region .kanban-item.has-color .actions .icon-more-v, diff --git a/module/kanban/js/setwip.js b/module/kanban/js/setwip.js index c1506dfd42..766ae76518 100644 --- a/module/kanban/js/setwip.js +++ b/module/kanban/js/setwip.js @@ -23,7 +23,7 @@ $(function() function setWIPLimit() { var count = $('#WIPCount').val(); - if($('#noLimit').attr('checked') == 'checked') count = -1;; + if($('#noLimit').attr('checked') == 'checked') count = -1; $('#limit').val(count); } diff --git a/module/kanban/js/view.js b/module/kanban/js/view.js index 18c0c37889..2460d61f9c 100644 --- a/module/kanban/js/view.js +++ b/module/kanban/js/view.js @@ -26,7 +26,7 @@ function fullScreen() { var afterEnterFullscreen = function() { - $('#mainContent').addClass('scrollbar-hover'); + $('#kanban').css('background', '#fff'); $.cookie('isFullScreen', 1); }; @@ -222,6 +222,7 @@ function renderKanbanItem(item, $item) [ '
', '', + '', '', '
', '
' @@ -229,6 +230,8 @@ function renderKanbanItem(item, $item) $item.data('card', item); + $info.children('.estimate').text(item.estimate + kanbancardLang.lblHour); + $info.children('.pri') .attr('class', 'pri label-pri label-pri-' + item.pri) .text(item.pri); @@ -237,9 +240,9 @@ function renderKanbanItem(item, $item) if(item.end && item.end !== '0000-00-00') { var end = $.zui.createDate(item.end); - var today = $.zui.createDate(today); + var today = new Date(); var isExpired = end.getTime() < today.getTime(); - var dateFormat = (today.getFullYear() === end.getFullYear() ? 'MM-dd ' : 'yyyy-MM-dd ') + kanbancardLang.end; + var dateFormat = (today.getFullYear() === end.getFullYear() ? 'MM-dd ' : 'yyyy-MM-dd ') + kanbancardLang.deadlineAB; $time.text($.zui.formatDate(end, dateFormat)) .toggleClass('text-red', isExpired) .show(); @@ -599,6 +602,13 @@ function processMinusBtn() } } +/** + * Create lane menu. + * + * @param object $options + * @access public + * @return void + */ function createLaneMenu(options) { var lane = options.$trigger.closest('.kanban-lane').data('lane'); @@ -614,6 +624,13 @@ function createLaneMenu(options) return items; } +/** + * Create card menu; + * + * @param object $options + * @access public + * @return void + */ function createCardMenu(options) { var card = options.$trigger.closest('.kanban-item').data('item'); diff --git a/module/kanban/lang/en.php b/module/kanban/lang/en.php index e2eb05a826..6a0131a2f2 100644 --- a/module/kanban/lang/en.php +++ b/module/kanban/lang/en.php @@ -40,23 +40,23 @@ $lang->kanban->archiveColumn = 'Archive Column'; $lang->kanban->spaceCommon = 'Kanban Space'; /* Fields. */ -$lang->kanban->space = 'Space'; -$lang->kanban->name = 'Name'; -$lang->kanban->owner = 'Owner'; -$lang->kanban->team = 'Team'; -$lang->kanban->desc = 'Description'; -$lang->kanban->acl = 'ACL'; -$lang->kanban->whitelist = 'White List'; -$lang->kanban->status = 'Status'; -$lang->kanban->createdBy = 'Created By'; -$lang->kanban->createdDate = 'Created Date'; -$lang->kanban->lastEditedBy = 'Edited By'; -$lang->kanban->lastEditedDate = 'Edited Date'; -$lang->kanban->closed = 'Closed'; -$lang->kanban->closedBy = 'Closed By'; -$lang->kanban->closedDate = 'Closed Date'; -$lang->kanban->empty = 'No Kanban'; -$lang->kanban->teamSumCount = '%s people in total'; +$lang->kanban->space = 'Space'; +$lang->kanban->name = 'Name'; +$lang->kanban->owner = 'Owner'; +$lang->kanban->team = 'Team'; +$lang->kanban->desc = 'Description'; +$lang->kanban->acl = 'ACL'; +$lang->kanban->whitelist = 'White List'; +$lang->kanban->status = 'Status'; +$lang->kanban->createdBy = 'Created By'; +$lang->kanban->createdDate = 'Created Date'; +$lang->kanban->lastEditedBy = 'Edited By'; +$lang->kanban->lastEditedDate = 'Edited Date'; +$lang->kanban->closed = 'Closed'; +$lang->kanban->closedBy = 'Closed By'; +$lang->kanban->closedDate = 'Closed Date'; +$lang->kanban->empty = 'No Kanban'; +$lang->kanban->teamSumCount = '%s people in total'; $lang->kanban->createColumnOnLeft = 'Create Column On Left'; $lang->kanban->createColumnOnRight = 'Create Column On Right'; @@ -252,6 +252,7 @@ $lang->kanbancard->archivedBy = 'Archived By'; $lang->kanbancard->archivedDate = 'Archived Date'; $lang->kanbancard->lblHour = 'h'; $lang->kanbancard->noAssigned = 'No Assigned'; +$lang->kanbancard->deadlineAB = 'DL'; $lang->kanbancard->priList[1] = 1; $lang->kanbancard->priList[2] = 2; diff --git a/module/kanban/lang/zh-cn.php b/module/kanban/lang/zh-cn.php index 0ca4450ded..7e9a6338fe 100644 --- a/module/kanban/lang/zh-cn.php +++ b/module/kanban/lang/zh-cn.php @@ -252,6 +252,7 @@ $lang->kanbancard->archivedBy = '由谁归档'; $lang->kanbancard->archivedDate = '归档时间'; $lang->kanbancard->lblHour = 'h'; $lang->kanbancard->noAssigned = '未指派'; +$lang->kanbancard->deadlineAB = '截止'; $lang->kanbancard->priList[1] = 1; $lang->kanbancard->priList[2] = 2; diff --git a/module/kanban/model.php b/module/kanban/model.php index 2dc4a8e7c2..767467b529 100644 --- a/module/kanban/model.php +++ b/module/kanban/model.php @@ -320,6 +320,7 @@ class kanbanModel extends model ->add('assignedDate', $now) ->trim('name') ->setDefault('estimate', 0) + ->join('assignedTo', ',') ->setIF(is_numeric($this->post->estimate), 'estimate', (float)$this->post->estimate) ->remove('uid') ->get(); diff --git a/module/kanban/view/createcard.html.php b/module/kanban/view/createcard.html.php index c63ce3b692..12969bb369 100644 --- a/module/kanban/view/createcard.html.php +++ b/module/kanban/view/createcard.html.php @@ -19,36 +19,11 @@
- - - - - - - - - - - - - + + + + + + + + diff --git a/module/kanban/view/createcolumn.html.php b/module/kanban/view/createcolumn.html.php index 285dbb10eb..3079b86beb 100644 --- a/module/kanban/view/createcolumn.html.php +++ b/module/kanban/view/createcolumn.html.php @@ -43,7 +43,10 @@ - +
kanbancard->estimate;?> -
- - kanbancard->lblHour;?> -
-
kanbancard->assignedTo;?> - user->account, "class='form-control chosen'");?> -
kanbancard->beginAndEnd;?> -
- kanbancard->begin}'");?> - ~ - kanbancard->end}'");?> -
-
kanbancard->name;?> +
- + kanbancard->pri;?>
+
+
+ kanbancard->estimate;?> + kanbancard->lblHour;?>> +
+
+ +
kanbancard->assignedTo;?> + user->account, "class='form-control chosen' multiple");?> +
kanbancard->beginAndEnd;?> +
+ kanbancard->begin}'");?> + ~ + kanbancard->end}'");?>
kanbancolumn->color;?>
+
+ +
diff --git a/module/kanban/view/view.html.php b/module/kanban/view/view.html.php index 4690afa988..5f5bef06f1 100644 --- a/module/kanban/view/view.html.php +++ b/module/kanban/view/view.html.php @@ -12,7 +12,6 @@ js::set('kanbancolumnLang', $lang->kanbancolumn); js::set('kanbancardLang', $lang->kanbancard); js::set('kanbanID', $kanban->id); js::set('laneCount', $laneCount); -js::set('today', helper::today()); js::set('userList', $userList); js::set('priv', diff --git a/module/programplan/lang/en.php b/module/programplan/lang/en.php index 3431b93611..5a6a4ed3ab 100644 --- a/module/programplan/lang/en.php +++ b/module/programplan/lang/en.php @@ -10,7 +10,7 @@ * @link http://www.zentao.net */ $lang->programplan->common = 'Program Plan'; -$lang->programplan->browse = 'Program Plan'; +$lang->programplan->browse = 'Gantt Chart'; $lang->programplan->gantt = 'Gantt Chart'; $lang->programplan->list = 'Stage List'; $lang->programplan->create = 'Create'; diff --git a/module/programplan/lang/zh-cn.php b/module/programplan/lang/zh-cn.php index 627a2e5d4b..ef8951ee19 100644 --- a/module/programplan/lang/zh-cn.php +++ b/module/programplan/lang/zh-cn.php @@ -10,7 +10,7 @@ * @link http://www.zentao.net */ $lang->programplan->common = '项目阶段'; -$lang->programplan->browse = '浏览阶段计划'; +$lang->programplan->browse = '浏览甘特图'; $lang->programplan->gantt = '甘特图'; $lang->programplan->list = '阶段列表'; $lang->programplan->create = '设置阶段';