return $profile;
}
+ /**
+ * @brief Returns default profile for a given user ID and ID
+ *
+ * @param int $uid The contact ID
+ * @param int $id The contact owner ID
+ * @param array $fields The selected fields
+ *
+ * @return array Profile data for the ID
+ * @throws \Exception
+ */
+ public static function getById(int $uid, int $id, array $fields = [])
+ {
+ return DBA::selectFirst('profile', $fields, ['uid' => $uid, 'id' => $id]);
+ }
+
+ /**
+ * @brief Returns profile data for the contact owner
+ *
+ * @param int $uid The User ID
+ * @param array $fields The fields to retrieve
+ *
+ * @return array Array of profile data
+ * @throws \Exception
+ */
+ public static function getListByUser(int $uid, array $fields = [])
+ {
+ return DBA::selectToArray('profile', $fields, ['uid' => $uid]);
+ }
+
/**
* @brief Returns a formatted location string from the given profile array
*
}
if (count($profiledata) > 0) {
+ // Ensure to have a "nickname" field
+ if (empty($profiledata['nickname']) && !empty($profiledata['nick'])) {
+ $profiledata['nickname'] = $profiledata['nick'];
+ }
+
// Add profile data to sidebar
$a->page['aside'] .= self::sidebar($a, $profiledata, true, $show_connect);
$visitor_contact = [];
- if ($profile['uid'] && self::getMyURL()) {
+ if (!empty($profile['uid']) && self::getMyURL()) {
$visitor_contact = Contact::selectFirst(['rel'], ['uid' => $profile['uid'], 'nurl' => Strings::normaliseLink(self::getMyURL())]);
}
$profile_contact = [];
- if ($profile['cid'] && self::getMyURL()) {
+ if (!empty($profile['cid']) && self::getMyURL()) {
$profile_contact = Contact::selectFirst(['rel'], ['id' => $profile['cid']]);
}
|| in_array($profile_contact['rel'] ?? 0, [Contact::FOLLOWER, Contact::FRIEND]);
$visitor_base_path = self::getMyURL() ? preg_replace('=/profile/(.*)=ism', '', self::getMyURL()) : '';
- if (!$local_user_is_self) {
+ if (!$local_user_is_self && $show_connect) {
if (!$visitor_is_authenticated) {
$follow_link = 'dfrn_request/' . $profile['nickname'];
} elseif ($profile_is_native) {
'pending' => false,
'hidden' => false,
'archive' => false,
- 'network' => [Protocol::DFRN, Protocol::ACTIVITYPUB, Protocol::OSTATUS, Protocol::DIASPORA],
+ 'network' => Protocol::FEDERATED,
]);
}
}
$p['address'] = BBCode::convert($p['address']);
}
+ if (isset($p['gender'])) {
+ $p['gender'] = L10n::t($p['gender']);
+ }
+
+ if (isset($p['marital'])) {
+ $p['marital'] = L10n::t($p['marital']);
+ }
+
if (isset($p['photo'])) {
$p['photo'] = ProxyUtils::proxifyUrl($p['photo'], false, ProxyUtils::SIZE_SMALL);
}
public static function getAdvanced(App $a)
{
- $uid = $a->profile['uid'];
+ $uid = intval($a->profile['uid']);
if ($a->profile['name']) {
$tpl = Renderer::getMarkupTemplate('profile_advanced.tpl');
return $uid;
}
- /**
- * Strip zrl parameter from a string.
- *
- * @param string $s The input string.
- * @return string The zrl.
- */
- public static function stripZrls($s)
- {
- return preg_replace('/[\?&]zrl=(.*?)([\?&]|$)/is', '', $s);
- }
-
- /**
- * Strip query parameter from a string.
- *
- * @param string $s The input string.
- * @param $param
- * @return string The query parameter.
- */
- public static function stripQueryParam($s, $param)
- {
- return preg_replace('/[\?&]' . $param . '=(.*?)(&|$)/ism', '$2', $s);
- }
-
/**
* search for Profiles
*