$a->page['title'] = $a->profile['name'] . " @ " . $a->config['sitename'];
-// if (!$profiledata)
-// $_SESSION['theme'] = $a->profile['theme'];
+ if (!$profiledata && !get_pconfig(local_user(),'system','always_my_theme'))
+ $_SESSION['theme'] = $a->profile['theme'];
$_SESSION['mobile-theme'] = $a->profile['mobile-theme'];
$r = q("SELECT `profile-id` FROM `contact` WHERE `id` = %d LIMIT 1",
intval($visitor['cid'])
);
- if(count($r))
+ if (dbm::is_result($r))
$profile = $r[0]['profile-id'];
break;
}
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",
+ if (!dbm::is_result($r)) {
+ $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)
);
}
$r = q("SELECT * FROM `contact` WHERE NOT `pending` AND `uid` = %d AND `nurl` = '%s'",
local_user(), $profile_url);
- if (count($r))
+ if (dbm::is_result($r))
$connect = false;
}
'entries' => array(),
);
- if(count($r)) {
+ if (dbm::is_result($r)) {
foreach($r as $rr) {
$profile['menu']['entries'][] = array(
);
}
- // check if profile is a forum
- if((intval($profile['page-flags']) == PAGE_COMMUNITY)
- || (intval($profile['page-flags']) == PAGE_PRVGROUP)
- || (isset($profile['forum']) && intval($profile['forum']))
- || (isset($profile['prv']) && intval($profile['prv']))
- || (isset($profile['community']) && intval($profile['community'])))
- $account_type = t('Forum');
- else
- $account_type = "";
+ // Fetch the account type
+ $account_type = account_type($profile);
if((x($profile,'address') == 1)
|| (x($profile,'location') == 1)
$about = ((x($profile,'about') == 1) ? t('About:') : False);
+ $xmpp = ((x($profile,'xmpp') == 1) ? t('XMPP:') : False);
+
if(($profile['hidewall'] || $block) && (! local_user()) && (! remote_user())) {
$location = $pdesc = $gender = $marital = $homepage = $about = False;
}
if(is_array($a->profile) AND !$a->profile['hide-friends']) {
$r = q("SELECT `gcontact`.`updated` FROM `contact` INNER JOIN `gcontact` WHERE `gcontact`.`nurl` = `contact`.`nurl` AND `self` AND `uid` = %d LIMIT 1",
intval($a->profile['uid']));
- if(count($r))
+ if (dbm::is_result($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),
dbesc(NETWORK_DIASPORA),
dbesc(NETWORK_OSTATUS)
);
- if(count($r))
+ if (dbm::is_result($r))
$contacts = intval($r[0]['total']);
}
}
$tpl = get_markup_template('profile_vcard.tpl');
$o .= replace_macros($tpl, array(
'$profile' => $p,
+ '$xmpp' => $xmpp,
'$connect' => $connect,
'$remoteconnect' => $remoteconnect,
'$subscribe_feed' => $subscribe_feed,
dbesc(datetime_convert('UTC','UTC','now'))
);
- if($r && count($r)) {
+ if (dbm::is_result($r)) {
$total = 0;
$now = strtotime('now');
$cids = array();
dbesc(datetime_convert('UTC','UTC','now - 1 days'))
);
- if($r && count($r)) {
+ if (dbm::is_result($r)) {
$now = strtotime('now');
$istoday = false;
foreach($r as $rr) {
return replace_macros($tpl, array(
'$title' => t('Profile'),
+ '$basic' => t('Basic'),
+ '$advanced' => t('Advanced'),
'$profile' => $profile
));
}
),
);
- if ($is_owner){
- if ($a->theme_events_in_profile)
+ // the calendar link for the full featured events calendar
+ if ($is_owner && $a->theme_events_in_profile) {
$tabs[] = array(
'label' => t('Events'),
'url' => $a->get_baseurl() . '/events',
'id' => 'events-tab',
'accesskey' => 'e',
);
+ // if the user is not the owner of the calendar we only show a calendar
+ // with the public events of the calendar owner
+ } elseif (! $is_owner) {
+ $tabs[] = array(
+ 'label' => t('Events'),
+ 'url' => $a->get_baseurl() . '/cal/' . $nickname,
+ 'sel' =>((!isset($tab)&&$a->argv[0]=='cal')?'active':''),
+ 'title' => t('Events and Calendar'),
+ 'id' => 'events-tab',
+ 'accesskey' => 'e',
+ );
+ }
+
+ if ($is_owner){
$tabs[] = array(
'label' => t('Personal Notes'),
'url' => $a->get_baseurl() . '/notes',
$result = Cache::get("gprobe:".$urlparts["host"]);
if (!is_null($result)) {
- $result = unserialize($result);
if (in_array($result["network"], array(NETWORK_FEED, NETWORK_PHANTOM))) {
logger("DDoS attempt detected for ".$urlparts["host"]." by ".$_SERVER["REMOTE_ADDR"].". server data: ".print_r($_SERVER, true), LOGGER_DEBUG);
return;
}
}
- proc_run('php','include/gprobe.php',bin2hex($tmp_str));
+ proc_run(PRIORITY_LOW, 'include/gprobe.php',bin2hex($tmp_str));
$arr = array('zrl' => $tmp_str, 'url' => $a->cmd);
call_hooks('zrl_init',$arr);
}