File size: 2.65Kb
<?php
namespace xenMade\ACPE;
use XF\Mvc\Entity\Entity;
use XF\Mvc\Entity\Manager;
use XF\Mvc\Entity\Structure;
class Listener
{
public static function templater_template_post_render(\XF\Template\Templater $templater, &$type, &$template, array &$params)
{
if(\XF::app()->container('app.classType') == 'Admin')
{
if($template == 'PAGE_CONTAINER')
{
/** @var \xenMade\ACPE\Repository\Info $infoRepo */
$infoRepo = \XF::repository('xenMade\ACPE:Info');
/** @var \xenMade\ACPE\Repository\SoftwareVersions $versionRepo */
$versionRepo = \XF::repository('xenMade\ACPE:SoftwareVersions');
$sympleCache = \XF::app()->simpleCache();
$debugMode = $sympleCache->getValue('xenMade/ACPE', 'debug_mode');
$viewParams = [
'host' => $infoRepo->hostInfos(),
'server' => $infoRepo->serverInfos(),
'software_versions' => $versionRepo->getVersionsList(true),
'attachment_totals' => $infoRepo->generateAttachmentTotals(),
'debugMode' => $debugMode,
];
$params = array_merge($params, $viewParams);
}
}
}
public static function app_setup(\XF\App $app)
{
$sympleCache = \XF::app()->simpleCache();
$debugMode = $sympleCache->getValue('xenMade/ACPE', 'debug_mode');
\XF::$debugMode = false;
if($debugMode)
{
\XF::$debugMode = true;
@ini_set('display_errors', true);
}
}
public static function templater_macro_pre_render(\XF\Template\Templater $templater, &$type, &$template, &$name, array &$arguments, array &$globalVars)
{
if ($arguments['group']->group_id == 'acpe_settings')
{
$template = 'acpe_macros_acpe_settings';
}
if ($template == 'cron_list')
{
$template = 'acpe_cron_list';
}
}
public static function templater_template_pre_render(\XF\Template\Templater $templater, &$type, &$template, array &$params)
{
if ($template == 'cron_list')
{
$template = 'acpe_cron_list';
}
}
public static function entity_structur(\XF\Mvc\Entity\Manager $em, \XF\Mvc\Entity\Structure &$structure)
{
switch($structure->table)
{
case 'xf_option_group':
$structure->columns['display_sort'] = ['type' => Entity::UINT, 'default' => 0];
break;
}
}
}