dirroot.'/'.$CFG->admin.'/report/security/lib.php'); require_once($CFG->libdir.'/adminlib.php'); require_login(); $issue = optional_param('issue', '', PARAM_FILE); // show detailed info about one issue only $issues = report_security_get_issue_list(); // test if issue valid string if (array_search($issue, $issues, true) === false) { $issue = ''; } // we may need a bit more memory and this may take a long time to process @raise_memory_limit('128M'); @set_time_limit(0); // Print the header. admin_externalpage_setup('reportsecurity'); admin_externalpage_print_header(); print_heading(get_string('reportsecurity', 'report_security')); echo '
'.get_string('timewarning', 'report_security').'
'; while(@ob_end_flush()); @flush(); $strok = ''.get_string('statusok', 'report_security').''; $strinfo = ''.get_string('statusinfo', 'report_security').''; $strwarning = ''.get_string('statuswarning', 'report_security').''; $strserious = ''.get_string('statusserious', 'report_security').''; $strcritical = ''.get_string('statuscritical', 'report_security').''; $strissue = get_string('issue', 'report_security'); $strstatus = get_string('status', 'report_security'); $strdesc = get_string('description', 'report_security'); $strconfig = get_string('configuration', 'report_security'); $statusarr = array(REPORT_SECURITY_OK => $strok, REPORT_SECURITY_INFO => $strinfo, REPORT_SECURITY_WARNING => $strwarning, REPORT_SECURITY_SERIOUS => $strserious, REPORT_SECURITY_CRITICAL => $strcritical); $url = "$CFG->wwwroot/$CFG->admin/report/security/index.php"; if ($issue and ($result = $issue(true))) { report_security_hide_timearning(); $table = new object(); $table->head = array($strissue, $strstatus, $strdesc, $strconfig); $table->size = array('30%', '10%', '50%', '10%' ); $table->align = array('left', 'left', 'left', 'left'); $table->width = '90%'; $table->data = array(); // print detail of one issue only $row = array(); $row[0] = report_security_doc_link($issue, $result->name); $row[1] = $statusarr[$result->status]; $row[2] = $result->info; $row[3] = is_null($result->link) ? ' ' : $result->link; $CFG->pagepath = "report/security/$issue"; // help link in footer $table->data[] = $row; print_table($table); print_box($result->details, 'generalbox boxwidthnormal boxaligncenter'); // TODO: add proper css print_continue($url); } else { report_security_hide_timearning(); $table = new object(); $table->head = array($strissue, $strstatus, $strdesc); $table->size = array('30%', '10%', '60%' ); $table->align = array('left', 'left', 'left'); $table->width = '90%'; $table->data = array(); foreach ($issues as $issue) { $result = $issue(false); if (!$result) { // ignore this test continue; } $row = array(); $row[0] = "$result->name"; $row[1] = $statusarr[$result->status]; $row[2] = $result->info; $table->data[] = $row; } print_table($table); } print_footer();