diff options
-rw-r--r-- | apps/calendar/appinfo/app.php | 2 | ||||
-rw-r--r-- | apps/calendar/lib/search.php | 26 |
2 files changed, 28 insertions, 0 deletions
diff --git a/apps/calendar/appinfo/app.php b/apps/calendar/appinfo/app.php index 2dc01eab0f6..5675e624dda 100644 --- a/apps/calendar/appinfo/app.php +++ b/apps/calendar/appinfo/app.php @@ -21,3 +21,5 @@ OC_App::addNavigationEntry( array( 'name' => $l->t('Calendar'))); OC_App::registerPersonal('calendar', 'settings'); + +require_once('apps/calendar/lib/search.php');
\ No newline at end of file diff --git a/apps/calendar/lib/search.php b/apps/calendar/lib/search.php new file mode 100644 index 00000000000..41faf49a519 --- /dev/null +++ b/apps/calendar/lib/search.php @@ -0,0 +1,26 @@ +<?php +class OC_Search_Provider_Calendar extends OC_Search_Provider{ + function search($query){ + $calendars = OC_Calendar_Calendar::allCalendars(OC_User::getUser(), 1); + if(count($calendars)==0 || !OC_App::isEnabled('calendar')){ + //return false; + } + $results=array(); + $searchquery=array(); + if(substr_count($query, ' ') > 0){ + $searchquery = explode(' ', $query); + }else{ + $searchquery[] = $query; + } + foreach($calendars as $calendar){ + $objects = OC_Calendar_Object::all($calendar['id']); + foreach($objects as $object){ + if(substr_count(strtolower($object['summary']), strtolower($query)) > 0){//$name,$text,$link,$type + $results[]=new OC_Search_Result($object['summary'],'','#','Cal.'); + } + } + } + return $results; + } +} +new OC_Search_Provider_Calendar();
\ No newline at end of file |