aboutsummaryrefslogtreecommitdiffstats
path: root/mod
diff options
context:
space:
mode:
Diffstat (limited to 'mod')
-rw-r--r--mod/profile.php24
1 files changed, 15 insertions, 9 deletions
diff --git a/mod/profile.php b/mod/profile.php
index 5efb28ea7..c42291d96 100644
--- a/mod/profile.php
+++ b/mod/profile.php
@@ -10,18 +10,24 @@ function profile_load(&$a, $username, $profile = 0) {
$profile = $r[0]['profile-id'];
}
+ $r = null;
+
if($profile) {
$profile_int = intval($profile);
- $sql_which = " AND `profile`.`id` = $profile_int ";
+ $r = q("SELECT `profile`.`uid` AS `profile_uid`, `profile`.* , `user`.* FROM `profile`
+ LEFT JOIN `user` ON `profile`.`uid` = `user`.`uid`
+ WHERE `user`.`nickname` = '%s' AND `profile`.`id` = %d LIMIT 1",
+ dbesc($username),
+ intval($profile_int)
+ );
+ }
+ if(! count($r)) {
+ $r = q("SELECT `profile`.`uid` AS `profile_uid`, `profile`.* , `user`.* FROM `profile`
+ LEFT JOIN `user` ON `profile`.`uid` = `user`.`uid`
+ WHERE `user`.`nickname` = '%s' AND `profile`.`is-default` = 1 LIMIT 1",
+ dbesc($username)
+ );
}
- else
- $sql_which = " AND `profile`.`is-default` = 1 ";
-
- $r = q("SELECT `profile`.`uid` AS `profile_uid`, `profile`.* , `user`.* FROM `profile`
- LEFT JOIN `user` ON `profile`.`uid` = `user`.`uid`
- WHERE `user`.`nickname` = '%s' $sql_which LIMIT 1",
- dbesc($username)
- );
if(($r === false) || (! count($r))) {
notice( t('No profile') . EOL );