]> git.mxchange.org Git - friendica.git/commitdiff
supressing warning when importing items. Speeding up community. Changed query for...
authorMichael Vogel <icarus@dabo.de>
Wed, 20 Feb 2013 20:47:36 +0000 (21:47 +0100)
committerMichael Vogel <icarus@dabo.de>
Wed, 20 Feb 2013 20:47:36 +0000 (21:47 +0100)
include/items.php
mod/community.php
mod/search.php

index 46eafdc25b31be1d336c27da679937474d45308b..b7be27932f6a1c215b136356bdf8977b63cdec66 100755 (executable)
@@ -835,14 +835,16 @@ function get_atom_elements($feed,$item) {
        // Search for ostatus conversation url
        $links = $item->feed->data["child"][SIMPLEPIE_NAMESPACE_ATOM_10]["feed"][0]["child"][SIMPLEPIE_NAMESPACE_ATOM_10]["entry"][0]["child"]["http://www.w3.org/2005/Atom"]["link"];
 
-       foreach ($links as $link) {
-               $conversation = array_shift($link["attribs"]);
+       if (is_array($links)) {
+               foreach ($links as $link) {
+                       $conversation = array_shift($link["attribs"]);
 
-               if ($conversation["rel"] == "ostatus:conversation") {
-                       $res["ostatus_conversation"] = $conversation["href"];
-                       logger('get_atom_elements: found conversation url '.$res["ostatus_conversation"]);
-               }
-       };
+                       if ($conversation["rel"] == "ostatus:conversation") {
+                               $res["ostatus_conversation"] = $conversation["href"];
+                               logger('get_atom_elements: found conversation url '.$res["ostatus_conversation"]);
+                       }
+               };
+       }
 
        $arr = array('feed' => $feed, 'item' => $item, 'result' => $res);
 
index e267447e41ba79b4094d26a24cbb6412fb9c53ba..27a9e219416abc0264b23f21f845c32bf5915156 100644 (file)
@@ -70,7 +70,7 @@ function community_content(&$a, $update = 0) {
                `contact`.`network`, `contact`.`thumb`, `contact`.`self`, `contact`.`writable`, 
                `contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid`,
                `user`.`nickname`, `user`.`hidewall`
-               FROM `item` LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
+               FROM `item` FORCE INDEX (`received`) LEFT JOIN `contact` ON `contact`.`id` = `item`.`contact-id`
                LEFT JOIN `user` ON `user`.`uid` = `item`.`uid`
                WHERE `item`.`visible` = 1 AND `item`.`deleted` = 0 and `item`.`moderated` = 0
                AND `item`.`allow_cid` = ''  AND `item`.`allow_gid` = ''
index 93feebdd9a0976d175ecc2a1a6a48ab01f23e9de..f7d235d4581dec743f4986d4fd1c35ecdd9b230c 100644 (file)
@@ -140,9 +140,13 @@ function search_content(&$a) {
        }*/
 
        if($tag) {
-               $sql_extra = sprintf(" AND `term`.`term` = '%s' AND `term`.`otype` = %d AND `term`.`type` = %d",
+               //$sql_extra = sprintf(" AND `term`.`term` = '%s' AND `term`.`otype` = %d AND `term`.`type` = %d",
+               //                      dbesc(protect_sprintf($search)), intval(TERM_OBJ_POST), intval(TERM_HASHTAG));
+               //$sql_table = "`term` LEFT JOIN `item` ON `item`.`id` = `term`.`oid` AND `item`.`uid` = `term`.`uid` ";
+
+               $sql_extra = sprintf(" AND EXISTS (SELECT * FROM `term` WHERE `item`.`id` = `term`.`oid` AND `item`.`uid` = `term`.`uid` AND `term`.`term` = '%s' AND `term`.`otype` = %d AND `term`.`type` = %d) GROUP BY `item`.`uri` ",
                                        dbesc(protect_sprintf($search)), intval(TERM_OBJ_POST), intval(TERM_HASHTAG));
-               $sql_table = "`term` LEFT JOIN `item` ON `item`.`id` = `term`.`oid` AND `item`.`uid` = `term`.`uid` ";
+               $sql_table = "`item` FORCE INDEX (`uri`) ";
        } else {
                if (get_config('system','use_fulltext_engine')) {
                        $sql_extra = sprintf(" AND MATCH (`item`.`body`, `item`.`title`) AGAINST ('%s' in boolean mode) ", dbesc(protect_sprintf($search)));
@@ -178,7 +182,7 @@ function search_content(&$a) {
                }
        }
 
-       $r = q("SELECT distinct(`item`.`uri`), `item`.*, `item`.`id` AS `item_id`, 
+       $r = q("SELECT `item`.`uri`, `item`.*, `item`.`id` AS `item_id`, 
                `contact`.`name`, `contact`.`photo`, `contact`.`url`, `contact`.`alias`, `contact`.`rel`,
                `contact`.`network`, `contact`.`thumb`, `contact`.`self`, `contact`.`writable`, 
                `contact`.`id` AS `cid`, `contact`.`uid` AS `contact-uid`,