_logdir; if(file_exists($logfile)) @eval(' ?>'.file_get_contents($logfile).'assign('logs', $logdata); $AVE_Template->assign('content', $AVE_Template->fetch('logs/logs.tpl')); } /** * Метод, предназначенный для отображения всех записей Журнала событий 404 * */ function List404() { global $AVE_Template; $log404 = array(); $logfile = BASE_DIR . $this->_404dir; if(file_exists($logfile)) include($logfile); arsort($log404); // Передаем данные в шаблон для вывода и отображаем страницу $AVE_Template->assign('logs', $log404); $AVE_Template->assign('content', $AVE_Template->fetch('logs/404.tpl')); } /** * Метод, предназначенный для отображения всех записей Журнала событий 404 * */ function ListSql() { global $AVE_Template; $logsql = array(); $logfile = BASE_DIR . $this->_sqldir; if(file_exists($logfile)) include($logfile); arsort($logsql); // Передаем данные в шаблон для вывода и отображаем страницу $AVE_Template->assign('logs', $logsql); $AVE_Template->assign('content', $AVE_Template->fetch('logs/sql.tpl')); } /** * Метод, предназначенный для удаление записей Журнала событий * */ function logDelete() { global $AVE_Template; $logfile = BASE_DIR . $this->_logdir; if(file_exists($logfile)) unlink($logfile); // Сохраняем системное сообщение в журнал reportLog($AVE_Template->get_config_vars('LOGS_CLEAN')); header('Location:index.php?do=logs&cp=' . SESSION); exit; } /** * Метод, предназначенный для удаление записей Журнала событий 404 * */ function DeleteSql() { global $AVE_Template; $logfile = BASE_DIR . $this->_sqldir; if(file_exists($logfile)) unlink($logfile); // Сохраняем системное сообщение в журнал reportLog($AVE_Template->get_config_vars('LOGS_SQL_CLEAN')); header('Location:index.php?do=logs&action=logsql&cp=' . SESSION); exit; } /** * Метод, предназначенный для удаление записей Журнала событий 404 * */ function Delete404() { global $AVE_Template; $logfile = BASE_DIR . $this->_404dir; if(file_exists($logfile)) unlink($logfile); // Сохраняем системное сообщение в журнал reportLog($AVE_Template->get_config_vars('LOGS_404_CLEAN')); header('Location:index.php?do=logs&action=log404&cp=' . SESSION); exit; } /** * Метод, предназначенный для экспорта системных сообщений * */ function logExport() { global $AVE_Template; // Определяем тип файла (CSV), формат имени файла, разделители и т.д. $datstring = ''; $dattype = 'text/csv'; $datname = 'system_log_' . date('dmyhis', time()) . '.csv'; $separator = ';'; $enclosed = '"'; // Выполняем запрос к БД на получение списка всех системных сообщений $logdata=array(); $logfile = BASE_DIR.$this->_logdir; if(file_exists($logfile)) @eval(' ?>'.file_get_contents($logfile).'$v) $datstring .= $enclosed . $k . $enclosed . $separator; $datstring .= PHP_EOL; // Циклически обрабатываем данные и формируем CSV файл с учетом указаны выше параметров foreach($logdata as $k=>$v) { foreach ($v as $key => $val) { $val = ($key=='log_time') ? date('d-m-Y, H:i:s', $val) : $val; $datstring .= ($val == '') ? $separator : $enclosed . stripslashes($val) . $enclosed . $separator; } $datstring .= PHP_EOL; } // Определяем заголовки документа header('Content-Encoding: windows-1251'); header('Content-type: text/csv; charset=windows-1251'); header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT'); header('Content-Disposition: attachment; filename="' . $datname . '"'); header('Content-Length: ' . strlen($datstring)); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); // Выводим данные echo mb_convert_encoding($datstring, 'windows-1251', 'UTF-8'); // Сохраняем системное сообщение в журнал reportLog($AVE_Template->get_config_vars('LOGS_EXPORT')); exit; } /** * Метод, предназначенный для экспорта сообщений 404 * */ function Export404() { global $AVE_Template; // Определяем тип файла (CSV), формат имени файла, разделители и т.д. $datstring = ''; $dattype = 'text/csv'; $datname = 'system_log_' . date('dmyhis', time()) . '.csv'; $separator = ';'; $enclosed = '"'; // Выполняем запрос к БД на получение списка всех системных сообщений $log404 = array(); $logfile = BASE_DIR.$this->_404dir; if(file_exists($logfile)) include($logfile); arsort($log404); $fieldcount = count($log404[0]); foreach($log404[0] as $k=>$v) $datstring .= $enclosed . $k . $enclosed . $separator; $datstring .= PHP_EOL; // Циклически обрабатываем данные и формируем CSV файл с учетом указаны выше параметров foreach($log404 as $k=>$v) { foreach ($v as $key => $val) { $val = ($key=='log_time') ? date('d-m-Y, H:i:s', $val) : $val; $datstring .= ($val == '') ? $separator : $enclosed . stripslashes($val) . $enclosed . $separator; } $datstring .= PHP_EOL; } // Определяем заголовки документа header('Content-Encoding: windows-1251'); header('Content-type: text/csv; charset=windows-1251'); header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT'); header('Content-Disposition: attachment; filename="' . $datname . '"'); header('Content-Length: ' . strlen($datstring)); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); // Выводим данные echo mb_convert_encoding(strip_tags($datstring), 'windows-1251', 'UTF-8'); // Сохраняем системное сообщение в журнал reportLog($AVE_Template->get_config_vars('LOGS_404_EXPORT')); exit; } /** * Метод, предназначенный для экспорта сообщений 404 * */ function ExportSql() { global $AVE_Template; // Определяем тип файла (CSV), формат имени файла, разделители и т.д. $datstring = ''; $dattype = 'text/csv'; $datname = 'system_log_' . date('dmyhis', time()) . '.csv'; $separator = ';'; $enclosed = '"'; // Выполняем запрос к БД на получение списка всех системных сообщений $logsql = array(); $logfile = BASE_DIR . $this->_sqldir; if(file_exists($logfile)) include($logfile); arsort($logsql); $fieldcount = count($logsql[0]); foreach($logsql[0] as $k=>$v) $datstring .= $enclosed . $k . $enclosed . $separator; $datstring .= PHP_EOL; // Циклически обрабатываем данные и формируем CSV файл с учетом указаны выше параметров foreach($logsql as $k => $v) { foreach ($v as $key => $val) { $val = ($key == 'log_time') ? date('d-m-Y, H:i:s', $val) : $val; $val = ($key == 'log_text') ? serialize($val) : $val; $datstring .= ($val == '') ? $separator : $enclosed . stripslashes($val) . $enclosed . $separator; } $datstring .= PHP_EOL; } // Определяем заголовки документа header('Content-Encoding: windows-1251'); header('Content-type: text/csv; charset=windows-1251'); header('Expires: ' . gmdate('D, d M Y H:i:s') . ' GMT'); header('Content-Disposition: attachment; filename="' . $datname . '"'); header('Content-Length: ' . strlen($datstring)); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); // Выводим данные echo mb_convert_encoding(strip_tags($datstring), 'windows-1251', 'UTF-8'); // Сохраняем системное сообщение в журнал reportLog($AVE_Template->get_config_vars('LOGS_SQL_EXPORT')); exit; } } ?>