From f5955e010f463dddaf5e4d777693b0fb76fca862 Mon Sep 17 00:00:00 2001 From: daitingting Date: Tue, 4 Jul 2023 06:41:53 +0000 Subject: [PATCH] * Refactor the task block view. --- module/block/config/taskblock.php | 37 ++++++++++++++++++++++++ module/block/ui/taskblock.html.php | 45 ++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 module/block/config/taskblock.php create mode 100644 module/block/ui/taskblock.html.php diff --git a/module/block/config/taskblock.php b/module/block/config/taskblock.php new file mode 100644 index 0000000000..5d9a83618e --- /dev/null +++ b/module/block/config/taskblock.php @@ -0,0 +1,37 @@ +loadLang('task'); + +$config->block->task = new stdclass(); +$config->block->task->dtable = new stdclass(); +$config->block->task->dtable->fieldList = array(); +$config->block->task->dtable->fieldList['id']['name'] = 'id'; +$config->block->task->dtable->fieldList['id']['title'] = $lang->idAB; +$config->block->task->dtable->fieldList['id']['type'] = 'id'; +$config->block->task->dtable->fieldList['id']['fixed'] = false; + +$config->block->task->dtable->fieldList['name']['name'] = 'name'; +$config->block->task->dtable->fieldList['name']['title'] = $lang->task->name; +$config->block->task->dtable->fieldList['name']['type'] = 'title'; +$config->block->task->dtable->fieldList['name']['fixed'] = false; + +$config->block->task->dtable->fieldList['pri']['name'] = 'pri'; +$config->block->task->dtable->fieldList['pri']['title'] = $lang->priAB; +$config->block->task->dtable->fieldList['pri']['type'] = 'pri'; + +$config->block->task->dtable->fieldList['status']['name'] = 'status'; +$config->block->task->dtable->fieldList['status']['title'] = $lang->statusAB; +$config->block->task->dtable->fieldList['status']['type'] = 'status'; +$config->block->task->dtable->fieldList['status']['statusMap'] = $lang->task->statusList; + +$config->block->task->dtable->fieldList['deadline']['name'] = 'deadline'; +$config->block->task->dtable->fieldList['deadline']['title'] = $lang->task->deadlineAB; +$config->block->task->dtable->fieldList['deadline']['type'] = 'date'; + +$config->block->task->dtable->fieldList['estimate']['name'] = 'estimate'; +$config->block->task->dtable->fieldList['estimate']['title'] = $lang->task->estimateAB; +$config->block->task->dtable->fieldList['estimate']['type'] = 'number'; + +$config->block->task->dtable->fieldList['progress']['name'] = 'progress'; +$config->block->task->dtable->fieldList['progress']['title'] = $lang->task->progressAB; +$config->block->task->dtable->fieldList['progress']['type'] = 'progress'; diff --git a/module/block/ui/taskblock.html.php b/module/block/ui/taskblock.html.php new file mode 100644 index 0000000000..f8bfcb19f7 --- /dev/null +++ b/module/block/ui/taskblock.html.php @@ -0,0 +1,45 @@ + + * @package block + * @link https://www.zentao.net + */ +namespace zin; + +if(!$longBlock) +{ + unset($config->block->task->dtable->fieldList['status']); + unset($config->block->task->dtable->fieldList['deadline']); + unset($config->block->task->dtable->fieldList['estimate']); +} + +panel +( + set::class('task-block' . $longBlock ? 'block-long' : 'block-sm'), + set::title($block->title), + set('headingClass', 'border-b'), + to::headingActions + ( + a + ( + set('class', 'text-gray'), + set('href', createLink('my', 'work', 'mode=task&type=' . $block->params->type)), + $lang->more, + icon('caret-right') + ) + ), + dtable + ( + set::className('borderless'), + set::fixedLeftWidth('50%'), + set::cols(array_values($config->block->task->dtable->fieldList)), + set::data(array_values($tasks)), + set::horzScrollbarPos('inside'), + ), +); + +render();