summaryrefslogtreecommitdiff
path: root/classes/pref/system.php
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2013-04-17 08:42:39 +0400
committerAndrew Dolgov <[email protected]>2013-04-17 08:42:39 +0400
commit2cbdc95bb00faad46df8976cf9b33e1bc188ec91 (patch)
treeb1360010f1477f41a126d911757535342cfc16dd /classes/pref/system.php
parent77be1217e5e559b6f972afc4d5506426692d50fe (diff)
add a separate tab for the logger
Diffstat (limited to 'classes/pref/system.php')
-rw-r--r--classes/pref/system.php78
1 files changed, 78 insertions, 0 deletions
diff --git a/classes/pref/system.php b/classes/pref/system.php
new file mode 100644
index 000000000..2957b7b96
--- /dev/null
+++ b/classes/pref/system.php
@@ -0,0 +1,78 @@
+<?php
+
+class Pref_System extends Handler_Protected {
+
+ function __construct($link, $args) {
+ parent::__construct($link, $args);
+ }
+
+ function before($method) {
+ if (parent::before($method)) {
+ if ($_SESSION["access_level"] < 10) {
+ print __("Your access level is insufficient to open this tab.");
+ return false;
+ }
+ return true;
+ }
+ return false;
+ }
+
+ function csrf_ignore($method) {
+ $csrf_ignored = array("index");
+
+ return array_search($method, $csrf_ignored) !== false;
+ }
+
+ function index() {
+
+ print "<div dojoType=\"dijit.layout.AccordionContainer\" region=\"center\">";
+ print "<div dojoType=\"dijit.layout.AccordionPane\" title=\"".__('Error Log')."\">";
+
+ $result = db_query($this->link, "SELECT errno, errstr, filename, lineno,
+ created_at, login FROM ttrss_error_log
+ LEFT JOIN ttrss_users ON (owner_uid = ttrss_users.id)
+ ORDER BY ttrss_error_log.id DESC
+ LIMIT 100");
+
+ print "<p><table width=\"100%\" cellspacing=\"10\" class=\"prefErrorLog\">";
+
+ print "<tr class=\"title\">
+ <td width='5%'>".__("Error")."</td>
+ <td>".__("Filename")."</td>
+ <td>".__("Message")."</td>
+ <td width='5%'>".__("User")."</td>
+ <td width='5%'>".__("Date")."</td>
+ </tr>";
+
+ while ($line = db_fetch_assoc($result)) {
+ print "<tr class=\"errrow\">";
+
+ foreach ($line as $k => $v) {
+ $line[$k] = htmlspecialchars($v);
+ }
+
+ print "<td class='errno'>" . Logger::$errornames[$line["errno"]] . " (" . $line["errno"] . ")</td>";
+ print "<td class='filename'>" . $line["filename"] . ":" . $line["lineno"] . "</td>";
+ print "<td class='errstr'>" . $line["errstr"] . "</td>";
+ print "<td class='login'>" . $line["login"] . "</td>";
+
+ print "<td class='timestamp'>" .
+ make_local_datetime($this->link,
+ $line["created_at"], false) . "</td>";
+
+ print "</tr>";
+ }
+
+ print "</table>";
+
+ print "</div>";
+
+ global $pluginhost;
+ $pluginhost->run_hooks($pluginhost::HOOK_PREFS_TAB,
+ "hook_prefs_tab", "prefSystem");
+
+ print "</div>"; #container
+ }
+
+}
+?>