/**
* @file mod/profiles.php
*/
+
use Friendica\App;
use Friendica\Content\ContactSelector;
use Friendica\Content\Feature;
use Friendica\Core\System;
use Friendica\Core\Worker;
use Friendica\Database\DBM;
+use Friendica\Model\Contact;
use Friendica\Model\GContact;
+use Friendica\Model\Item;
use Friendica\Model\Profile;
use Friendica\Network\Probe;
+use Friendica\Util\DateTimeFormat;
+use Friendica\Util\Temporal;
function profiles_init(App $a) {
return;
}
- $dob = $_POST['dob'] ? escape_tags(trim($_POST['dob'])) : '0001-01-01'; // FIXME: Needs to be validated?
+ $dob = $_POST['dob'] ? escape_tags(trim($_POST['dob'])) : '0000-00-00';
$y = substr($dob, 0, 4);
if ((! ctype_digit($y)) || ($y < 1900)) {
$ignore_year = true;
$dob = substr($dob, 5);
}
- $dob = datetime_convert('UTC', 'UTC', (($ignore_year) ? '1900-' . $dob : $dob), (($ignore_year) ? 'm-d' : 'Y-m-d'));
if ($ignore_year) {
- $dob = '0001-' . $dob;
+ $dob = '0000-' . DateTimeFormat::utc('1900-' . $dob, 'm-d');
+ } else {
+ $dob = DateTimeFormat::utc($dob, 'Y-m-d');
}
}
if (! strlen($howlong)) {
$howlong = NULL_DATE;
} else {
- $howlong = datetime_convert(date_default_timezone_get(), 'UTC', $howlong);
+ $howlong = DateTimeFormat::convert($howlong, 'UTC', date_default_timezone_get());
}
// linkify the relationship target if applicable
info(L10n::t('Profile updated.') . EOL);
}
-
- if ($namechanged && $is_default) {
- $r = q("UPDATE `contact` SET `name` = '%s', `name-date` = '%s' WHERE `self` = 1 AND `uid` = %d",
- dbesc($name),
- dbesc(datetime_convert()),
- intval(local_user())
- );
- $r = q("UPDATE `user` set `username` = '%s' where `uid` = %d",
- dbesc($name),
- intval(local_user())
- );
- }
-
if ($is_default) {
- $location = Profile::formatLocation(["locality" => $locality, "region" => $region, "country-name" => $country_name]);
-
- q("UPDATE `contact` SET `about` = '%s', `location` = '%s', `keywords` = '%s', `gender` = '%s' WHERE `self` AND `uid` = %d",
- dbesc($about),
- dbesc($location),
- dbesc($pub_keywords),
- dbesc($gender),
- intval(local_user())
- );
+ if ($namechanged) {
+ $r = q("UPDATE `user` set `username` = '%s' where `uid` = %d",
+ dbesc($name),
+ intval(local_user())
+ );
+ }
+
+ Contact::updateSelfFromUserID(local_user());
// Update global directory in background
$url = $_SESSION['my_url'];
$prof = '[url=' . $self[0]['url'] . '?tab=profile' . ']' . L10n::t('public profile') . '[/url]';
if ($t == 1 && strlen($value)) {
- $message = sprintf(L10n::t('%1$s changed %2$s to “%3$s”'), $A, $changes, $value);
- $message .= "\n\n" . sprintf(L10n::t(' - Visit %1$s\'s %2$s'), $A, $prof);
+ $message = L10n::t('%1$s changed %2$s to “%3$s”', $A, $changes, $value);
+ $message .= "\n\n" . L10n::t(' - Visit %1$s\'s %2$s', $A, $prof);
} else {
- $message = sprintf(L10n::t('%1$s has an updated %2$s, changing %3$s.'), $A, $prof, $changes);
+ $message = L10n::t('%1$s has an updated %2$s, changing %3$s.', $A, $prof, $changes);
}
$arr['deny_cid'] = $a->user['deny_cid'];
$arr['deny_gid'] = $a->user['deny_gid'];
- $i = item_store($arr);
+ $i = Item::insert($arr);
if ($i) {
Worker::add(PRIORITY_HIGH, "Notifier", "activity", $i);
}
'$default' => (($is_default) ? '<p id="profile-edit-default-desc">' . L10n::t('This is your <strong>public</strong> profile.<br />It <strong>may</strong> be visible to anybody using the internet.') . '</p>' : ""),
'$name' => ['name', L10n::t('Your Full Name:'), $r[0]['name']],
'$pdesc' => ['pdesc', L10n::t('Title/Description:'), $r[0]['pdesc']],
- '$dob' => dob($r[0]['dob']),
+ '$dob' => Temporal::getDateofBirthField($r[0]['dob']),
'$hide_friends' => $hide_friends,
'$address' => ['address', L10n::t('Street Address:'), $r[0]['address']],
'$locality' => ['locality', L10n::t('Locality/City:'), $r[0]['locality']],
'$region' => ['region', L10n::t('Region/State:'), $r[0]['region']],
'$postal_code' => ['postal_code', L10n::t('Postal/Zip Code:'), $r[0]['postal-code']],
'$country_name' => ['country_name', L10n::t('Country:'), $r[0]['country-name']],
- '$age' => ((intval($r[0]['dob'])) ? '(' . L10n::t('Age: ') . age($r[0]['dob'],$a->user['timezone'],$a->user['timezone']) . ')' : ''),
+ '$age' => ((intval($r[0]['dob'])) ? '(' . L10n::t('Age: ') . Temporal::getAgeByTimezone($r[0]['dob'],$a->user['timezone'],$a->user['timezone']) . ')' : ''),
'$gender' => ContactSelector::gender($r[0]['gender']),
'$marital' => ContactSelector::maritalStatus($r[0]['marital']),
'$with' => ['with', L10n::t("Who: \x28if applicable\x29"), strip_tags($r[0]['with']), L10n::t('Examples: cathy123, Cathy Williams, cathy@example.com')],
- '$howlong' => ['howlong', L10n::t('Since [date]:'), ($r[0]['howlong'] <= NULL_DATE ? '' : datetime_convert('UTC',date_default_timezone_get(),$r[0]['howlong']))],
+ '$howlong' => ['howlong', L10n::t('Since [date]:'), ($r[0]['howlong'] <= NULL_DATE ? '' : DateTimeFormat::local($r[0]['howlong']))],
'$sexual' => ContactSelector::sexualPreference($r[0]['sexual']),
'$about' => ['about', L10n::t('Tell us about yourself...'), $r[0]['about']],
- '$xmpp' => ['xmpp', L10n::t('XMPP (Jabber) address:'), $r[0]['xmpp'], L10n::t("The XMPP address will be propagated to your contacts so that they can follow you.")],
+ '$xmpp' => ['xmpp', L10n::t("XMPP \x28Jabber\x29 address:"), $r[0]['xmpp'], L10n::t("The XMPP address will be propagated to your contacts so that they can follow you.")],
'$homepage' => ['homepage', L10n::t('Homepage URL:'), $r[0]['homepage']],
'$hometown' => ['hometown', L10n::t('Hometown:'), $r[0]['hometown']],
'$politic' => ['politic', L10n::t('Political Views:'), $r[0]['politic']],