00d44256b4
Rebrand all 17 sub-extensions from mokowaas to mokosuite naming, including component, plugins, modules, task plugins, and webservices. Updates package manifest, workflows, docs, wiki, and issue templates. Adds new plg_system_mokosuite_license extension.
56 lines
1.6 KiB
PHP
56 lines
1.6 KiB
PHP
<?php
|
|
namespace Moko\Component\MokoSuite\Administrator\View\Waflog;
|
|
|
|
defined('_JEXEC') or die;
|
|
|
|
use Joomla\CMS\Factory;
|
|
use Joomla\CMS\MVC\View\HtmlView as BaseHtmlView;
|
|
use Joomla\CMS\Toolbar\ToolbarHelper;
|
|
|
|
class HtmlView extends BaseHtmlView
|
|
{
|
|
protected $logs = [];
|
|
protected $ruleCounts = [];
|
|
protected $topIps = [];
|
|
protected $ruleNames = [];
|
|
protected $total = 0;
|
|
protected $filters = [];
|
|
|
|
public function display($tpl = null)
|
|
{
|
|
$model = new \Moko\Component\MokoSuite\Administrator\Model\WaflogModel();
|
|
$input = Factory::getApplication()->getInput();
|
|
|
|
$this->filters = [
|
|
'rule' => $input->getString('filter_rule', ''),
|
|
'ip' => $input->getString('filter_ip', ''),
|
|
'search' => $input->getString('filter_search', ''),
|
|
'date_from' => $input->getString('filter_date_from', ''),
|
|
'date_to' => $input->getString('filter_date_to', ''),
|
|
];
|
|
|
|
$page = max(1, $input->getInt('page', 1));
|
|
$limit = 50;
|
|
$offset = ($page - 1) * $limit;
|
|
|
|
$this->logs = $model->getLogs($this->filters, $limit, $offset);
|
|
$this->total = $model->getTotal($this->filters);
|
|
$this->ruleCounts = $model->getRuleCounts();
|
|
$this->topIps = $model->getTopIps(10);
|
|
$this->ruleNames = $model->getRuleNames();
|
|
|
|
$this->addToolbar();
|
|
|
|
$wa = Factory::getApplication()->getDocument()->getWebAssetManager();
|
|
$wa->registerAndUseStyle('com_mokosuite.dashboard', 'com_mokosuite/dashboard.css');
|
|
|
|
parent::display($tpl);
|
|
}
|
|
|
|
protected function addToolbar(): void
|
|
{
|
|
ToolbarHelper::title('WAF Log Viewer', 'shield-alt');
|
|
ToolbarHelper::back('JTOOLBAR_BACK', 'index.php?option=com_mokosuite');
|
|
}
|
|
}
|