| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- <?php
- namespace zin;
- require_once dirname(__DIR__) . DS . 'datalist' . DS . 'v1.php';
- class bugLifeInfo extends wg
- {
- /**
- * @var mixed[]
- */
- protected static $defineProps = array
- (
- 'bug' => '?object', // 当前Bug。
- 'users' => '?array' // 用户列表。
- );
- protected function getItems()
- {
- global $lang;
- $bug = $this->prop('bug', data('bug'));
- if(!$bug) return array();
- $users = $this->prop('users', data('users'));
- $builds = $this->prop('builds', data('builds'));
- $items = array();
- $openedBuildList = explode(',', $bug->openedBuild);
- $openedBuildText = '';
- foreach($openedBuildList as $openedBuild)
- {
- if(!$openedBuild) continue;
- $openedBuildText .= zget($builds, $openedBuild) . ' ';
- }
- $items[$lang->bug->openedBy] = zget($users, $bug->openedBy) . (formatTime($bug->openedDate) ? $lang->at . $bug->openedDate : '');
- $items[$lang->bug->openedBuild] = trim($openedBuildText);
- $items[$lang->bug->lblResolved] = zget($users, $bug->resolvedBy) . (formatTime($bug->resolvedDate) ? $lang->at . formatTime($bug->resolvedDate, DT_DATE1) : '');
- $items[$lang->bug->resolvedBuild] = zget($builds, $bug->resolvedBuild);
- $duplicateBugLink = $bug->duplicateBug ? createLink('bug', 'view', "bugID={$bug->duplicateBug}") : '';
- $duplicateBugText = $bug->duplicateBug ? " #{$bug->duplicateBug}: " . "<a href='{$duplicateBugLink}' data-toggle='modal' data-size='lg'>{$bug->duplicateBugTitle}</a>": '';
- $duplicateBugText = div
- (
- span(zget($lang->bug->resolutionList, $bug->resolution)),
- $bug->duplicateBug ? span(" #{$bug->duplicateBug}: ") : null,
- $bug->duplicateBug ? a(
- $bug->duplicateBugTitle,
- set::href($duplicateBugLink),
- setData('toggle', 'modal'),
- setData('size', 'lg')
- ) : null
- );
- $items[$lang->bug->resolution] = array('children' => $duplicateBugText);
- $items[$lang->bug->closedBy] = zget($users, $bug->closedBy) . (formatTime($bug->closedDate) ? $lang->at . $bug->closedDate : '');
- $items[$lang->bug->lblLastEdited] = zget($users, $bug->lastEditedBy, $bug->lastEditedBy) . (formatTime($bug->lastEditedDate) ? $lang->at . $bug->lastEditedDate : '');
- return $items;
- }
- protected function build()
- {
- global $app;
- $isEn = $app->getClientLang() == 'en';
- return new datalist
- (
- set::className('bug-life-info'),
- $isEn ? set::labelWidth('100') : null,
- set::items($this->getItems())
- );
- }
- }
|