]> git.mxchange.org Git - friendica.git/blobdiff - include/identity.php
Bugfix: We should only search in the current database for MyISAM tables
[friendica.git] / include / identity.php
index b3dbea8fc6ab860974fdf06f58e13919d04ac31a..288f93aaf97e0aa54875a9b73977a89e063d9e2f 100644 (file)
@@ -149,17 +149,23 @@ function get_profiledata_by_nick($nickname, $uid = 0, $profile = 0) {
 
        if($profile) {
                $profile_int = intval($profile);
-               $r = q("SELECT `profile`.`uid` AS `profile_uid`, `profile`.* , `contact`.`avatar-date` AS picdate, `contact`.`addr`, `user`.* FROM `profile`
-                               INNER JOIN `contact` on `contact`.`uid` = `profile`.`uid` INNER JOIN `user` ON `profile`.`uid` = `user`.`uid`
-                               WHERE `user`.`nickname` = '%s' AND `profile`.`id` = %d AND `contact`.`self` = 1 LIMIT 1",
+               $r = q("SELECT `contact`.`id` AS `contact_id`, `profile`.`uid` AS `profile_uid`, `profile`.*,
+                               `contact`.`avatar-date` AS picdate, `contact`.`addr`, `user`.*
+                       FROM `profile`
+                       INNER JOIN `contact` on `contact`.`uid` = `profile`.`uid` AND `contact`.`self`
+                       INNER JOIN `user` ON `profile`.`uid` = `user`.`uid`
+                       WHERE `user`.`nickname` = '%s' AND `profile`.`id` = %d LIMIT 1",
                                dbesc($nickname),
                                intval($profile_int)
                );
        }
        if((!$r) && (!count($r))) {
-               $r = q("SELECT `profile`.`uid` AS `profile_uid`, `profile`.* , `contact`.`avatar-date` AS picdate, `contact`.`addr`, `user`.* FROM `profile`
-                               INNER JOIN `contact` ON `contact`.`uid` = `profile`.`uid` INNER JOIN `user` ON `profile`.`uid` = `user`.`uid`
-                               WHERE `user`.`nickname` = '%s' AND `profile`.`is-default` = 1 AND `contact`.`self` = 1 LIMIT 1",
+               $r = q("SELECT `contact`.`id` AS `contact_id`, `profile`.`uid` AS `profile_uid`, `profile`.*,
+                               `contact`.`avatar-date` AS picdate, `contact`.`addr`, `user`.*
+                       FROM `profile`
+                       INNER JOIN `contact` ON `contact`.`uid` = `profile`.`uid` AND `contact`.`self`
+                       INNER JOIN `user` ON `profile`.`uid` = `user`.`uid`
+                       WHERE `user`.`nickname` = '%s' AND `profile`.`is-default` LIMIT 1",
                                dbesc($nickname)
                );
        }
@@ -365,7 +371,7 @@ function profile_sidebar($profile, $block = 0) {
                        if(count($r))
                                $updated =  date("c", strtotime($r[0]['updated']));
 
-                       $r = q("SELECT COUNT(*) AS `total` FROM `contact` WHERE `uid` = %d AND `self` = 0 AND `blocked` = 0 AND `pending` = 0 AND `hidden` = 0 AND `archive` = 0
+                       $r = q("SELECT COUNT(*) AS `total` FROM `contact` WHERE `uid` = %d AND NOT `self` AND NOT `blocked` AND NOT `hidden` AND NOT `archive`
                                        AND `network` IN ('%s', '%s', '%s', '')",
                                intval($profile['uid']),
                                dbesc(NETWORK_DFRN),