Remove duplicate profile_uid key in App->profile array
This commit is contained in:
parent
9803c96db4
commit
6d7f0a6fd8
10 changed files with 59 additions and 74 deletions
|
@ -61,8 +61,7 @@ abstract class BaseModule
|
|||
*/
|
||||
public static function post(array $parameters = [])
|
||||
{
|
||||
// $a = self::getApp();
|
||||
// $a->internalRedirect('module');
|
||||
// DI::baseurl()->redirect('module');
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -301,7 +301,7 @@ class Widget
|
|||
{
|
||||
$a = DI::app();
|
||||
|
||||
$uid = intval($a->profile['profile_uid']);
|
||||
$uid = intval($a->profile['uid']);
|
||||
|
||||
if (!Feature::isEnabled($uid, 'categories')) {
|
||||
return '';
|
||||
|
@ -418,7 +418,7 @@ class Widget
|
|||
{
|
||||
$a = DI::app();
|
||||
|
||||
$uid = intval($a->profile['profile_uid']);
|
||||
$uid = intval($a->profile['uid']);
|
||||
|
||||
if (!$uid || !$a->profile['url']) {
|
||||
return '';
|
||||
|
|
|
@ -126,13 +126,13 @@ class Profile
|
|||
*
|
||||
* @param App $a
|
||||
* @param string $nickname string
|
||||
* @param int $profile int
|
||||
* @param int $profile_id int
|
||||
* @param array $profiledata array
|
||||
* @param boolean $show_connect Show connect link
|
||||
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
|
||||
* @throws \ImagickException
|
||||
*/
|
||||
public static function load(App $a, $nickname, $profile = 0, array $profiledata = [], $show_connect = true)
|
||||
public static function load(App $a, $nickname, $profile_id = 0, array $profiledata = [], $show_connect = true)
|
||||
{
|
||||
$user = DBA::selectFirst('user', ['uid'], ['nickname' => $nickname, 'account_removed' => false]);
|
||||
|
||||
|
@ -155,31 +155,31 @@ class Profile
|
|||
}
|
||||
}
|
||||
|
||||
$pdata = self::getByNickname($nickname, $user['uid'], $profile);
|
||||
$profile = self::getByNickname($nickname, $user['uid'], $profile_id);
|
||||
|
||||
if (empty($pdata) && empty($profiledata)) {
|
||||
if (empty($profile) && empty($profiledata)) {
|
||||
Logger::log('profile error: ' . DI::args()->getQueryString(), Logger::DEBUG);
|
||||
return;
|
||||
}
|
||||
|
||||
if (empty($pdata)) {
|
||||
$pdata = ['uid' => 0, 'profile_uid' => 0, 'is-default' => false,'name' => $nickname];
|
||||
if (empty($profile)) {
|
||||
$profile = ['uid' => 0, 'is-default' => false,'name' => $nickname];
|
||||
}
|
||||
|
||||
// fetch user tags if this isn't the default profile
|
||||
|
||||
if (!$pdata['is-default']) {
|
||||
$condition = ['uid' => $pdata['profile_uid'], 'is-default' => true];
|
||||
$profile = DBA::selectFirst('profile', ['pub_keywords'], $condition);
|
||||
if (DBA::isResult($profile)) {
|
||||
$pdata['pub_keywords'] = $profile['pub_keywords'];
|
||||
if (!$profile['is-default']) {
|
||||
$condition = ['uid' => $profile['uid'], 'is-default' => true];
|
||||
$profile_id = DBA::selectFirst('profile', ['pub_keywords'], $condition);
|
||||
if (DBA::isResult($profile_id)) {
|
||||
$profile['pub_keywords'] = $profile_id['pub_keywords'];
|
||||
}
|
||||
}
|
||||
|
||||
$a->profile = $pdata;
|
||||
$a->profile_uid = $pdata['profile_uid'];
|
||||
$a->profile = $profile;
|
||||
$a->profile_uid = $profile['uid'];
|
||||
|
||||
$a->profile['mobile-theme'] = DI::pConfig()->get($a->profile['profile_uid'], 'system', 'mobile_theme');
|
||||
$a->profile['mobile-theme'] = DI::pConfig()->get($a->profile['uid'], 'system', 'mobile_theme');
|
||||
$a->profile['network'] = Protocol::DFRN;
|
||||
|
||||
DI::page()['title'] = $a->profile['name'] . ' @ ' . DI::config()->get('config', 'sitename');
|
||||
|
@ -255,7 +255,7 @@ class Profile
|
|||
$profile = DBA::fetchFirst(
|
||||
"SELECT `contact`.`id` AS `contact_id`, `contact`.`photo` AS `contact_photo`,
|
||||
`contact`.`thumb` AS `contact_thumb`, `contact`.`micro` AS `contact_micro`,
|
||||
`profile`.`uid` AS `profile_uid`, `profile`.*,
|
||||
`profile`.*,
|
||||
`contact`.`avatar-date` AS picdate, `contact`.`addr`, `contact`.`url`, `user`.*
|
||||
FROM `profile`
|
||||
INNER JOIN `contact` on `contact`.`uid` = `profile`.`uid` AND `contact`.`self`
|
||||
|
@ -269,7 +269,7 @@ class Profile
|
|||
$profile = DBA::fetchFirst(
|
||||
"SELECT `contact`.`id` AS `contact_id`, `contact`.`photo` as `contact_photo`,
|
||||
`contact`.`thumb` AS `contact_thumb`, `contact`.`micro` AS `contact_micro`,
|
||||
`profile`.`uid` AS `profile_uid`, `profile`.*,
|
||||
`profile`.*,
|
||||
`contact`.`avatar-date` AS picdate, `contact`.`addr`, `contact`.`url`, `user`.*
|
||||
FROM `profile`
|
||||
INNER JOIN `contact` ON `contact`.`uid` = `profile`.`uid` AND `contact`.`self`
|
||||
|
@ -350,7 +350,7 @@ class Profile
|
|||
|
||||
$profile_is_dfrn = $profile['network'] == Protocol::DFRN;
|
||||
$profile_is_native = in_array($profile['network'], Protocol::NATIVE_SUPPORT);
|
||||
$local_user_is_self = local_user() && local_user() == ($profile['profile_uid'] ?? 0);
|
||||
$local_user_is_self = local_user() && local_user() == ($profile['uid'] ?? 0);
|
||||
$visitor_is_authenticated = (bool)self::getMyURL();
|
||||
$visitor_is_following =
|
||||
in_array($visitor_contact['rel'] ?? 0, [Contact::FOLLOWER, Contact::FRIEND])
|
||||
|
|
|
@ -82,8 +82,8 @@ class Profile extends BaseModule
|
|||
|
||||
$page['htmlhead'] .= "\n";
|
||||
|
||||
$blocked = !local_user() && !Session::getRemoteContactID($a->profile['profile_uid']) && DI::config()->get('system', 'block_public');
|
||||
$userblock = !local_user() && !Session::getRemoteContactID($a->profile['profile_uid']) && $a->profile['hidewall'];
|
||||
$blocked = !local_user() && !Session::getRemoteContactID($a->profile['uid']) && DI::config()->get('system', 'block_public');
|
||||
$userblock = !local_user() && !Session::getRemoteContactID($a->profile['uid']) && $a->profile['hidewall'];
|
||||
|
||||
if (!empty($a->profile['page-flags']) && $a->profile['page-flags'] == User::PAGE_FLAGS_COMMUNITY) {
|
||||
$page['htmlhead'] .= '<meta name="friendica.community" content="true" />' . "\n";
|
||||
|
@ -149,7 +149,7 @@ class Profile extends BaseModule
|
|||
|
||||
$hashtags = $_GET['tag'] ?? '';
|
||||
|
||||
if (DI::config()->get('system', 'block_public') && !local_user() && !Session::getRemoteContactID($a->profile['profile_uid'])) {
|
||||
if (DI::config()->get('system', 'block_public') && !local_user() && !Session::getRemoteContactID($a->profile['uid'])) {
|
||||
return Login::form();
|
||||
}
|
||||
|
||||
|
@ -157,14 +157,14 @@ class Profile extends BaseModule
|
|||
|
||||
if ($update) {
|
||||
// Ensure we've got a profile owner if updating.
|
||||
$a->profile['profile_uid'] = $update;
|
||||
} elseif ($a->profile['profile_uid'] == local_user()) {
|
||||
$a->profile['uid'] = $update;
|
||||
} elseif ($a->profile['uid'] == local_user()) {
|
||||
Nav::setSelected('home');
|
||||
}
|
||||
|
||||
$remote_contact = Session::getRemoteContactID($a->profile['profile_uid']);
|
||||
$is_owner = local_user() == $a->profile['profile_uid'];
|
||||
$last_updated_key = "profile:" . $a->profile['profile_uid'] . ":" . local_user() . ":" . $remote_contact;
|
||||
$remote_contact = Session::getRemoteContactID($a->profile['uid']);
|
||||
$is_owner = local_user() == $a->profile['uid'];
|
||||
$last_updated_key = "profile:" . $a->profile['uid'] . ":" . local_user() . ":" . $remote_contact;
|
||||
|
||||
if (!empty($a->profile['hidewall']) && !$is_owner && !$remote_contact) {
|
||||
notice(DI::l10n()->t('Access to this profile has been restricted.') . EOL);
|
||||
|
@ -182,16 +182,16 @@ class Profile extends BaseModule
|
|||
return $o;
|
||||
}
|
||||
|
||||
$o .= Widget::commonFriendsVisitor($a->profile['profile_uid']);
|
||||
$o .= Widget::commonFriendsVisitor($a->profile['uid']);
|
||||
|
||||
$commpage = $a->profile['page-flags'] == User::PAGE_FLAGS_COMMUNITY;
|
||||
$commvisitor = $commpage && $remote_contact;
|
||||
|
||||
DI::page()['aside'] .= Widget::postedByYear(DI::baseUrl()->get(true) . '/profile/' . $a->profile['nickname'], $a->profile['profile_uid'] ?? 0, true);
|
||||
DI::page()['aside'] .= Widget::postedByYear(DI::baseUrl()->get(true) . '/profile/' . $a->profile['nickname'], $a->profile['uid'] ?? 0, true);
|
||||
DI::page()['aside'] .= Widget::categories(DI::baseUrl()->get(true) . '/profile/' . $a->profile['nickname'], XML::escape($category));
|
||||
DI::page()['aside'] .= Widget::tagCloud();
|
||||
|
||||
if (Security::canWriteToUserWall($a->profile['profile_uid'])) {
|
||||
if (Security::canWriteToUserWall($a->profile['uid'])) {
|
||||
$x = [
|
||||
'is_owner' => $is_owner,
|
||||
'allow_location' => ($is_owner || $commvisitor) && $a->profile['allow_location'],
|
||||
|
@ -206,7 +206,7 @@ class Profile extends BaseModule
|
|||
'acl' => $is_owner ? ACL::getFullSelectorHTML(DI::page(), $a->user, true) : '',
|
||||
'bang' => '',
|
||||
'visitor' => $is_owner || $commvisitor ? 'block' : 'none',
|
||||
'profile_uid' => $a->profile['profile_uid'],
|
||||
'profile_uid' => $a->profile['uid'],
|
||||
];
|
||||
|
||||
$o .= status_editor($a, $x);
|
||||
|
@ -214,7 +214,7 @@ class Profile extends BaseModule
|
|||
}
|
||||
|
||||
// Get permissions SQL - if $remote_contact is true, our remote user has been pre-verified and we already have fetched his/her groups
|
||||
$sql_extra = Item::getPermissionsSQLByUserId($a->profile['profile_uid']);
|
||||
$sql_extra = Item::getPermissionsSQLByUserId($a->profile['uid']);
|
||||
$sql_extra2 = '';
|
||||
|
||||
$last_updated_array = Session::get('last_updated', []);
|
||||
|
@ -246,7 +246,7 @@ class Profile extends BaseModule
|
|||
$sql_extra4
|
||||
$sql_extra
|
||||
ORDER BY `item`.`received` DESC",
|
||||
$a->profile['profile_uid'],
|
||||
$a->profile['uid'],
|
||||
GRAVITY_ACTIVITY
|
||||
);
|
||||
|
||||
|
@ -260,12 +260,12 @@ class Profile extends BaseModule
|
|||
|
||||
if (!empty($category)) {
|
||||
$sql_post_table = sprintf("INNER JOIN (SELECT `oid` FROM `term` WHERE `term` = '%s' AND `otype` = %d AND `type` = %d AND `uid` = %d ORDER BY `tid` DESC) AS `term` ON `item`.`id` = `term`.`oid` ",
|
||||
DBA::escape(Strings::protectSprintf($category)), intval(TERM_OBJ_POST), intval(TERM_CATEGORY), intval($a->profile['profile_uid']));
|
||||
DBA::escape(Strings::protectSprintf($category)), intval(TERM_OBJ_POST), intval(TERM_CATEGORY), intval($a->profile['uid']));
|
||||
}
|
||||
|
||||
if (!empty($hashtags)) {
|
||||
$sql_post_table .= sprintf("INNER JOIN (SELECT `oid` FROM `term` WHERE `term` = '%s' AND `otype` = %d AND `type` = %d AND `uid` = %d ORDER BY `tid` DESC) AS `term` ON `item`.`id` = `term`.`oid` ",
|
||||
DBA::escape(Strings::protectSprintf($hashtags)), intval(TERM_OBJ_POST), intval(TERM_HASHTAG), intval($a->profile['profile_uid']));
|
||||
DBA::escape(Strings::protectSprintf($hashtags)), intval(TERM_OBJ_POST), intval(TERM_HASHTAG), intval($a->profile['uid']));
|
||||
}
|
||||
|
||||
if (!empty($datequery)) {
|
||||
|
@ -277,7 +277,7 @@ class Profile extends BaseModule
|
|||
|
||||
// Does the profile page belong to a forum?
|
||||
// If not then we can improve the performance with an additional condition
|
||||
$condition = ['uid' => $a->profile['profile_uid'], 'page-flags' => [User::PAGE_FLAGS_COMMUNITY, User::PAGE_FLAGS_PRVGROUP]];
|
||||
$condition = ['uid' => $a->profile['uid'], 'page-flags' => [User::PAGE_FLAGS_COMMUNITY, User::PAGE_FLAGS_PRVGROUP]];
|
||||
if (!DBA::exists('user', $condition)) {
|
||||
$sql_extra3 = sprintf(" AND `thread`.`contact-id` = %d ", intval(intval($a->profile['contact_id'])));
|
||||
} else {
|
||||
|
@ -321,7 +321,7 @@ class Profile extends BaseModule
|
|||
$sql_extra2
|
||||
ORDER BY `thread`.`received` DESC
|
||||
$pager_sql",
|
||||
$a->profile['profile_uid']
|
||||
$a->profile['uid']
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -344,13 +344,13 @@ class Profile extends BaseModule
|
|||
|
||||
$items = DBA::toArray($items_stmt);
|
||||
|
||||
if ($pager->getStart() == 0 && !empty($a->profile['profile_uid'])) {
|
||||
$pinned_items = Item::selectPinned($a->profile['profile_uid'], ['uri', 'pinned'], ['true' . $sql_extra]);
|
||||
if ($pager->getStart() == 0 && !empty($a->profile['uid'])) {
|
||||
$pinned_items = Item::selectPinned($a->profile['uid'], ['uri', 'pinned'], ['true' . $sql_extra]);
|
||||
$pinned = Item::inArray($pinned_items);
|
||||
$items = array_merge($items, $pinned);
|
||||
}
|
||||
|
||||
$o .= conversation($a, $items, $pager, 'profile', $update, false, 'pinned_received', $a->profile['profile_uid']);
|
||||
$o .= conversation($a, $items, $pager, 'profile', $update, false, 'pinned_received', $a->profile['uid']);
|
||||
|
||||
if (!$update) {
|
||||
$o .= $pager->renderMinimal(count($items));
|
||||
|
|
|
@ -40,7 +40,7 @@ class Contacts extends BaseModule
|
|||
|
||||
Profile::load($a, $nickname);
|
||||
|
||||
$is_owner = $a->profile['profile_uid'] == local_user();
|
||||
$is_owner = $a->profile['uid'] == local_user();
|
||||
|
||||
// tabs
|
||||
$o = Profile::getTabs($a, 'contacts', $is_owner, $nickname);
|
||||
|
|
|
@ -61,7 +61,7 @@ class Thread
|
|||
$this->writable = true;
|
||||
break;
|
||||
case 'profile':
|
||||
$this->profile_owner = $a->profile['profile_uid'];
|
||||
$this->profile_owner = $a->profile['uid'];
|
||||
$this->writable = Security::canWriteToUserWall($this->profile_owner);
|
||||
break;
|
||||
case 'display':
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue