* @package story * @version $Id: view.html.php 4952 2013-07-02 01:14:58Z chencongzhi520@gmail.com $ * @link http://www.zentao.net */ ?> session->storyList ? $app->session->storyList : $this->createLink('product', 'browse', "productID=$story->product");?> type);?> app->rawMethod);?> app->getViewType() == 'xhtml'):?>
story->legendSpec;?>
spec;?>
story->legendVerify;?>
verify;?>
fetch('file', 'printFiles', array('files' => $story->files, 'fieldset' => 'true', 'object' => $story, 'method' => 'view', 'showDelete' => false));?> createLink('action', 'comment', "objectType=story&objectID=$story->id"); ?> children)):?>
lang->story->children;?>
children as $child):?>
story->id;?> story->pri;?>>priAB;?> story->title;?> story->assignedTo;?> story->estimate;?> story->status;?> actions;?>
id;?> pri ? 'label-pri label-pri-' . $child->pri : ''; echo ""; echo $child->pri == '0' ? '' : zget($this->lang->story->priList, $child->pri, $child->pri); echo ""; ?> id&version=0¶m=0&storyType=$child->type", '', true); ?>">title;?> assignedTo);?> estimate . $config->hourUnit;?> processStatus('story', $child);?> id&from=&storyType=$child->type", $child, 'list', 'alter'); common::printIcon('story', 'review', "storyID=$child->id&from=product&storyType=$child->type", $child, 'list', 'search', '', 'iframe showinonlybody', true); common::printIcon('story', 'assignTo', "storyID=$child->id&kanbanGroup=default&from=&storyType=$child->type", $child, 'list', '', '', 'iframe showinonlybody', true); common::printIcon('story', 'close', "storyID=$child->id&from=&storyType=$child->type", $child, 'list', '', '', 'iframe showinonlybody', true); common::printIcon('story', 'activate', "storyID=$child->id&storyType=$child->type", $child, 'list', '', '', 'iframe showinonlybody', true); common::printIcon('story', 'edit', "storyID=$child->id&kanbanGroup=default&storyType=$child->type", $child, 'list'); common::printIcon('testcase', 'create', "productID=$child->product&branch=$child->branch&module=0&from=¶m=0&story={$child->id}", $child, 'list', 'sitemap'); ?>
printExtendFields($story, 'div', "position=left&inForm=0&inCell=1");?> app->getViewType() != 'xhtml'):?>
";?> deleted) echo $this->story->buildOperateMenu($story, 'view', $project);?>
shadow):?> type != 'normal'):?> branch and isset($branches[$storyModule->branch])) { $moduleTitle .= $branches[$storyModule->branch] . '/'; echo $branches[$storyModule->branch] . $lang->arrow; } foreach($modulePath as $key => $module) { $moduleTitle .= $module->name; if($product->shadow) { echo $module->name; } else { common::printLink('product', 'browse', "productID=$story->product&branch=$story->branch&browseType=byModule¶m=$module->id", $module->name, '', "data-app='product'"); } if(isset($modulePath[$key + 1])) { $moduleTitle .= '/'; echo $lang->arrow; } } } $printModule = ob_get_contents(); ob_end_clean(); ?> type != 'requirement' and $story->parent != -1 and !$hiddenPlan):?> type != 'requirement'):?> source, $config->story->feedbackSource)):?>
story->product;?> createLink('product', 'view', "productID=$story->product"), $product->name, '', "data-app='product'");?>
product->branch;?> product&branch=$story->branch", $branches[$story->branch], '', "data-app='product'");?>
story->module;?>
story->plan;?> planTitle)) { foreach($story->planTitle as $planID => $planTitle) { if(!common::printLink('productplan', 'view', "planID=$planID", $planTitle, '', "data-app='product'")) echo $planTitle; echo '
'; } } ?>
story->source;?> story->sourceList[$story->source];?>
story->sourceNote;?> sourceNote;?>
story->status;?> processStatus('story', $story);?>
story->stage;?> stage; $stageList = join(',', array_keys($this->lang->story->stageList)); $maxStagePos = strpos($stageList, $maxStage); if($story->stages and $branches) { foreach($story->stages as $branch => $stage) { if(strpos($stageList, $stage) !== false and strpos($stageList, $stage) > $maxStagePos) { $maxStage = $stage; $maxStagePos = strpos($stageList, $stage); } } } echo $lang->story->stageList[$maxStage]; ?>
story->category;?> story->categoryList, $story->category, $story->category)?>
story->pri;?> pri):?> pri;?>' title='story->priList, $story->pri)?>'>story->priList, $story->pri)?>
story->estimate;?> estimate . $config->hourUnit;?>
story->feedbackBy;?> feedbackBy;?>
story->notifyEmail;?> notifyEmail;?>
story->keywords;?> keywords;?>
story->legendMailto;?> mailto)) { foreach(explode(',', $story->mailto) as $account) { if(empty($account)) continue; echo "" . zget($users, trim($account)) . '  '; } } ?>
story->openedBy;?> openedBy) . $lang->at . $story->openedDate;?>
story->assignedTo;?> assignedTo) echo zget($users, $story->assignedTo) . $lang->at . $story->assignedDate;?>
story->reviewers;?> $result) { echo !empty($result) ? ' ' . zget($users, $reviewer) . '' : ' ' . zget($users, $reviewer) . ''; } } ?>
story->reviewedDate;?> reviewedBy) echo $story->reviewedDate;?>
story->closedBy;?> closedBy) echo zget($users, $story->closedBy) . $lang->at . $story->closedDate;?>
story->closedReason;?> closedReason) echo $lang->story->reasonList[$story->closedReason]; if(isset($story->extraStories[$story->duplicateStory])) { echo html::a(inlink('view', "storyID=$story->duplicateStory"), '#' . $story->duplicateStory . ' ' . $story->extraStories[$story->duplicateStory], '', "title='{$story->extraStories[$story->duplicateStory]}'"); } ?>
story->lastEditedBy;?> lastEditedBy) echo zget($users, $story->lastEditedBy) . $lang->at . $story->lastEditedDate;?>
config->URAndSR and !$hiddenURS):?>
' id='legendStories'>
    type == 'story' ? 'requirement' : 'story'; $canViewLinkStory = common::hasPriv($relationType, 'view', null, "storyType=$relationType"); foreach($relations as $item) $relation[$item->id] = $item->title; foreach($relation as $id => $title) { echo "
  • " . ($canViewLinkStory ? html::a($this->createLink('story', 'view', "id=$id&version=0¶m=0&storyType=$relationType", '', true), "#$id $title", '', "class='iframe' data-width='80%'") : "#$id $title"); echo html::a($this->createLink('story', 'linkStory', "storyID=$story->id&type=remove&linkedID=$id&browseType=&queryID=0&storyType=$story->type"), '', 'hiddenwin', "class='hide removeButton'"); } ?> type == 'story') ? $lang->story->requirement : $lang->story->story;?>
  • type, 'linkStory')) echo html::a($this->createLink('story', 'linkStory', "storyID=$story->id&type=linkStories&linkedID=0&browseType=&queryID=0&storyType=$story->type", '', true), $lang->story->link . $linkLang, '', "class='btn btn-info iframe' data-width='95%' id='linkButton'");?>
type == 'story'):?>
    tasks as $executionTasks) { foreach($executionTasks as $task) { if(!isset($executions[$task->execution])) continue; $execution = isset($story->executions[$task->execution]) ? $story->executions[$task->execution] : ''; $executionLink = !empty($execution->multiple) ? $this->createLink('execution', 'view', "executionID=$task->execution") : $this->createLink('project', 'view', "projectID=$task->project"); $executionName = $executions[$task->execution]; $taskInfo = $task->id . ' ' . $this->lang->task->statusList[$task->status] . ' ' . $task->name; $class = isonlybody() ? 'showinonlybody' : 'iframe'; $execName = (isset($execution->type) and $execution->type == 'kanban' and isonlybody()) ? $executionName : html::a($executionLink, $executionName, '', "class='text-muted'"); echo "
  • " . $execName . html::a($this->createLink('task', 'view', "taskID=$task->id", '', true), $taskInfo, '', "class=$class data-width='90%'") . '
  • '; } } foreach($story->executions as $executionID => $execution) { if(!$execution->multiple) continue; if(!isset($executions[$executionID])) continue; if(isset($story->tasks[$executionID])) continue; $execName = ($execution->type == 'kanban' and isonlybody()) ? $executions[$executionID] : html::a($this->createLink('execution', 'view', "executionID=$executionID"), $executions[$executionID], '', "class='text-muted'"); echo "
  • " . $execName . '
  • '; } ?>
type == 'story'):?> type == 'story' and helper::hasFeature('devops')):?>
story->legendFromBug;?>
    id $fromBug->title'>" . html::a($this->createLink('bug', 'view', "bugID=$fromBug->id", '', true), "#$fromBug->id $fromBug->title", '', "class='iframe' data-width='80%'") . '';?>
story->legendBugs;?>
    id" . ' ' . $this->lang->bug->statusList[$bug->status] . ' ' . $bug->title; echo "
  • " . html::a($this->createLink('bug', 'view', "bugID=$bug->id", '', true), $bugInfo, '', "class='iframe' data-width='80%'") . '
  • '; } ?>
story->legendCases;?>
    title'>" . html::a($this->createLink('testcase', 'view', "caseID=$case->id", '', true), "#$case->id $case->title", '', $misc) . ''; } ?>
story->legendBuilds;?>
    tab == 'product' ? 'project' : $app->tab; foreach($builds as $build) { $link = common::hasPriv('build', 'view') ? html::a($this->createLink('build', 'view', "buildID=$build->id"), "#$build->id $build->name", '', "data-app='{$tab}'") : "#$build->id $build->name"; echo "
  • $link
  • "; } ?>
story->legendReleases;?>
    tab == 'execution' ? 'product' : $app->tab; $releaseModule = $app->tab == 'project' ? 'projectrelease' : 'release'; foreach($releases as $release) { $link = common::hasPriv($releaseModule, 'view') ? html::a($this->createLink($releaseModule, 'view', "release=$release->id"), "#$release->id $release->name", '', "data-app='{$tab}'") : "#$release->id $release->name"; echo "
  • $link
  • "; } ?>
story->linkStories;?>
    linkStoryTitles)) { foreach($story->linkStoryTitles as $linkStoryID => $linkStoryTitle) { if($app->user->admin or strpos(",{$app->user->view->products},", ",{$storyProducts[$linkStoryID]},") !== false) { $storyLink = html::a($this->createLink('story', 'view', "storyID=$linkStoryID&version=0¶m=0&storyType=$story->type", '', true), "#$linkStoryID $linkStoryTitle", '', "class='iframe' data-width='80%' title='$linkStoryTitle'") . '
    '; } else { $storyLink = "#$linkStoryID $linkStoryTitle"; } echo "
  • $storyLink
  • "; } } ?>
story->linkMR;?>
    $linkMRTitle) { if($mrPriv) { echo "
  • " . html::a($this->createLink('mr', 'view', "MRID=$MRID"), "#$MRID $linkMRTitle") . '
  • '; } else { echo "
  • " . "#$MRID $linkMRTitle" . '
  • '; } } ?>
story->linkCommit;?>
    revision, 0, 10); $commitTitle = $revision . ' ' . $commit->comment; if($canViewRevision) { echo "'; } else { echo "'; } } ?>
printExtendFields($story, 'div', "position=right&inForm=0&inCell=1");?>
app->getViewType() == 'xhtml'):?>
story->create); js::set('productID', $story->product); js::set('branch', $story->branch); js::set('moduleID', $story->module); js::set('storyType', $story->type); js::set('unlink', $lang->story->unlink); js::set('cancel', $lang->cancel); js::set('rawModule', $this->app->rawModule); ?>