<?php
/**
 * The steps view file of deploy module of ZenTaoPMS.
 *
 * @copyright   Copyright 2009-2015 禅道软件（青岛）有限公司(ZenTao Software (Qingdao) Co., Ltd. www.cnezsoft.com)
 * @license     ZPL(http://zpl.pub/page/zplv12.html) or AGPL(https://www.gnu.org/licenses/agpl-3.0.en.html)
 * @author      Yidong Wang <yidong@cnezsoft.com>
 * @package     deploy
 * @version     $Id$
 * @link        http://www.zentao.net
 */
?>
<?php include $app->getModuleRoot() . 'common/view/header.html.php';?>
<?php $width = 100 / count($lang->deploy->stageList);?>
<div id='mainMenu' class='clearfix'>
  <?php include './nav.html.php';?>
  <div class='btn-toolbar pull-right'>
    <?php
    $browseLink = $this->session->deployList ? $this->session->deployList :  inlink('browse');
    if(!$deploy->deleted)
    {
        common::printLink('deploy', 'manageStep', $params, "<i class='icon icon-plus'></i> " . $lang->deploy->manageStep, '', "class='btn btn-primary'");
        echo html::linkButton('<i class="icon-back icon-level-up icon-large icon-rotate-270"></i> ' . $lang->goback, $browseLink, 'self', '', 'btn btn-secondary');
    }
    else
    {
        echo html::linkButton('<i class="icon-back icon-level-up icon-large icon-rotate-270"></i> ' . $lang->goback, $browseLink, 'self', '', 'btn btn-secondary');
    }
    ?>
  </div>
</div>
<div class='main-content' id='kanban'>
  <?php if(empty($stepGroups)):?>
  <div class='table-empty-tip'><?php echo $lang->noData;?></div>
  <?php else:?>
  <table class='boards-layout table' id='kanbanHeader'>
    <thead>
      <tr>
        <?php foreach($lang->deploy->stageList as $stage => $name):?>
        <th class='col-<?php echo $stage?>' style='width:<?php echo $width;?>%'><?php echo $name;?></th>
        <?php endforeach;?>
      </tr>
    </thead>
  </table>
  <table class='boards-layout table active-disabled table-bordered' id='kanbanWrapper'>
    <thead>
      <tr>
        <?php foreach($lang->deploy->stageList as $stage => $name):?>
        <th class='col-<?php echo $stage?>' style='width:<?php echo $width;?>%'></th>
        <?php endforeach;?>
      </tr>
    </thead>
    <tbody>
      <tr>
        <?php foreach($lang->deploy->stageList as $stage => $name):?>
        <td class='col-droppable col-<?php echo $stage?>' data-id='<?php echo $stage?>'>
          <?php if(!isset($stepGroups[$stage])) $stepGroups[$stage] = array();?>
          <?php foreach($stepGroups[$stage] as $step):?>
          <div class='board board-step board-step-<?php echo $step->status ?>' data-id='<?php echo $step->id?>' id='step-<?php echo $step->id?>'>
            <div class='board-title'>
              <?php echo html::a($this->createLink('deploy', 'viewStep', "id=$step->id", '', true), substr($step->begin, 11, 5) . ' ~ ' . substr($step->end, 11, 5) . ' ' . $step->title, '', 'class="kanbanFrame" title="' . $step->title . '" data-toggle="modal"');?>
              <div class='board-actions'>
                <?php if($step->content):?>
                <button type="button" class="btn btn-mini btn-link btn-info-toggle"><i class="icon-angle-down"></i></button>
                <?php endif;?>
                <div class='dropdown'>
                  <button type='button' class='btn btn-mini btn-link dropdown-toggle' data-toggle='dropdown'>
                    <span class='icon-ellipsis-v'></span>
                  </button>
                  <div class='dropdown-menu pull-right'>
                    <?php
                    echo (common::hasPriv('deploy', 'finishStep', $step) and $step->status != 'done') ? html::a($this->createLink('deploy', 'finishStep', "stepID=$step->id", '', true), $lang->deploy->finish, '', "class='kanbanFrame' data-toggle='modal'") : '';
                    echo (common::hasPriv('deploy', 'assignTo', $step))   ? html::a($this->createLink('deploy', 'assignTo', "stepID=$step->id", '', true), $lang->deploy->assignTo, '', "class='kanbanFrame'") : '';
                    echo (common::hasPriv('deploy', 'editStep', $step))   ? html::a($this->createLink('deploy', 'editStep', "stepID=$step->id", '', true), $lang->deploy->edit, '', "class='iframe' data-width='1080'") : '';
                    echo (common::hasPriv('deploy', 'deleteStep', $step)) ? html::a($this->createLink('deploy', 'deleteStep', "stepID=$step->id"), $lang->deploy->delete, 'hiddenwin') : '';
                    ?>
                  </div>
                </div>
              </div>
            </div>
            <div class='board-body content'><?php echo $step->content?></div>
            <div class='board-footer clearfix'>
              <span class="step-assignedTo" title='<?php echo $lang->deploy->assignedTo?>'>
                <?php echo (common::hasPriv('deploy', 'assignTo', $step)) ? html::a($this->createLink('deploy', 'assignTo', "stepID=$step->id", '', true), "<i class='icon icon-hand-right'></i>", '', "class='kanbanFrame'") : "<i class='icon icon-hand-right'></i>";?>
                <small> <?php echo zget($users, $step->assignedTo, $step->assignedTo);?></small>
              </span>
              <div class='pull-right'>
                <?php if($step->status != 'done'):?>
                <span class='step-status' title='<?php echo $lang->deploy->finish?>'>
                  <?php echo (common::hasPriv('deploy', 'finishStep', $step)) ? html::a($this->createLink('deploy', 'finishStep', "stepID=$step->id", '', true), "<i class='icon icon-ok-sign'></i> " . $lang->deploy->finish, '', "class='kanbanFrame'") : '';?>
                </span>
                <?php endif;?>
                <?php if($step->status == 'done'):?>
                <span class='step-status' title='<?php echo $lang->deploy->status?>'>
                  <i class='icon icon-info'></i> <?php echo zget($lang->deploy->statusList, $step->status);?>
                </span>
                <?php endif;?>
              </div>
            </div>
          </div>
          <?php endforeach;?>
          <?php if($stage == 'testing' and !empty($stepGroups['cases'])):?>
          <?php foreach($stepGroups['cases'] as $case):?>
          <div class='board board-step board-step-<?php echo $stage ?>' data-id='<?php echo $case->id?>' id='case-<?php echo $case->id?>'>
            <div class='board-title'>
              <?php
              echo html::a($this->createLink('testcase', 'view', "id=$case->id", '', true), $case->title, '', 'class="kanbanFrame" title="' . $case->title . '"');
              ?>
              <div class='board-actions'>
                <?php echo (common::hasPriv('testtask', 'runDeployCase')) ? html::a($this->createLink('testtask', 'runDeployCase', "deployID={$deploy->id}&caseID=$case->id&version=$case->version", '', true), $lang->testtask->runCase, '', "class='kanbanFrame'") : '';?>
              </div>
            </div>
            <?php $result = zget($results, $case->id, '');?>
            <?php if($result):?>
            <div class='board-footer clearfix'>
              <span class="case-lastRunner" title='<?php echo $lang->testcase->lastRunner?>'>
                <i class='icon icon-user'></i>
                <small> <?php echo zget($users, $result->lastRunner);?></small>
              </span>
              <div class='pull-right'>
                <span class='step-result' title='<?php echo $lang->testcase->lastRunResult?>'>
                  <?php $hasResultsPriv = common::hasPriv('testtask', 'deployCaseResults', $case);?>
                  <?php if($hasResultsPriv):?>
                  <a href='<?php echo $this->createLink('testtask', 'deployCaseResults', "deployID={$deploy->id}&caseID=$case->id&version=$case->version", '', true)?>' class='iframe' data-width='80%'>
                  <?php endif;?>
                    <i class='icon icon-stack'></i> <?php echo zget($lang->testcase->resultList, $result->caseResult);?>
                  <?php if($hasResultsPriv):?>
                  </a>
                  <?php endif;?>
                </span>
              </div>
            </div>
            <?php endif;?>
          </div>
          <?php endforeach;?>
          <?php endif;?>
        </td>
        <?php endforeach;?>
      </tr>
    </tbody>
  </table>
  <?php endif;?>
</div>
<?php include $app->getModuleRoot() . 'common/view/footer.html.php';?>
