Newer
Older
if(!defined('OSTADMININC') || !$thisstaff->isAdmin()) die('Access Denied');
$sql='SELECT filter.*,count(rule.id) as rules, topic.configuration AS topic, dept.configuration AS dept '.
'FROM '.FILTER_TABLE.' filter '.
'LEFT JOIN '.FILTER_RULE_TABLE.' rule ON(rule.filter_id=filter.id) '.
'LEFT JOIN '.FILTER_ACTION_TABLE.' topic ON (topic.filter_id = filter.id AND topic.type = \'topic\') '.
'LEFT JOIN '.FILTER_ACTION_TABLE.' dept ON (dept.filter_id = filter.id AND dept.type = \'dept\') '.
"WHERE filter.`name` <> 'SYSTEM BAN LIST' ".
'GROUP BY filter.id';
$sortOptions=array('name'=>'filter.name','status'=>'filter.isactive','order'=>'filter.execorder','rules'=>'rules',
'target'=>'filter.target', 'created'=>'filter.created','updated'=>'filter.updated');
$orderWays=array('DESC'=>'DESC','ASC'=>'ASC');
$sort=($_REQUEST['sort'] && $sortOptions[strtolower($_REQUEST['sort'])])?strtolower($_REQUEST['sort']):'name';
//Sorting options...
if($sort && $sortOptions[$sort]) {
$order_column =$sortOptions[$sort];
}
$order_column=$order_column?$order_column:'filter.name';
if($_REQUEST['order'] && $orderWays[strtoupper($_REQUEST['order'])]) {
$order=$orderWays[strtoupper($_REQUEST['order'])];
}
$order=$order?$order:'ASC';
if($order_column && strpos($order_column,',')){
$order_column=str_replace(','," $order,",$order_column);
}
$x=$sort.'_sort';
$$x=' class="'.strtolower($order).'" ';
$order_by="$order_column $order ";
$total=db_count('SELECT count(*) FROM '.FILTER_TABLE.' filter ');
$page=($_GET['p'] && is_numeric($_GET['p']))?$_GET['p']:1;
$pageNav=new Pagenate($total, $page, PAGE_LIMIT);
$qstr = '&'. Http::build_query($qs);
$qs += array('sort' => $_REQUEST['sort'], 'order' => $_REQUEST['order']);
$pageNav->setURL('filters.php', $qs);
$qstr.='&order='.($order=='DESC' ? 'ASC' : 'DESC');
$query="$sql ORDER BY $order_by LIMIT ".$pageNav->getStart().",".$pageNav->getLimit();
$res=db_query($query);
if($res && ($num=db_num_rows($res)))
$showing=$pageNav->showing().' '._N('filter', 'filters', $num);
$showing=__('No filters found');
<form action="filters.php" method="POST" name="filters">
Nathan Febuary
committed
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<div class="sticky bar opaque">
<div class="content">
<div class="pull-left flush-left">
<h2><?php echo __('Ticket Filters');?></h2>
</div>
<div class="pull-right flush-right">
<a href="filters.php?a=add" class="green button action-button"><i class="icon-plus-sign"></i> <?php echo __('Add New Filter');?></a>
<span class="action-button" data-dropdown="#action-dropdown-more">
<i class="icon-caret-down pull-right"></i>
<span ><i class="icon-cog"></i> <?php echo __('More');?></span>
</span>
<div id="action-dropdown-more" class="action-dropdown anchor-right">
<ul id="actions">
<li>
<a class="confirm" data-name="enable" href="filters.php?a=enable">
<i class="icon-ok-sign icon-fixed-width"></i>
<?php echo __( 'Enable'); ?>
</a>
</li>
<li>
<a class="confirm" data-name="disable" href="filters.php?a=disable">
<i class="icon-ban-circle icon-fixed-width"></i>
<?php echo __( 'Disable'); ?>
</a>
</li>
<li class="danger">
<a class="confirm" data-name="delete" href="filters.php?a=delete">
<i class="icon-trash icon-fixed-width"></i>
<?php echo __( 'Delete'); ?>
</a>
</li>
</ul>
</div>
</div>
<input type="hidden" name="do" value="mass_process" >
<input type="hidden" id="action" name="a" value="" >
<table class="list" border="0" cellspacing="1" cellpadding="0" width="940">
<thead>
<tr>
<th width="4%"> </th>
<th width="32%"><a <?php echo $name_sort; ?> href="filters.php?<?php echo $qstr; ?>&sort=name"><?php echo __('Name');?></a></th>
<th width="8%"><a <?php echo $status_sort; ?> href="filters.php?<?php echo $qstr; ?>&sort=status"><?php echo __('Status');?></a></th>
<th width="8%" style="text-align:center;"><a <?php echo $order_sort; ?> href="filters.php?<?php echo $qstr; ?>&sort=order"><?php echo __('Order');?></a></th>
<th width="8%" style="text-align:center;"><a <?php echo $rules_sort; ?> href="filters.php?<?php echo $qstr; ?>&sort=rules"><?php echo __('Rules');?></a></th>
<th width="10%"><a <?php echo $target_sort; ?> href="filters.php?<?php echo $qstr; ?>&sort=target"><?php echo __('Target');?></a></th>
<th width="12%" nowrap><a <?php echo $created_sort; ?>href="filters.php?<?php echo $qstr; ?>&sort=created"><?php echo __('Date Added');?></a></th>
<th width="18%" nowrap><a <?php echo $updated_sort; ?>href="filters.php?<?php echo $qstr; ?>&sort=updated"><?php echo __('Last Updated');?></a></th>
</tr>
</thead>
<tbody>
<?php
$total=0;
$ids=($errors && is_array($_POST['ids']))?$_POST['ids']:null;
if($res && db_num_rows($res)):
while ($row = db_fetch_array($res)) {
if ($row['topic']) {
$filter = Filter::lookup($row['id']);
if ($filter->ht['flags'] & !Filter::FLAG_INACTIVE_HT) {
$filter->setFlag(Filter::FLAG_INACTIVE_HT, true);
$vars = $filter->ht;
$vars['rules']= $filter->getRules();
$filter->update($filter->ht, $errors);
}
}
if ($row['dept']) {
$filter = Filter::lookup($row['id']);
if ($filter->ht['flags'] & !Filter::FLAG_INACTIVE_DEPT) {
$filter->setFlag(Filter::FLAG_INACTIVE_DEPT, true);
$vars = $filter->ht;
$vars['rules']= $filter->getRules();
$filter->update($filter->ht, $errors);
}
}
if($ids && in_array($row['id'],$ids))
$sel=true;
?>
<tr id="<?php echo $row['id']; ?>">
<input type="checkbox" class="ckb" name="ids[]" value="<?php echo $row['id']; ?>"
<?php echo $sel?'checked="checked"':''; ?>>
</td>
<td> <a href="filters.php?id=<?php echo $row['id']; ?>"><?php echo Format::htmlchars($row['name']); ?></a>
<?php
if ($row['flags'] & Filter::FLAG_INACTIVE_DEPT)
echo '<a data-placement="bottom" data-toggle="tooltip" title="Inactive Department Selected"
<i class="pull-right icon-warning-sign"></a>';
if ($row['flags'] & Filter::FLAG_INACTIVE_HT)
echo '<a data-placement="bottom" data-toggle="tooltip" title="Inactive Help Topic Selected"
<i class="pull-right icon-warning-sign"></a>';
?>
</td>
<td><?php echo $row['isactive']?__('Active'):'<b>'.__('Disabled').'</b>'; ?></td>
<td style="text-align:right;padding-right:25px;"><?php echo $row['execorder']; ?> </td>
<td style="text-align:right;padding-right:25px;"><?php echo $row['rules']; ?> </td>
<td> <?php echo Format::htmlchars($targets[$row['target']]); ?></td>
<td> <?php echo Format::date($row['created']); ?></td>
<td> <?php echo Format::datetime($row['updated']); ?></td>
</tr>
<?php
} //end of while.
endif; ?>
<tfoot>
<tr>
<a id="selectAll" href="#ckb"><?php echo __('All');?></a>
<a id="selectNone" href="#ckb"><?php echo __('None');?></a>
<a id="selectToggle" href="#ckb"><?php echo __('Toggle');?></a>
} ?>
</td>
</tr>
</tfoot>
</table>
<?php
if($res && $num): //Show options..
echo '<div> '.__('Page').':'.$pageNav->getPageLinks().' </div>';
<div style="display:none;" class="dialog" id="confirm-action">
<h3><?php echo __('Please Confirm');?></h3>
<a class="close" href=""><i class="icon-remove-circle"></i></a>
<hr/>
<p class="confirm-action" style="display:none;" id="enable-confirm">
<?php echo sprintf(__('Are you sure you want to <b>enable</b> %s?'),
_N('selected filter', 'selected filters', 2));?>
</p>
<p class="confirm-action" style="display:none;" id="disable-confirm">
<?php echo sprintf(__('Are you sure you want to <b>disable</b> %s?'),
_N('selected filter', 'selected filters', 2));?>
</p>
<p class="confirm-action" style="display:none;" id="delete-confirm">
<font color="red"><strong><?php echo sprintf(__('Are you sure you want to DELETE %s?'),
_N('selected filter', 'selected filters', 2));?></strong></font>
<br><br><?php echo __('Deleted data CANNOT be recovered, including any associated rules.');?>
<div><?php echo __('Please confirm to continue.');?></div>
<hr style="margin-top:1em"/>
<p class="full-width">
<span class="buttons pull-left">
<input type="button" value="<?php echo __('No, Cancel');?>" class="close">
<span class="buttons pull-right">
<input type="button" value="<?php echo __('Yes, Do it!');?>" class="confirm">
</span>
</p>
<div class="clear"></div>
</div>