<?php
/**
- * @file src/Model/Profile.php
+ * @copyright Copyright (C) 2020, Friendica
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
+ *
*/
+
namespace Friendica\Model;
use Friendica\App;
use Friendica\Core\Cache\Duration;
use Friendica\Core\Hook;
use Friendica\Core\Logger;
+use Friendica\Network\Probe;
use Friendica\Core\Protocol;
use Friendica\Core\Renderer;
use Friendica\Core\Session;
require_once $theme_info_file;
}
- if (local_user() && local_user() == $a->profile['uid'] && $profiledata) {
- DI::page()['aside'] .= Renderer::replaceMacros(
- Renderer::getMarkupTemplate('settings/profile/link.tpl'),
- [
- '$editprofile' => DI::l10n()->t('Edit profile'),
- '$profid' => $a->profile['id']
- ]
- );
- }
-
$block = ((DI::config()->get('system', 'block_public') && !Session::isAuthenticated()) ? true : false);
/**
if (!$local_user_is_self && $show_connect) {
if (!$visitor_is_authenticated) {
- if (!empty($profile['nickname'])) {
- $follow_link = 'dfrn_request/' . $profile['nickname'];
+ // Remote follow is only available for local profiles
+ if (!empty($profile['nickname']) && strpos($profile_url, DI::baseUrl()->get()) === 0) {
+ $follow_link = 'remote_follow/' . $profile['nickname'];
}
} elseif ($profile_is_native) {
if ($visitor_is_following) {
$location = DI::l10n()->t('Location:');
}
- $gender = !empty($profile['gender']) ? DI::l10n()->t('Gender:') : false;
$homepage = !empty($profile['homepage']) ? DI::l10n()->t('Homepage:') : false;
$about = !empty($profile['about']) ? DI::l10n()->t('About:') : false;
$xmpp = !empty($profile['xmpp']) ? DI::l10n()->t('XMPP:') : false;
if ((!empty($profile['hidewall']) || $block) && !Session::isAuthenticated()) {
- $location = $gender = $marital = $homepage = $about = false;
+ $location = $homepage = $about = false;
}
$split_name = Diaspora::splitName($profile['name']);
$diaspora = [
'guid' => $profile['guid'],
'podloc' => DI::baseUrl(),
- 'searchable' => (($profile['publish'] && $profile['net-publish']) ? 'true' : 'false'),
+ 'searchable' => ($profile['net-publish'] ? 'true' : 'false'),
'nickname' => $profile['nickname'],
'fullname' => $profile['name'],
'firstname' => $firstname,
$p['address'] = BBCode::convert($p['address']);
}
- if (isset($p['gender'])) {
- $p['gender'] = DI::l10n()->t($p['gender']);
- }
-
if (isset($p['photo'])) {
$p['photo'] = ProxyUtils::proxifyUrl($p['photo'], false, ProxyUtils::SIZE_SMALL);
}
'$wallmessage_link' => $wallmessage_link,
'$account_type' => $account_type,
'$location' => $location,
- '$gender' => $gender,
'$homepage' => $homepage,
'$about' => $about,
'$network' => DI::l10n()->t('Network:'),
$_SESSION['visitor_handle'] = $visitor['addr'];
$_SESSION['visitor_home'] = $visitor['url'];
$_SESSION['my_url'] = $visitor['url'];
+ $_SESSION['remote_comment'] = Probe::getRemoteFollowLink($visitor['url']);
Session::setVisitorsContacts();
WHERE $publish AND NOT `user`.`blocked` AND NOT `user`.`account_removed`
AND ((`profile`.`name` LIKE ?) OR
(`user`.`nickname` LIKE ?) OR
- (`profile`.`pdesc` LIKE ?) OR
+ (`profile`.`about` LIKE ?) OR
(`profile`.`locality` LIKE ?) OR
(`profile`.`region` LIKE ?) OR
(`profile`.`country-name` LIKE ?) OR
WHERE $publish AND NOT `user`.`blocked` AND NOT `user`.`account_removed` AND `contact`.`self`
AND ((`profile`.`name` LIKE ?) OR
(`user`.`nickname` LIKE ?) OR
- (`profile`.`pdesc` LIKE ?) OR
+ (`profile`.`about` LIKE ?) OR
(`profile`.`locality` LIKE ?) OR
(`profile`.`region` LIKE ?) OR
(`profile`.`country-name` LIKE ?) OR