124 lines
4.2 KiB
PHP
124 lines
4.2 KiB
PHP
<?php
|
|
/**
|
|
* Copyright 2006-2017 Horde LLC (http://www.horde.org/)
|
|
*
|
|
* See the enclosed file LICENSE for license information (ASL). If you
|
|
* did not receive this file, see http://www.horde.org/licenses/apache.
|
|
*
|
|
* @author Oliver Kuhl <okuhl@netcologne.de>
|
|
* @category Horde
|
|
* @license http://www.horde.org/licenses/apache ASL
|
|
* @package Ingo
|
|
*/
|
|
|
|
/**
|
|
* Block to show filter information.
|
|
*
|
|
* @author Oliver Kuhl <okuhl@netcologne.de>
|
|
* @category Horde
|
|
* @license http://www.horde.org/licenses/apache ASL
|
|
* @package Ingo
|
|
*/
|
|
class Ingo_Block_Overview extends Horde_Core_Block
|
|
{
|
|
/**
|
|
*/
|
|
public function __construct($app, $params = array())
|
|
{
|
|
parent::__construct($app, $params);
|
|
|
|
$this->_name = _("Overview");
|
|
}
|
|
|
|
/**
|
|
*/
|
|
protected function _title()
|
|
{
|
|
return Horde::url($GLOBALS['registry']->getInitialPage(), true)->link() . $GLOBALS['registry']->get('name') . '</a>';
|
|
}
|
|
|
|
/**
|
|
*/
|
|
protected function _content()
|
|
{
|
|
/* Get list of filters */
|
|
$filters = $GLOBALS['injector']->getInstance('Ingo_Factory_Storage')->create()->retrieve(Ingo_Storage::ACTION_FILTERS);
|
|
$html = '<table class="ingoBlockSummary">';
|
|
|
|
foreach ($filters->getFilterList() as $filter) {
|
|
if (!empty($filter['disable'])) {
|
|
$active = _("inactive");
|
|
} else {
|
|
$active = _("active");
|
|
}
|
|
|
|
$s_categories = $GLOBALS['session']->get('ingo', 'script_categories');
|
|
|
|
switch ($filter['name']) {
|
|
case 'Vacation':
|
|
if (in_array(Ingo_Storage::ACTION_VACATION, $s_categories)) {
|
|
$html .= '<tr><td>' .
|
|
'<span class="iconImg vacationImg"></span>' .
|
|
'</td><td>' .
|
|
Ingo_Basic_Vacation::url()->link(array('title' => _("Edit"))) .
|
|
_("Vacation") . '</a> ' . $active .
|
|
'</td></tr>';
|
|
}
|
|
break;
|
|
|
|
case 'Forward':
|
|
if (in_array(Ingo_Storage::ACTION_FORWARD, $s_categories)) {
|
|
$html .= '<tr><td>' .
|
|
'<span class="iconImg forwardImg"></span>' .
|
|
'</td><td>' .
|
|
Ingo_Basic_Forward::url()->link(array('title' => _("Edit"))) .
|
|
_("Forward") . '</a> ' . $active;
|
|
$data = unserialize($GLOBALS['prefs']->getValue('forward'));
|
|
if (!empty($data['a'])) {
|
|
$html .= ':<br />' . implode('<br />', $data['a']);
|
|
}
|
|
$html .= '</td></tr>';
|
|
}
|
|
break;
|
|
|
|
case 'Whitelist':
|
|
if (in_array(Ingo_Storage::ACTION_WHITELIST, $s_categories)) {
|
|
$html .= '<tr><td>' .
|
|
'<span class="iconImg whitelistImg"></span>' .
|
|
'</td><td>' .
|
|
Ingo_Basic_Whitelist::url()->link(array('title' => _("Edit"))) .
|
|
_("Whitelist") . '</a> ' . $active .
|
|
'</td></tr>';
|
|
}
|
|
break;
|
|
|
|
case 'Blacklist':
|
|
if (in_array(Ingo_Storage::ACTION_BLACKLIST, $s_categories)) {
|
|
$html .= '<tr><td>' .
|
|
'<span class="iconImg blacklistImg"></span>' .
|
|
'</td><td>' .
|
|
Ingo_Basic_Blacklist::url()->link(array('title' => _("Edit"))) .
|
|
_("Blacklist") . '</a> ' . $active .
|
|
'</td></tr>';
|
|
}
|
|
break;
|
|
|
|
case 'Spam Filter':
|
|
if (in_array(Ingo_Storage::ACTION_SPAM, $s_categories)) {
|
|
$html .= '<tr><td>' .
|
|
'<span class="iconImg spamImg"></span>' .
|
|
'</td><td>' .
|
|
Ingo_Basic_Spam::url()->link(array('title' => _("Edit"))) .
|
|
_("Spam Filter") . '</a> ' . $active .
|
|
'</td></tr>';
|
|
}
|
|
break;
|
|
}
|
|
|
|
}
|
|
|
|
return $html . '</table>';
|
|
}
|
|
|
|
}
|