Skip to content
Snippets Groups Projects
status-options.tmpl.php 2.28 KiB
Newer Older
Peter Rotich's avatar
Peter Rotich committed
<?php
global $thisstaff, $ticket;
// Map states to actions
Peter Rotich's avatar
Peter Rotich committed
$actions= array(
        'closed' => array(
Peter Rotich's avatar
Peter Rotich committed
            'icon'  => 'icon-ok-circle',
Peter Rotich's avatar
Peter Rotich committed
            'action' => 'close',
Peter Rotich's avatar
Peter Rotich committed
            'href' => 'tickets.php'
Peter Rotich's avatar
Peter Rotich committed
            ),
        'open' => array(
Peter Rotich's avatar
Peter Rotich committed
            'icon'  => 'icon-undo',
            'action' => 'reopen'
Peter Rotich's avatar
Peter Rotich committed
            ),
        );

$states = array('open');
if ($thisstaff->getRole($ticket ? $ticket->getDeptId() : null)->hasPerm(TicketModel::PERM_CLOSE)
        && (!$ticket || !$ticket->getMissingRequiredFields()))
    $states = array_merge($states, array('closed'));

$statusId = $ticket ? $ticket->getStatusId() : 0;
$nextStatuses = array();
foreach (TicketStatusList::getStatuses(
            array('states' => $states)) as $status) {
    if (!isset($actions[$status->getState()])
            || $statusId == $status->getId())
        continue;
    $nextStatuses[] = $status;
}

if (!$nextStatuses)
    return;
Peter Rotich's avatar
Peter Rotich committed

    class="action-button"
    data-dropdown="#action-dropdown-statuses" data-placement="bottom" data-toggle="tooltip" title="<?php echo __('Change Status'); ?>">
    <i class="icon-caret-down pull-right"></i>
    <a class="tickets-action"
        aria-label="<?php echo __('Change Status'); ?>"
        href="#statuses"><i
        class="icon-flag"></i></a>
</span>
<div id="action-dropdown-statuses"
    class="action-dropdown anchor-right">
    <ul>
<?php foreach ($nextStatuses as $status) { ?>
        <li>
            <a class="no-pjax <?php
                echo $ticket? 'ticket-action' : 'tickets-action'; ?>"
                href="<?php
                    echo sprintf('#%s/status/%s/%d',
                            $ticket ? ('tickets/'.$ticket->getId()) : 'tickets',
                            $actions[$status->getState()]['action'],
Peter Rotich's avatar
Peter Rotich committed
                            $status->getId()); ?>"
                <?php
                if (isset($actions[$status->getState()]['href']))
                    echo sprintf('data-redirect="%s"',
Peter Rotich's avatar
Peter Rotich committed
                            $actions[$status->getState()]['href']);

                ?>
                ><i class="<?php
                        echo $actions[$status->getState()]['icon'] ?: 'icon-tag';
                    ?>"></i> <?php
                        echo __($status->getName()); ?></a>
        </li>
Peter Rotich's avatar
Peter Rotich committed
    <?php