Fix formatting and PHP notices in identity

- Change flow of profile_load() function to return early if $profiledata
and !$user
- Replace remaining double quotes by single
- Add back uninitialized variables in profile_sidebar
This commit is contained in:
Hypolite Petovan 2018-01-01 15:47:20 -05:00
parent a964129085
commit 861c4c7474

View file

@ -1,8 +1,8 @@
<?php <?php
/** /**
* @file include/identity.php * @file include/identity.php
*/ */
use Friendica\App; use Friendica\App;
use Friendica\Content\Feature; use Friendica\Content\Feature;
use Friendica\Content\ForumManager; use Friendica\Content\ForumManager;
@ -50,13 +50,25 @@ function profile_load(App $a, $nickname, $profile = 0, $profiledata = array(), $
dbesc($nickname) dbesc($nickname)
); );
if (!$user && count($user) && !count($profiledata)) { if (!$user && !count($user) && !count($profiledata)) {
logger('profile error: ' . $a->query_string, LOGGER_DEBUG); logger('profile error: ' . $a->query_string, LOGGER_DEBUG);
notice(t('Requested account is not available.') . EOL); notice(t('Requested account is not available.') . EOL);
$a->error = 404; $a->error = 404;
return; return;
} }
if (!x($a->page, 'aside')) {
$a->page['aside'] = '';
}
if ($profiledata) {
$a->page['aside'] .= profile_sidebar($profiledata, true, $show_connect);
if (!DBM::is_result($user)) {
return;
}
}
$pdata = get_profiledata_by_nick($nickname, $user[0]['uid'], $profile); $pdata = get_profiledata_by_nick($nickname, $user[0]['uid'], $profile);
if (empty($pdata) && empty($profiledata)) { if (empty($pdata) && empty($profiledata)) {
@ -73,9 +85,10 @@ function profile_load(App $a, $nickname, $profile = 0, $profiledata = array(), $
"SELECT `pub_keywords` FROM `profile` WHERE `uid` = %d AND `is-default` = 1 LIMIT 1", "SELECT `pub_keywords` FROM `profile` WHERE `uid` = %d AND `is-default` = 1 LIMIT 1",
intval($pdata['profile_uid']) intval($pdata['profile_uid'])
); );
if ($x && count($x)) if ($x && count($x)) {
$pdata['pub_keywords'] = $x[0]['pub_keywords']; $pdata['pub_keywords'] = $x[0]['pub_keywords'];
} }
}
$a->profile = $pdata; $a->profile = $pdata;
$a->profile_uid = $pdata['profile_uid']; $a->profile_uid = $pdata['profile_uid'];
@ -83,7 +96,7 @@ function profile_load(App $a, $nickname, $profile = 0, $profiledata = array(), $
$a->profile['mobile-theme'] = PConfig::get($a->profile['profile_uid'], 'system', 'mobile_theme'); $a->profile['mobile-theme'] = PConfig::get($a->profile['profile_uid'], 'system', 'mobile_theme');
$a->profile['network'] = NETWORK_DFRN; $a->profile['network'] = NETWORK_DFRN;
$a->page['title'] = $a->profile['name'] . " @ " . $a->config['sitename']; $a->page['title'] = $a->profile['name'] . ' @ ' . $a->config['sitename'];
if (!$profiledata && !PConfig::get(local_user(), 'system', 'always_my_theme')) { if (!$profiledata && !PConfig::get(local_user(), 'system', 'always_my_theme')) {
$_SESSION['theme'] = $a->profile['theme']; $_SESSION['theme'] = $a->profile['theme'];
@ -97,19 +110,18 @@ function profile_load(App $a, $nickname, $profile = 0, $profiledata = array(), $
$a->set_template_engine(); // reset the template engine to the default in case the user's theme doesn't specify one $a->set_template_engine(); // reset the template engine to the default in case the user's theme doesn't specify one
$theme_info_file = "view/theme/" . current_theme() . "/theme.php"; $theme_info_file = 'view/theme/' . current_theme() . '/theme.php';
if (file_exists($theme_info_file)) { if (file_exists($theme_info_file)) {
require_once $theme_info_file; require_once $theme_info_file;
} }
if (! (x($a->page, 'aside'))) { if (!x($a->page, 'aside')) {
$a->page['aside'] = ''; $a->page['aside'] = '';
} }
if (local_user() && local_user() == $a->profile['uid'] && $profiledata) { if (local_user() && local_user() == $a->profile['uid'] && $profiledata) {
$a->page['aside'] .= replace_macros( $a->page['aside'] .= replace_macros(
get_markup_template('profile_edlink.tpl'), get_markup_template('profile_edlink.tpl'), array(
array(
'$editprofile' => t('Edit profile'), '$editprofile' => t('Edit profile'),
'$profid' => $a->profile['id'] '$profid' => $a->profile['id']
) )
@ -123,19 +135,13 @@ function profile_load(App $a, $nickname, $profile = 0, $profiledata = array(), $
* By now, the contact block isn't shown, when a different profile is given * By now, the contact block isn't shown, when a different profile is given
* But: When this profile was on the same server, then we could display the contacts * But: When this profile was on the same server, then we could display the contacts
*/ */
if ($profiledata) { if (!$profiledata) {
$a->page['aside'] .= profile_sidebar($profiledata, true, $show_connect);
} else {
$a->page['aside'] .= profile_sidebar($a->profile, $block, $show_connect); $a->page['aside'] .= profile_sidebar($a->profile, $block, $show_connect);
} }
/*if (! $block)
$a->page['aside'] .= contact_block();*/
return; return;
} }
/** /**
* @brief Get all profil data of a local user * @brief Get all profil data of a local user
* *
@ -144,11 +150,12 @@ function profile_load(App $a, $nickname, $profile = 0, $profiledata = array(), $
* Passing a non-zero profile ID can also allow a preview of a selected profile * Passing a non-zero profile ID can also allow a preview of a selected profile
* by the owner * by the owner
* *
* Includes all available profile data
*
* @param string $nickname nick * @param string $nickname nick
* @param int $uid uid * @param int $uid uid
* @param int $profile ID of the profile * @param int $profile ID of the profile
* @returns array * @returns array
* Includes all available profile data
*/ */
function get_profiledata_by_nick($nickname, $uid = 0, $profile = 0) function get_profiledata_by_nick($nickname, $uid = 0, $profile = 0)
{ {
@ -198,7 +205,6 @@ function get_profiledata_by_nick($nickname, $uid = 0, $profile = 0)
return $r; return $r;
} }
/** /**
* @brief Formats a profile for display in the sidebar. * @brief Formats a profile for display in the sidebar.
* *
@ -225,28 +231,27 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
$o = ''; $o = '';
$location = false; $location = false;
$address = false; $address = false;
// $pdesc = true;
// This function can also use contact information in $profile // This function can also use contact information in $profile
$is_contact = x($profile, 'cid'); $is_contact = x($profile, 'cid');
if ((! is_array($profile)) && (! count($profile))) { if (!is_array($profile) && !count($profile)) {
return $o; return $o;
} }
$profile['picdate'] = urlencode($profile['picdate']); $profile['picdate'] = urlencode(defaults($profile, 'picdate', ''));
if (($profile['network'] != "") && ($profile['network'] != NETWORK_DFRN)) { if (($profile['network'] != '') && ($profile['network'] != NETWORK_DFRN)) {
$profile['network_name'] = format_network_name($profile['network'], $profile['url']); $profile['network_name'] = format_network_name($profile['network'], $profile['url']);
} else { } else {
$profile['network_name'] = ""; $profile['network_name'] = '';
} }
call_hooks('profile_sidebar_enter', $profile); call_hooks('profile_sidebar_enter', $profile);
// don't show connect link to yourself // don't show connect link to yourself
$connect = (($profile['uid'] != local_user()) ? t('Connect') : false); $connect = $profile['uid'] != local_user() ? t('Connect') : false;
// don't show connect link to authenticated visitors either // don't show connect link to authenticated visitors either
if (remote_user() && count($_SESSION['remote'])) { if (remote_user() && count($_SESSION['remote'])) {
@ -264,10 +269,10 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
// Is the local user already connected to that user? // Is the local user already connected to that user?
if ($connect && local_user()) { if ($connect && local_user()) {
if (isset($profile["url"])) { if (isset($profile['url'])) {
$profile_url = normalise_link($profile["url"]); $profile_url = normalise_link($profile['url']);
} else { } else {
$profile_url = normalise_link(System::baseUrl()."/profile/".$profile["nickname"]); $profile_url = normalise_link(System::baseUrl() . '/profile/' . $profile['nickname']);
} }
if (dba::exists('contact', array('pending' => false, 'uid' => local_user(), 'nurl' => $profile_url))) { if (dba::exists('contact', array('pending' => false, 'uid' => local_user(), 'nurl' => $profile_url))) {
@ -275,21 +280,24 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
} }
} }
if ($connect && ($profile['network'] != NETWORK_DFRN) && !isset($profile['remoteconnect'])) if ($connect && ($profile['network'] != NETWORK_DFRN) && !isset($profile['remoteconnect'])) {
$connect = false; $connect = false;
}
$remoteconnect = null; $remoteconnect = null;
if (isset($profile['remoteconnect'])) if (isset($profile['remoteconnect'])) {
$remoteconnect = $profile['remoteconnect']; $remoteconnect = $profile['remoteconnect'];
}
if ($connect && ($profile['network'] == NETWORK_DFRN) && !isset($remoteconnect)) if ($connect && ($profile['network'] == NETWORK_DFRN) && !isset($remoteconnect)) {
$subscribe_feed = t("Atom feed"); $subscribe_feed = t('Atom feed');
else } else {
$subscribe_feed = false; $subscribe_feed = false;
}
if (remote_user() || (get_my_url() && $profile['unkmail'] && ($profile['uid'] != local_user()))) { if (remote_user() || (get_my_url() && x($profile, 'unkmail') && ($profile['uid'] != local_user()))) {
$wallmessage = t('Message'); $wallmessage = t('Message');
$wallmessage_link = "wallmessage/".$profile["nickname"]; $wallmessage_link = 'wallmessage/' . $profile['nickname'];
if (remote_user()) { if (remote_user()) {
$r = q( $r = q(
@ -307,9 +315,9 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
); );
} }
if ($r) { if ($r) {
$remote_url = $r[0]["url"]; $remote_url = $r[0]['url'];
$message_path = preg_replace("=(.*)/profile/(.*)=ism", "$1/message/new/", $remote_url); $message_path = preg_replace('=(.*)/profile/(.*)=ism', '$1/message/new/', $remote_url);
$wallmessage_link = $message_path.base64_encode($profile["addr"]); $wallmessage_link = $message_path . base64_encode($profile['addr']);
} }
} else { } else {
$wallmessage = false; $wallmessage = false;
@ -318,7 +326,7 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
// show edit profile to yourself // show edit profile to yourself
if (!$is_contact && $profile['uid'] == local_user() && Feature::isEnabled(local_user(), 'multi_profiles')) { if (!$is_contact && $profile['uid'] == local_user() && Feature::isEnabled(local_user(), 'multi_profiles')) {
$profile['edit'] = array(System::baseUrl(). '/profiles', t('Profiles'),"", t('Manage/edit profiles')); $profile['edit'] = array(System::baseUrl() . '/profiles', t('Profiles'), '', t('Manage/edit profiles'));
$r = q( $r = q(
"SELECT * FROM `profile` WHERE `uid` = %d", "SELECT * FROM `profile` WHERE `uid` = %d",
local_user() local_user()
@ -345,7 +353,7 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
} }
} }
if (!$is_contact && $profile['uid'] == local_user() && !Feature::isEnabled(local_user(), 'multi_profiles')) { if (!$is_contact && $profile['uid'] == local_user() && !Feature::isEnabled(local_user(), 'multi_profiles')) {
$profile['edit'] = array(System::baseUrl(). '/profiles/'.$profile['id'], t('Edit profile'),"", t('Edit profile')); $profile['edit'] = array(System::baseUrl() . '/profiles/' . $profile['id'], t('Edit profile'), '', t('Edit profile'));
$profile['menu'] = array( $profile['menu'] = array(
'chg_photo' => t('Change profile photo'), 'chg_photo' => t('Change profile photo'),
'cr_new' => null, 'cr_new' => null,
@ -356,28 +364,23 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
// Fetch the account type // Fetch the account type
$account_type = Contact::getAccountType($profile); $account_type = Contact::getAccountType($profile);
if ((x($profile, 'address') == 1) if (x($profile, 'address')
|| (x($profile, 'location') == 1) || x($profile, 'location')
|| (x($profile, 'locality') == 1) || x($profile, 'locality')
|| (x($profile, 'region') == 1) || x($profile, 'region')
|| (x($profile, 'postal-code') == 1) || x($profile, 'postal-code')
|| (x($profile, 'country-name') == 1) || x($profile, 'country-name')
) { ) {
$location = t('Location:'); $location = t('Location:');
} }
$gender = ((x($profile, 'gender') == 1) ? t('Gender:') : false); $gender = x($profile, 'gender') ? t('Gender:') : false;
$marital = x($profile, 'marital') ? t('Status:') : false;
$homepage = x($profile, 'homepage') ? t('Homepage:') : false;
$about = x($profile, 'about') ? t('About:') : false;
$xmpp = x($profile, 'xmpp') ? t('XMPP:') : false;
if ((x($profile, 'hidewall') || $block) && !local_user() && !remote_user()) {
$marital = ((x($profile, 'marital') == 1) ? t('Status:') : false);
$homepage = ((x($profile, 'homepage') == 1) ? t('Homepage:') : false);
$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; $location = $pdesc = $gender = $marital = $homepage = $about = false;
} }
@ -385,7 +388,7 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
$firstname = $split_name['first']; $firstname = $split_name['first'];
$lastname = $split_name['last']; $lastname = $split_name['last'];
if ($profile['guid'] != "") { if (x($profile, 'guid')) {
$diaspora = array( $diaspora = array(
'guid' => $profile['guid'], 'guid' => $profile['guid'],
'podloc' => System::baseUrl(), 'podloc' => System::baseUrl(),
@ -402,6 +405,9 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
$diaspora = false; $diaspora = false;
} }
$contact_block = '';
$updated = '';
$contacts = 0;
if (!$block) { if (!$block) {
$contact_block = contact_block(); $contact_block = contact_block();
@ -411,7 +417,7 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
intval($a->profile['uid']) intval($a->profile['uid'])
); );
if (DBM::is_result($r)) { if (DBM::is_result($r)) {
$updated = date("c", strtotime($r[0]['updated'])); $updated = date('c', strtotime($r[0]['updated']));
} }
$r = q( $r = q(
@ -437,24 +443,22 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
$p[$k] = $v; $p[$k] = $v;
} }
if (isset($p["about"])) { if (isset($p['about'])) {
$p["about"] = bbcode($p["about"]); $p['about'] = bbcode($p['about']);
} }
if (isset($p["address"])) { if (isset($p['address'])) {
$p["address"] = bbcode($p["address"]); $p['address'] = bbcode($p['address']);
} else { } else {
$p["address"] = bbcode($p["location"]); $p['address'] = bbcode($p['location']);
} }
if (isset($p["photo"])) { if (isset($p['photo'])) {
$p["photo"] = proxy_url($p["photo"], false, PROXY_SIZE_SMALL); $p['photo'] = proxy_url($p['photo'], false, PROXY_SIZE_SMALL);
} }
$tpl = get_markup_template('profile_vcard.tpl'); $tpl = get_markup_template('profile_vcard.tpl');
$o .= replace_macros( $o .= replace_macros($tpl, array(
$tpl,
array(
'$profile' => $p, '$profile' => $p,
'$xmpp' => $xmpp, '$xmpp' => $xmpp,
'$connect' => $connect, '$connect' => $connect,
@ -465,7 +469,6 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
'$account_type' => $account_type, '$account_type' => $account_type,
'$location' => $location, '$location' => $location,
'$gender' => $gender, '$gender' => $gender,
// '$pdesc' => $pdesc,
'$marital' => $marital, '$marital' => $marital,
'$homepage' => $homepage, '$homepage' => $homepage,
'$about' => $about, '$about' => $about,
@ -474,8 +477,7 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
'$updated' => $updated, '$updated' => $updated,
'$diaspora' => $diaspora, '$diaspora' => $diaspora,
'$contact_block' => $contact_block, '$contact_block' => $contact_block,
) ));
);
$arr = array('profile' => &$profile, 'entry' => &$o); $arr = array('profile' => &$profile, 'entry' => &$o);
@ -484,7 +486,6 @@ function profile_sidebar($profile, $block = 0, $show_connect = true)
return $o; return $o;
} }
function get_birthdays() function get_birthdays()
{ {
$a = get_app(); $a = get_app();
@ -504,7 +505,7 @@ function get_birthdays()
$bd_format = t('g A l F d'); // 8 AM Friday January 18 $bd_format = t('g A l F d'); // 8 AM Friday January 18
$bd_short = t('F d'); $bd_short = t('F d');
$cachekey = "get_birthdays:".local_user(); $cachekey = 'get_birthdays:' . local_user();
$r = Cache::get($cachekey); $r = Cache::get($cachekey);
if (is_null($r)) { if (is_null($r)) {
$s = dba::p( $s = dba::p(
@ -553,7 +554,7 @@ function get_birthdays()
$sparkle = ''; $sparkle = '';
$url = $rr['url']; $url = $rr['url'];
if ($rr['network'] === NETWORK_DFRN) { if ($rr['network'] === NETWORK_DFRN) {
$sparkle = " sparkle"; $sparkle = ' sparkle';
$url = System::baseUrl() . '/redir/' . $rr['cid']; $url = System::baseUrl() . '/redir/' . $rr['cid'];
} }
@ -565,10 +566,8 @@ function get_birthdays()
} }
} }
} }
$tpl = get_markup_template("birthdays_reminder.tpl"); $tpl = get_markup_template('birthdays_reminder.tpl');
return replace_macros( return replace_macros($tpl, array(
$tpl,
array(
'$baseurl' => System::baseUrl(), '$baseurl' => System::baseUrl(),
'$classtoday' => $classtoday, '$classtoday' => $classtoday,
'$count' => $total, '$count' => $total,
@ -577,11 +576,9 @@ function get_birthdays()
'$events' => $r, '$events' => $r,
'$lbr' => '{', // raw brackets mess up if/endif macro processing '$lbr' => '{', // raw brackets mess up if/endif macro processing
'$rbr' => '}' '$rbr' => '}'
) ));
);
} }
function get_events() function get_events()
{ {
require_once 'include/bbcode.php'; require_once 'include/bbcode.php';
@ -600,7 +597,7 @@ function get_events()
*/ */
$bd_format = t('g A l F d'); // 8 AM Friday January 18 $bd_format = t('g A l F d'); // 8 AM Friday January 18
$bd_short = t('F d'); $classtoday = '';
$s = dba::p( $s = dba::p(
"SELECT `event`.* FROM `event` "SELECT `event`.* FROM `event`
@ -614,7 +611,6 @@ function get_events()
$r = array(); $r = array();
if (DBM::is_result($s)) { if (DBM::is_result($s)) {
$now = strtotime('now');
$istoday = false; $istoday = false;
while ($rr = dba::fetch($s)) { while ($rr = dba::fetch($s)) {
@ -647,7 +643,7 @@ function get_events()
$today = ((substr($strt, 0, 10) === datetime_convert('UTC', $a->timezone, 'now', 'Y-m-d')) ? true : false); $today = ((substr($strt, 0, 10) === datetime_convert('UTC', $a->timezone, 'now', 'Y-m-d')) ? true : false);
$rr['title'] = $title; $rr['title'] = $title;
$rr['description'] = $desciption; $rr['description'] = $description;
$rr['date'] = day_translate(datetime_convert('UTC', $rr['adjust'] ? $a->timezone : 'UTC', $rr['start'], $bd_format)) . (($today) ? ' ' . t('[today]') : ''); $rr['date'] = day_translate(datetime_convert('UTC', $rr['adjust'] ? $a->timezone : 'UTC', $rr['start'], $bd_format)) . (($today) ? ' ' . t('[today]') : '');
$rr['startime'] = $strt; $rr['startime'] = $strt;
$rr['today'] = $today; $rr['today'] = $today;
@ -657,18 +653,15 @@ function get_events()
dba::close($s); dba::close($s);
$classtoday = (($istoday) ? 'event-today' : ''); $classtoday = (($istoday) ? 'event-today' : '');
} }
$tpl = get_markup_template("events_reminder.tpl"); $tpl = get_markup_template('events_reminder.tpl');
return replace_macros( return replace_macros($tpl, array(
$tpl,
array(
'$baseurl' => System::baseUrl(), '$baseurl' => System::baseUrl(),
'$classtoday' => $classtoday, '$classtoday' => $classtoday,
'$count' => count($r), '$count' => count($r),
'$event_reminders' => t('Event Reminders'), '$event_reminders' => t('Event Reminders'),
'$event_title' => t('Events this week:'), '$event_title' => t('Events this week:'),
'$events' => $r, '$events' => $r,
) ));
);
} }
function advanced_profile(App $a) function advanced_profile(App $a)
@ -677,8 +670,7 @@ function advanced_profile(App $a)
$uid = $a->profile['uid']; $uid = $a->profile['uid'];
$o .= replace_macros( $o .= replace_macros(
get_markup_template('section_title.tpl'), get_markup_template('section_title.tpl'), array(
array(
'$title' => t('Profile') '$title' => t('Profile')
) )
); );
@ -698,13 +690,13 @@ function advanced_profile(App $a)
$year_bd_format = t('j F, Y'); $year_bd_format = t('j F, Y');
$short_bd_format = t('j F'); $short_bd_format = t('j F');
$val = intval($a->profile['dob']) ?
$val = ((intval($a->profile['dob'])) day_translate(datetime_convert('UTC', 'UTC', $a->profile['dob'] . ' 00:00 +00:00', $year_bd_format))
? day_translate(datetime_convert('UTC', 'UTC', $a->profile['dob'] . ' 00:00 +00:00', $year_bd_format)) : day_translate(datetime_convert('UTC', 'UTC', '2001-' . substr($a->profile['dob'], 5) . ' 00:00 +00:00', $short_bd_format));
: day_translate(datetime_convert('UTC', 'UTC', '2001-' . substr($a->profile['dob'], 5) . ' 00:00 +00:00', $short_bd_format)));
$profile['birthday'] = array(t('Birthday:'), $val); $profile['birthday'] = array(t('Birthday:'), $val);
} }
if (!empty($a->profile['dob']) if (!empty($a->profile['dob'])
&& $a->profile['dob'] > '0001-01-01' && $a->profile['dob'] > '0001-01-01'
&& $age = age($a->profile['dob'], $a->profile['timezone'], '') && $age = age($a->profile['dob'], $a->profile['timezone'], '')
@ -803,18 +795,15 @@ function advanced_profile(App $a)
} }
if ($a->profile['uid'] == local_user()) { if ($a->profile['uid'] == local_user()) {
$profile['edit'] = array(System::baseUrl(). '/profiles/'.$a->profile['id'], t('Edit profile'),"", t('Edit profile')); $profile['edit'] = array(System::baseUrl() . '/profiles/' . $a->profile['id'], t('Edit profile'), '', t('Edit profile'));
} }
return replace_macros( return replace_macros($tpl, array(
$tpl,
array(
'$title' => t('Profile'), '$title' => t('Profile'),
'$basic' => t('Basic'), '$basic' => t('Basic'),
'$advanced' => t('Advanced'), '$advanced' => t('Advanced'),
'$profile' => $profile '$profile' => $profile
) ));
);
} }
return ''; return '';
@ -822,12 +811,11 @@ function advanced_profile(App $a)
function profile_tabs($a, $is_owner = false, $nickname = null) function profile_tabs($a, $is_owner = false, $nickname = null)
{ {
//echo "<pre>"; var_dump($a->user); killme();
if (is_null($nickname)) { if (is_null($nickname)) {
$nickname = $a->user['nickname']; $nickname = $a->user['nickname'];
} }
$tab = false;
if (x($_GET, 'tab')) { if (x($_GET, 'tab')) {
$tab = notags(trim($_GET['tab'])); $tab = notags(trim($_GET['tab']));
} }
@ -838,7 +826,7 @@ function profile_tabs($a, $is_owner = false, $nickname = null)
array( array(
'label' => t('Status'), 'label' => t('Status'),
'url' => $url, 'url' => $url,
'sel' => ((!isset($tab) && $a->argv[0]=='profile') ? 'active' : ''), 'sel' => !$tab && $a->argv[0] == 'profile' ? 'active' : '',
'title' => t('Status Messages and Posts'), 'title' => t('Status Messages and Posts'),
'id' => 'status-tab', 'id' => 'status-tab',
'accesskey' => 'm', 'accesskey' => 'm',
@ -846,7 +834,7 @@ function profile_tabs($a, $is_owner = false, $nickname = null)
array( array(
'label' => t('Profile'), 'label' => t('Profile'),
'url' => $url . '/?tab=profile', 'url' => $url . '/?tab=profile',
'sel' => ((isset($tab) && $tab=='profile') ? 'active' : ''), 'sel' => $tab == 'profile' ? 'active' : '',
'title' => t('Profile Details'), 'title' => t('Profile Details'),
'id' => 'profile-tab', 'id' => 'profile-tab',
'accesskey' => 'r', 'accesskey' => 'r',
@ -854,7 +842,7 @@ function profile_tabs($a, $is_owner = false, $nickname = null)
array( array(
'label' => t('Photos'), 'label' => t('Photos'),
'url' => System::baseUrl() . '/photos/' . $nickname, 'url' => System::baseUrl() . '/photos/' . $nickname,
'sel' => ((!isset($tab) && $a->argv[0]=='photos') ? 'active' : ''), 'sel' => !$tab && $a->argv[0] == 'photos' ? 'active' : '',
'title' => t('Photo Albums'), 'title' => t('Photo Albums'),
'id' => 'photo-tab', 'id' => 'photo-tab',
'accesskey' => 'h', 'accesskey' => 'h',
@ -862,7 +850,7 @@ function profile_tabs($a, $is_owner = false, $nickname = null)
array( array(
'label' => t('Videos'), 'label' => t('Videos'),
'url' => System::baseUrl() . '/videos/' . $nickname, 'url' => System::baseUrl() . '/videos/' . $nickname,
'sel' => ((!isset($tab) && $a->argv[0]=='videos') ? 'active' : ''), 'sel' => !$tab && $a->argv[0] == 'videos' ? 'active' : '',
'title' => t('Videos'), 'title' => t('Videos'),
'id' => 'video-tab', 'id' => 'video-tab',
'accesskey' => 'v', 'accesskey' => 'v',
@ -874,7 +862,7 @@ function profile_tabs($a, $is_owner = false, $nickname = null)
$tabs[] = array( $tabs[] = array(
'label' => t('Events'), 'label' => t('Events'),
'url' => System::baseUrl() . '/events', 'url' => System::baseUrl() . '/events',
'sel' =>((!isset($tab) && $a->argv[0]=='events') ? 'active' : ''), 'sel' => !$tab && $a->argv[0] == 'events' ? 'active' : '',
'title' => t('Events and Calendar'), 'title' => t('Events and Calendar'),
'id' => 'events-tab', 'id' => 'events-tab',
'accesskey' => 'e', 'accesskey' => 'e',
@ -885,7 +873,7 @@ function profile_tabs($a, $is_owner = false, $nickname = null)
$tabs[] = array( $tabs[] = array(
'label' => t('Events'), 'label' => t('Events'),
'url' => System::baseUrl() . '/cal/' . $nickname, 'url' => System::baseUrl() . '/cal/' . $nickname,
'sel' =>((!isset($tab) && $a->argv[0]=='cal') ? 'active' : ''), 'sel' => !$tab && $a->argv[0] == 'cal' ? 'active' : '',
'title' => t('Events and Calendar'), 'title' => t('Events and Calendar'),
'id' => 'events-tab', 'id' => 'events-tab',
'accesskey' => 'e', 'accesskey' => 'e',
@ -896,7 +884,7 @@ function profile_tabs($a, $is_owner = false, $nickname = null)
$tabs[] = array( $tabs[] = array(
'label' => t('Personal Notes'), 'label' => t('Personal Notes'),
'url' => System::baseUrl() . '/notes', 'url' => System::baseUrl() . '/notes',
'sel' =>((!isset($tab) && $a->argv[0]=='notes') ? 'active' : ''), 'sel' => !$tab && $a->argv[0] == 'notes' ? 'active' : '',
'title' => t('Only You Can See This'), 'title' => t('Only You Can See This'),
'id' => 'notes-tab', 'id' => 'notes-tab',
'accesskey' => 't', 'accesskey' => 't',
@ -907,14 +895,14 @@ function profile_tabs($a, $is_owner = false, $nickname = null)
$tabs[] = array( $tabs[] = array(
'label' => t('Contacts'), 'label' => t('Contacts'),
'url' => System::baseUrl() . '/viewcontacts/' . $nickname, 'url' => System::baseUrl() . '/viewcontacts/' . $nickname,
'sel' => ((!isset($tab) && $a->argv[0]=='viewcontacts') ? 'active' : ''), 'sel' => !$tab && $a->argv[0] == 'viewcontacts' ? 'active' : '',
'title' => t('Contacts'), 'title' => t('Contacts'),
'id' => 'viewcontacts-tab', 'id' => 'viewcontacts-tab',
'accesskey' => 'k', 'accesskey' => 'k',
); );
} }
$arr = array('is_owner' => $is_owner, 'nickname' => $nickname, 'tab' => (($tab) ? $tab : false), 'tabs' => $tabs); $arr = array('is_owner' => $is_owner, 'nickname' => $nickname, 'tab' => $tab, 'tabs' => $tabs);
call_hooks('profile_tabs', $arr); call_hooks('profile_tabs', $arr);
$tpl = get_markup_template('common_tabs.tpl'); $tpl = get_markup_template('common_tabs.tpl');
@ -938,9 +926,9 @@ function zrl_init(App $a)
// The check fetches the cached value from gprobe to reduce the load for this system // The check fetches the cached value from gprobe to reduce the load for this system
$urlparts = parse_url($tmp_str); $urlparts = parse_url($tmp_str);
$result = Cache::get("gprobe:" . $urlparts["host"]); $result = Cache::get('gprobe:' . $urlparts['host']);
if ((!is_null($result)) && (in_array($result["network"], array(NETWORK_FEED, NETWORK_PHANTOM)))) { if ((!is_null($result)) && (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); logger('DDoS attempt detected for ' . $urlparts['host'] . ' by ' . $_SERVER['REMOTE_ADDR'] . '. server data: ' . print_r($_SERVER, true), LOGGER_DEBUG);
return; return;
} }