diff --git a/contrib/log_db/main.php b/contrib/log_db/main.php index b1b8b5b6..6c8fb03e 100644 --- a/contrib/log_db/main.php +++ b/contrib/log_db/main.php @@ -55,9 +55,22 @@ class LogDatabase extends SimpleExtension { $args[] = $_GET["module"]; } if(!empty($_GET["user"])) { - $wheres[] = "(username = ? OR address = ?)"; - $args[] = $_GET["user"]; - $args[] = $_GET["user"]; + if($database->engine->name == "pgsql") { + if(preg_match("#\d+\.\d+\.\d+\.\d+(/\d+)?#", $_GET["user"])) { + $wheres[] = "(username = ? OR address << ?)"; + $args[] = $_GET["user"]; + $args[] = $_GET["user"]; + } + else { + $wheres[] = "lower(username) = lower(?)"; + $args[] = $_GET["user"]; + } + } + else { + $wheres[] = "(username = ? OR address = ?)"; + $args[] = $_GET["user"]; + $args[] = $_GET["user"]; + } } if(!empty($_GET["priority"])) { $wheres[] = "priority >= ?";