From 8b517a6a7cde5bd99aac220e2069a4f3e32d8b7f Mon Sep 17 00:00:00 2001 From: shish <shish@7f39781d-f577-437e-ae19-be835c7a54ca> Date: Thu, 7 Feb 2008 20:28:07 +0000 Subject: [PATCH] search for images with given ratings git-svn-id: file:///home/shish/svn/shimmie2/trunk@717 7f39781d-f577-437e-ae19-be835c7a54ca --- contrib/rating/main.php | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/contrib/rating/main.php b/contrib/rating/main.php index 2b9048e4..6eb4ed39 100644 --- a/contrib/rating/main.php +++ b/contrib/rating/main.php @@ -71,6 +71,19 @@ class Ratings extends Extension { if(is_a($event, 'ParseLinkTemplateEvent')) { $event->replace('$rating', $this->theme->rating_to_name($event->image->rating)); } + + if(is_a($event, 'SearchTermParseEvent')) { + $matches = array(); + if(preg_match("/rating=([sqe]+)/", $event->term, $matches)) { + $sqes = $matches[1]; + $arr = array(); + for($i=0; $i<strlen($sqes); $i++) { + $arr[] = "'" . $sqes[$i] . "'"; + } + $set = join(', ', $arr); + $event->set_querylet(new Querylet("AND (rating IN ($set))")); + } + } } private function install() {