acl_get('a_general')) { return; } $filename = basename(__FILE__); $module['LOG']['ADMIN_LOGS'] = $filename . "$SID&mode=admin"; $module['LOG']['MOD_LOGS'] = $filename . "$SID&mode=mod"; return; } define('IN_PHPBB', 1); // Include files $phpbb_root_path = '../'; require($phpbb_root_path . 'extension.inc'); require('pagestart.' . $phpEx); // Do we have styles admin permissions? if (!$auth->acl_get('a_general')) { trigger_error($user->lang['NO_ADMIN']); } // Set some variables $forum_id = (isset($_REQUEST['f'])) ? intval($_REQUEST['f']) : 0; $start = (isset($_GET['start'])) ? intval($_GET['start']) : 0; $mode = (isset($_REQUEST['mode'])) ? $_REQUEST['mode'] : 'admin'; // Define some vars depending on which logs we're looking at $log_table_sql = ($mode == 'admin') ? LOG_ADMIN_TABLE : LOG_MOD_TABLE; $l_title = ($mode == 'admin') ? $user->lang['ADMIN_LOGS'] : $user->lang['MOD_LOGS']; $l_title_explain = ($mode == 'admin') ? $user->lang['ADMIN_LOGS_EXPLAIN'] : $user->lang['MOD_LOGS_EXPLAIN']; // Delete entries if requested and able if ((isset($_POST['delmarked']) || isset($_POST['delall'])) && $auth->acl_get('a_clearlogs')) { $where_sql = ''; if (isset($_POST['delmarked']) && isset($_POST['mark'])) { foreach ($_POST['mark'] as $marked) { $where_sql .= (($where_sql != '') ? ', ' : '') . intval($marked); } $where_sql = "WHERE log_id IN ($where_sql)"; } $sql = "DELETE FROM $table_sql $where_sql"; $db->sql_query($sql); add_log('admin', 'log_' . $mode . '_clear'); } // Sorting ... this could become a function if (isset($_POST['sort']) || $start) { if (!empty($_POST['sort_days'])) { $sort_days = intval($_POST['sort_days']); $where_sql = time() - ($sort_days * 86400); } else { $where_sql = 0; } $sort_key = (isset($_REQUEST['sort_key'])) ? $_REQUEST['sort_key'] : ''; $sort_dir = (isset($_REQUEST['sort_dir'])) ? $_REQUEST['sort_dir'] : ''; } else { $where_sql = 0; $sort_days = 0; $sort_key = 't'; $sort_dir = 'd'; } $previous_days = array(0 => $user->lang['ALL_ENTRIES'], 1 => $user->lang['1_DAY'], 7 => $user->lang['7_DAYS'], 14 => $user->lang['2_WEEKS'], 30 => $user->lang['1_MONTH'], 90 => $user->lang['3_MONTHS'], 180 => $user->lang['6_MONTHS'], 364 => $user->lang['1_YEAR']); $sort_by_text = array('u' => $user->lang['SORT_USERNAME'], 't' => $user->lang['SORT_DATE'], 'i' => $user->lang['SORT_IP'], 'o' => $user->lang['SORT_ACTION']); $sort_by = array('u' => 'l.user_id', 't' => 'l.log_time', 'i' => 'l.log_ip', 'o' => 'l.log_operation'); $sort_day_options = ''; foreach ($previous_days as $day => $text) { $selected = ($sort_days == $day) ? ' selected="selected"' : ''; $sort_day_options .= ''; } $sort_key_options = ''; foreach ($sort_by_text as $key => $text) { $selected = ($sort_key == $key) ? ' selected="selected"' : ''; $sort_key_options .= ''; } $sort_order_options = ($sort_dir == 'a') ? '' : ''; $sort_sql = $sort_by[$sort_key] . ' ' . (($sort_dir == 'd') ? 'DESC' : 'ASC'); // Output page page_header($l_title); ?>