]> source.dussan.org Git - nextcloud-server.git/commitdiff
provide json interface for search
authorRobin Appelman <icewind1991@gmail.com>
Sat, 30 Jul 2011 14:42:20 +0000 (16:42 +0200)
committerRobin Appelman <icewind1991@gmail.com>
Sat, 30 Jul 2011 14:42:20 +0000 (16:42 +0200)
lib/search/result.php
search/ajax/search.php [new file with mode: 0644]

index 80a6b494c5e0c6b048f0c95fbe87686b1fcf2dcc..cd78a5cf25390e380bc1606009cfbdbf69cabe78 100644 (file)
@@ -3,10 +3,10 @@
  * a result of a search
  */
 class OC_Search_Result{
-       private $name;
-       private $text;
-       private $link;
-       private $type;
+       public $name;
+       public $text;
+       public $link;
+       public $type;
 
        /**
         * create a new search result
@@ -21,17 +21,4 @@ class OC_Search_Result{
                $this->link=$link;
                $this->type=$type;
        }
-
-       public function __get($name){
-               switch($name){
-                       case 'name':
-                               return $this->name;
-                       case 'text':
-                               return $this->text;
-                       case 'link':
-                               return $this->link;
-                       case 'type':
-                               return $this->type;
-               }
-       }
 }
diff --git a/search/ajax/search.php b/search/ajax/search.php
new file mode 100644 (file)
index 0000000..c65fbbc
--- /dev/null
@@ -0,0 +1,42 @@
+<?php
+
+/**
+* ownCloud
+*
+* @author Robin Appelman
+* @copyright 2010 Robin Appelman icewind1991@gmail.com
+*
+* This library is free software; you can redistribute it and/or
+* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+* License as published by the Free Software Foundation; either
+* version 3 of the License, or any later version.
+*
+* This library is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+*
+* You should have received a copy of the GNU Affero General Public
+* License along with this library.  If not, see <http://www.gnu.org/licenses/>.
+*
+*/
+
+
+// Init owncloud
+require_once('../../lib/base.php');
+
+// Check if we are a user
+if( !OC_User::isLoggedIn()){
+       header( "Location: ".OC_Helper::linkTo( '', 'index.php' ));
+       exit();
+}
+
+$query=(isset($_GET['query']))?$_GET['query']:'';
+if($query){
+       $result=OC_Search::search($query);
+       echo json_encode($result);
+}else{
+       echo 'false';
+}
+
+?>
\ No newline at end of file