diff --git a/contrib/rating/main.php b/contrib/rating/main.php index f4cff877..755590b3 100644 --- a/contrib/rating/main.php +++ b/contrib/rating/main.php @@ -101,20 +101,7 @@ class Ratings implements Extension { if($event instanceof SearchTermParseEvent) { $matches = array(); if(is_null($event->term) && $this->no_rating_query($event->context)) { - if($user->is_anonymous()) { - $sqes = $config->get_string("ext_rating_anon_privs"); - } - else if($user->is_admin()) { - $sqes = $config->get_string("ext_rating_admin_privs"); - } - else { - $sqes = $config->get_string("ext_rating_user_privs"); - } - $arr = array(); - for($i=0; $iadd_querylet(new Querylet("rating IN ($set)")); } if(preg_match("/^rating=([sqeu]+)$/", $event->term, $matches)) { @@ -134,6 +121,29 @@ class Ratings implements Extension { } } + public static function get_user_privs($user) { + global $config; + if($user->is_anonymous()) { + $sqes = $config->get_string("ext_rating_anon_privs"); + } + else if($user->is_admin()) { + $sqes = $config->get_string("ext_rating_admin_privs"); + } + else { + $sqes = $config->get_string("ext_rating_user_privs"); + } + return $sqes; + } + + public static function privs_to_sql($sqes) { + $arr = array(); + for($i=0; $i