]> gitweb.fluxo.info Git - lorea/elgg.git/commitdiff
Refs #965: Search now correctly using page handler to make it easier to replace.
authormarcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544>
Thu, 28 May 2009 15:23:58 +0000 (15:23 +0000)
committermarcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544>
Thu, 28 May 2009 15:23:58 +0000 (15:23 +0000)
git-svn-id: https://code.elgg.org/elgg/trunk@3308 36083f99-b078-4883-b0ff-0f9b5a30f544

engine/lib/entities.php
engine/lib/search.php [new file with mode: 0644]
search/index.php
version.php

index d0935adf29e25eb23677d852a544bd72ea4cc1dc..c8457ca39477910c329d96d90aba84a9864f2744 100644 (file)
                }\r
        }\r
        \r
-/**\r
-        * Page handler for search\r
-        *\r
-        * @param array $page Page elements from pain page handler\r
-        */\r
-       function search_page_handler($page) {\r
-               if (isset($page[0])) {\r
-                       global $CONFIG;\r
-                       set_input('tag',$page[0]);\r
-                       include_once($CONFIG->path . "search/index.php");\r
-               }\r
-       }\r
-       \r
        /**\r
         * Returns a viewable list of entities based on the registered types\r
         *\r
         * Entities init function; establishes the page handler\r
         *\r
         */\r
-       function entities_init() {\r
+       function entities_init() 
+       {\r
                register_page_handler('view','entities_page_handler');\r
-               register_page_handler('search','search_page_handler');\r
                \r
                // Allow a permission override for recursive entity deletion\r
                // TODO: Can this be done better?\r
diff --git a/engine/lib/search.php b/engine/lib/search.php
new file mode 100644 (file)
index 0000000..01ba7b9
--- /dev/null
@@ -0,0 +1,48 @@
+<?php
+       /**
+        * Elgg search helper functions.
+        * 
+        * @package Elgg
+        * @subpackage Core
+        * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+        * @author Curverider Ltd <info@elgg.com>
+        * @copyright Curverider Ltd 2008-2009
+        * @link http://elgg.org/
+        */
+
+       /**
+        * Initialise search helper functions.
+        *
+        */
+       function search_init()
+       {
+               register_page_handler('search','search_page_handler');
+       }
+       
+       /**
+        * Page handler for search
+        *
+        * @param array $page Page elements from pain page handler
+        */
+       function search_page_handler($page) 
+       {
+               global $CONFIG;
+               
+               if (isset($page[0])) {
+                       switch ($page[0]) {
+                               case 'user' :
+                               case 'users' : include_once($CONFIG->path . "search/users.php"); break;
+                               
+                               case 'group' :
+                               case 'groups' : include_once($CONFIG->path . "search/groups.php"); break;
+                               
+                               default: include_once($CONFIG->path . "search/index.php");
+                       }
+               }
+               else
+                       include_once($CONFIG->path . "search/index.php");
+       }
+
+       /** Register init system event **/
+       register_elgg_event_handler('init','system','search_init');
+?>
\ No newline at end of file
index a0deac413016f59c0b7b9d3e895cb89df2981e5a..768224c2a6a2b8416fdc431528f26152d1d0d311 100644 (file)
                                                $label = 'item:' . $object_type;\r
                                                if (!empty($object_subtype)) $label .= ':' . $object_subtype;\r
                                                global $CONFIG;\r
-                                               add_submenu_item(elgg_echo($label), $CONFIG->wwwroot . "search/?tag=". urlencode($tag) ."&subtype=" . $object_subtype . "&object=". urlencode($object_type) ."&tagtype=" . urlencode($md_type) . "&owner_guid=" . urlencode($owner_guid));\r
+                                               add_submenu_item(elgg_echo($label), $CONFIG->wwwroot . "pg/search/?tag=". urlencode($tag) ."&subtype=" . $object_subtype . "&object=". urlencode($object_type) ."&tagtype=" . urlencode($md_type) . "&owner_guid=" . urlencode($owner_guid));\r
                                        }\r
                        }\r
-                       add_submenu_item(elgg_echo('all'), $CONFIG->wwwroot . "search/?tag=". urlencode($tag) ."&owner_guid=" . urlencode($owner_guid));\r
+                       add_submenu_item(elgg_echo('all'), $CONFIG->wwwroot . "pg/search/?tag=". urlencode($tag) ."&owner_guid=" . urlencode($owner_guid));\r
                        \r
                }\r
                \r
index e78d618fa58fd5813a880eee50575cfdc474e621..c9466556b70804f1d758671477aa1bf8c4fba22c 100644 (file)
@@ -13,7 +13,7 @@
         * @link http://elgg.org/\r
         */\r
 
-          $version = 2009052701;  // YYYYMMDD   = Elgg Date
+          $version = 2009052801;  // YYYYMMDD   = Elgg Date
                                   //         XX = Interim incrementer\r
        \r
           $release = '1.5';    // Human-friendly version name\r