]> git.mxchange.org Git - friendica.git/blobdiff - mod/msearch.php
Fix: Ensure that the value is set.
[friendica.git] / mod / msearch.php
index 541fd2c7e7b0d2d361b640b2f45b7b6966354271..0d7cca4ff1b9786f779cecef226b108929924ff6 100644 (file)
@@ -1,6 +1,10 @@
 <?php
 
-function msearch_post(&$a) {
+use Friendica\App;
+use Friendica\Core\System;
+use Friendica\Database\DBM;
+
+function msearch_post(App $a) {
 
        $perpage = (($_POST['n']) ? $_POST['n'] : 80);
        $page = (($_POST['p']) ? intval($_POST['p'] - 1) : 0);
@@ -10,33 +14,35 @@ function msearch_post(&$a) {
        if(! strlen($search))
                killme();
 
-       $r = q("SELECT COUNT(*) AS `total` FROM `profile` WHERE `is-default` = 1 AND `hidewall` = 0 AND MATCH `pub_keywords` AGAINST ('%s') ",
+       $r = q("SELECT COUNT(*) AS `total` FROM `profile` LEFT JOIN `user` ON `user`.`uid` = `profile`.`uid` WHERE `is-default` = 1 AND `user`.`hidewall` = 0 AND MATCH `pub_keywords` AGAINST ('%s') ",
                dbesc($search)
        );
-       if(count($r))
+
+       if (DBM::is_result($r))
                $total = $r[0]['total'];
 
-       $r = q("SELECT `pub_keywords`, `username`, `nickname`, `user`.`uid` FROM `user` LEFT JOIN `profile` ON `user`.`uid` = `profile`.`uid` WHERE `is-default` = 1 AND `hidewall` = 0 AND MATCH `pub_keywords` AGAINST ('%s') LIMIT %d , %d ",
+       $results = [];
+
+       $r = q("SELECT `pub_keywords`, `username`, `nickname`, `user`.`uid` FROM `user` LEFT JOIN `profile` ON `user`.`uid` = `profile`.`uid` WHERE `is-default` = 1 AND `user`.`hidewall` = 0 AND MATCH `pub_keywords` AGAINST ('%s') LIMIT %d , %d ",
                dbesc($search),
                intval($startrec),
                intval($perpage)
        );
 
-       $results = array();
-       if(count($r)) {
+       if (DBM::is_result($r)) {
                foreach($r as $rr)
-                       $results[] = array(
-                               'name' => $rr['name'], 
-                               'url' => $a->get_baseurl() . '/profile/' . $rr['nickname'], 
-                               'photo' => $a->get_baseurl() . '/photo/avatar/' . $rr['uid'] . 'jpg'
-                               'tags' => str_replace(array(',','  '),array(' ',' '),$rr['pub_keywords']);
-                       );
+                       $results[] = [
+                               'name' => $rr['name'],
+                               'url' => System::baseUrl() . '/profile/' . $rr['nickname'],
+                               'photo' => System::baseUrl() . '/photo/avatar/' . $rr['uid'] . '.jpg',
+                               'tags' => str_replace([',','  '],[' ',' '],$rr['pub_keywords'])
+                       ];
        }
 
-       $output = array('total' => $total, 'items_page' => $perpage, 'page' => $page + 1, 'results' => $results);
+       $output = ['total' => $total, 'items_page' => $perpage, 'page' => $page + 1, 'results' => $results];
 
        echo json_encode($output);
 
        killme();
 
-}
\ No newline at end of file
+}