} // Create a page list for a drop down menu. $pagelist = array(); for ($p = 1; $p <= $pages; $p++) { $pagelist[$p] = $p; } // Keep the current page within bounds. if ($page <= 0) { $page = 1; } if ($page > $pages) { $page = $pages; } $filter_base .= '&page=' . $page; // Retrieve event logs for the active page. $logs = event_logging_getlogs($page, $pagelength, $filter); // ---------------------------------------------------------------------- // Display header form for paging and filtering. // ---------------------------------------------------------------------- require_once './include/admin/PhorumInputForm.php'; $frm = new PhorumInputForm("", "post", $filter_mode ? "Apply filter" : "Refresh page"); $frm->hidden("module", "modsettings"); $frm->hidden("mod", "event_logging"); $frm->hidden("curpage", $page); $frm->hidden("el_action", $filter_mode ? "filter" : "logviewer"); $frm->addrow("<span style=\"float:right;margin-right:10px\">" . $frm->select_tag("pagelength", $pagelengths, $pagelength, 'onchange="this.form.submit()"') . "  \n <input type=\"submit\" name=\"prevpage\" value=\"<<\"/>\n page " . $frm->select_tag("page", $pagelist, $page, 'onchange="this.form.submit()"') . " of {$pages}\n <input type=\"submit\" name=\"nextpage\" value=\">>\"/>\n </span>Number of entries: {$logcount}"); if ($filter_mode) { $frm->hidden("filter_mode", 1); $loglevel_checkboxes = ''; foreach ($strings["LOGLEVELS"] as $l => $s) { $loglevel_checkboxes .= '<span style="white-space: nowrap">' . $frm->checkbox("show_loglevel[{$l}]", "1", "", isset($show_loglevel[$l]) ? 1 : 0, "id=\"llcb_{$l}\"") . ' <label for="llcb_' . $l . '"><img align="absmiddle" src="' . $PHORUM["http_path"] . '/mods/event_logging/images/loglevels/' . $l . '.png"/> ' . $s . '</label></span> ';
$categories = array_keys($show_category); } else { $show_categories = array(); } } $filter["categories"] = $categories; foreach (array("source", "user_id", "username", "ip") as $fld) { if (isset($_POST[$fld])) { $filter[$fld] = $_POST[$fld]; } } } // Retrieve the total number of event logs. $logcount = event_logging_countlogs($filter); // Retrieve event logs $logs = event_logging_getlogs(1, $GLOBALS["PHORUM"]["mod_event_logging"]["max_log_entries"], $filter); // ---------------------------------------------------------------------- // Display event logs. // ---------------------------------------------------------------------- // Clear out the admin interface HTML and start with a fresh slate for the logs ob_end_clean(); ob_start(); // Set the default content type and file name $content_type = "text/html"; $file_name = "event_logs.html"; if (isset($_POST["download_type"]) && $_POST["download_type"] == "text") { $content_type = "text/plain"; $file_name = "event_logs.txt"; } header("Status: 200"); // HTTP Content-Type header with the charset from the default language