Fixed searching issues on event log page

This commit is contained in:
Matthew Barbour 2019-10-15 13:46:08 -05:00 committed by Shish
parent ed8caa86bf
commit c17c84f15f
2 changed files with 11 additions and 11 deletions

View File

@ -57,21 +57,21 @@ class LogDatabase extends Extension
$args["time_end"] = $_GET["time-end"];
}
if (!empty($_GET["module"])) {
$wheres[] = "section = :module";
$wheres[] = $database->scoreql_to_sql("SCORE_STRNORM(section) = SCORE_STRNORM(:module)");
$args["module"] = $_GET["module"];
}
if (!empty($_GET["user"])) {
if ($database->get_driver_name() == DatabaseDriver::PGSQL) {
if (preg_match("#\d+\.\d+\.\d+\.\d+(/\d+)?#", $_GET["user"])) {
$wheres[] = "(username = :user1 OR text(address) = :user2)";
$wheres[] = $database->scoreql_to_sql("(SCORE_STRNORM(username) = SCORE_STRNORM(:user1) OR SCORE_STRNORM(text(address)) = SCORE_STRNORM(:user2))");
$args["user1"] = $_GET["user"];
$args["user2"] = $_GET["user"] . "/32";
} else {
$wheres[] = "lower(username) = lower(:user)";
$wheres[] = $database->scoreql_to_sql("SCORE_STRNORM(username) = SCORE_STRNORM(:user)");
$args["user"] = $_GET["user"];
}
} else {
$wheres[] = "(username = :user1 OR address = :user2)";
$wheres[] = $database->scoreql_to_sql("(SCORE_STRNORM(username) = SCORE_STRNORM(:user1) OR SCORE_STRNORM(address) = SCORE_STRNORM(:user2))");
$args["user1"] = $_GET["user"];
$args["user2"] = $_GET["user"];
}

View File

@ -31,7 +31,7 @@ class LogDatabaseTheme extends Themelet
<table class='zebra'>
<thead>
<tr><th>Time</th><th>Module</th><th>User</th><th colspan='3'>Message</th></tr>
<form action='".make_link("log/view")."' method='GET'>
".make_form("log/view", "GET")."
<tr class='sizedinputs'>
<td><input type='date' name='time-start' value='".$this->heie("time-start")."'>
<br><input type='date' name='time-end' value='".$this->heie("time-end")."'></td>
@ -40,11 +40,11 @@ class LogDatabaseTheme extends Themelet
<td><input type='text' name='message' value='".$this->heie("message")."'></td>
<td>
<select name='priority'>
<option value='".SCORE_LOG_DEBUG."'>Debug</option>
<option value='".SCORE_LOG_INFO."' selected>Info</option>
<option value='".SCORE_LOG_WARNING."'>Warning</option>
<option value='".SCORE_LOG_ERROR."'>Error</option>
<option value='".SCORE_LOG_CRITICAL."'>Critical</option>
<option value='".SCORE_LOG_DEBUG."' ".($this->heie("priority")==SCORE_LOG_DEBUG ? "selected" : "").">Debug</option>
<option value='".SCORE_LOG_INFO."' ".($this->heie("priority")==SCORE_LOG_INFO ? "selected" : "").">Info</option>
<option value='".SCORE_LOG_WARNING."' ".($this->heie("priority")==SCORE_LOG_WARNING ? "selected" : "").">Warning</option>
<option value='".SCORE_LOG_ERROR."' ".($this->heie("priority")==SCORE_LOG_ERROR ? "selected" : "").">Error</option>
<option value='".SCORE_LOG_CRITICAL."' ".($this->heie("priority")==SCORE_LOG_CRITICAL ? "selected" : "").">Critical</option>
</select>
</td>
<td><input type='submit' value='Search'></td>
@ -53,7 +53,7 @@ class LogDatabaseTheme extends Themelet
</thead>
<tbody>\n";
reset($events); // rewind to first element in array.
foreach ($events as $event) {
$c = $this->pri_to_col($event['priority']);
$table .= "<tr style='color: $c'>";