Что она умеет ?? Она умеет автоматически очищать логи Администраторов и Модераторов. Скажите зачем это надо ??? Ну ведь не все админы помнят о этих логах и о том, что их надо периодически очищать, потому как эти записи занимают некоторое место на хостинге, а зачем нам хранить записи, допустим, за прошлый месяц ??.
Если у вас есть другие логи, которые необходимо автоматически очищать - смотрим под спойлер, смотрим перед установкой основной модификации !!!
Итак, кроме указанных 2-х логов мы хотим добавить еще какие то. Опишу принцип добавления для одного лога, остальные - добавлять по примеру и обязательно до установки основного мода (до запуска скрипта-инсталлятора, правки от мода выполните, файлы закиньте на сервер, НО СКРИПТ НЕ ЗАПУСКАТЬ !!!!). Сразу же разувайте глаза и ловите логику, обьяснять в комментах не буду по 10 раз !!! Вообщем добавлять будем лог Ошибок, стандартный лог на наших форумах. Для начала найдем этот лог в includes/costants.php и узнаем его тип. В указанном файле видим строку
То, что нужно. Запоминаем то, что тип у этого лога =2. Открываем /includes/hooks/hook_auto_prune_logs.php и находим
Добавляем после найденного
Далее открываем наш скрипт-инсталлятор install_auto_prune_logs.php и находим
Вставляем после найденного
Открываем includes/acp/acp_board.php и находим
Добавляем после найденного
Открываем language/ru/mods/info_acp_auto_prune_logs.php и находим
И вставляем после наденного
Все, теперь можно запускать скрипт-инсталлятор для завершения установки.
Код: Выделить всё
define('LOG_CRITICAL', 2);
Код: Выделить всё
if (!empty($config['prune_mod_log_day']))
{
$sql = 'DELETE FROM ' . LOG_TABLE . '
WHERE log_type = 1
AND log_time < ' . ($now - (int) $config['prune_mod_log_day'] * 86400);
$db->sql_query($sql);
}
Код: Выделить всё
if (!empty($config['prune_critical_log_day']))
{
$sql = 'DELETE FROM ' . LOG_TABLE . '
WHERE log_type = 2
AND log_time < ' . ($now - (int) $config['prune_critical_log_day'] * 86400);
$db->sql_query($sql);
}
Код: Выделить всё
array('prune_mod_log_day', 0),
Код: Выделить всё
array('prune_critical_log_day', 0),
Код: Выделить всё
'prune_mod_log_day' => array('lang' => 'AUTO_PRUNE_MOD_LOG', 'validate' => 'int', 'type' => 'text:3:4', 'explain' => true, 'append' => ' ' . $user->lang['DAYS']),
Код: Выделить всё
'prune_critical_log_day' => array('lang' => 'AUTO_PRUNE_CRITICAL_LOG', 'validate' => 'int', 'type' => 'text:3:4', 'explain' => true, 'append' => ' ' . $user->lang['DAYS']),
Код: Выделить всё
'AUTO_PRUNE_MOD_LOG' => 'Максимальный срок хранения лога Модераторов',
'AUTO_PRUNE_MOD_LOG_EXPLAIN' => 'По истечению указанного срока все записи из лога Модераторов будут удалены',
Код: Выделить всё
'AUTO_PRUNE_CRITICAL_LOG' => 'Максимальный срок хранения лога Ошибок',
'AUTO_PRUNE_CRITICAL_LOG_EXPLAIN' => 'По истечению указанного срока все записи из лога Ошибок будут удалены',
Наверняка большая часть из вас не сможет выполнить правку с нахождением
Код: Выделить всё
case 'settings':
$display_vars = array(
тут будет много кода
)
);
break;
Код: Выделить всё
'warnings_expire_days' => array('lang' => 'WARNINGS_EXPIRE', 'validate' => 'int', 'type' => 'text:3:4', 'explain' => true, 'append' => ' ' . $user->lang['DAYS']),
Код: Выделить всё
case 'settings':
$display_vars = array(
'title' => 'ACP_BOARD_SETTINGS',
'vars' => array(
'legend1' => 'ACP_BOARD_SETTINGS',
тут код
'legend2' => 'WARNINGS',
тут код
'legend3' => 'ACP_SUBMIT_CHANGES',
)
);
break;
Код: Выделить всё
case 'settings':
$display_vars = array(
'title' => 'ACP_BOARD_SETTINGS',
'vars' => array(
'legend1' => 'ACP_BOARD_SETTINGS',
тут код
'legend2' => 'WARNINGS',
тут код
: Auto Prune Logs --------------------------------------------------------
//-- add
'legend3' => 'ACP_CAT_MAINTENANCE',
'prune_admin_log_day' => array('lang' => 'AUTO_PRUNE_ADMIN_LOG', 'validate' => 'int', 'type' => 'text:3:4', 'explain' => true, 'append' => ' ' . $user->lang['DAYS']),
'prune_mod_log_day' => array('lang' => 'AUTO_PRUNE_MOD_LOG', 'validate' => 'int', 'type' => 'text:3:4', 'explain' => true, 'append' => ' ' . $user->lang['DAYS']),
'prune_log_day' => array('lang' => 'AUTO_PRUNE_LOG_DAYS', 'validate' => 'int', 'type' => 'text:3:4', 'explain' => false, 'append' => ' ' . $user->lang['DAYS']),
//-- end : Auto Prune Logs --------------------------------------------------------
'legend4' => 'ACP_SUBMIT_CHANGES',
)
);
break;
Не забываем запускать скрипт инсталлятор после правок, настройки мода доступны в админке на вкладке Общие - Настройки форума, успехов