mirror of
https://github.com/friendica/friendica
synced 2025-04-28 17:04:23 +02:00
Merge pull request #6183 from MrPetovan/bug/6135-hide-follower-only-birthdays
Hide follower-only birthday reminders
This commit is contained in:
commit
3f4636d490
9 changed files with 142 additions and 174 deletions
|
@ -16,7 +16,6 @@ use Friendica\Content\Text\BBCode;
|
|||
use Friendica\Content\Text\HTML;
|
||||
use Friendica\Core\Addon;
|
||||
use Friendica\Core\Config;
|
||||
use Friendica\Core\L10n;
|
||||
use Friendica\Core\Logger;
|
||||
use Friendica\Core\Protocol;
|
||||
use Friendica\Core\System;
|
||||
|
@ -690,7 +689,7 @@ class DFRN
|
|||
XML::addElement($doc, $author, "poco:displayName", $profile["name"]);
|
||||
XML::addElement($doc, $author, "poco:updated", $namdate);
|
||||
|
||||
if (trim($profile["dob"]) > '0001-01-01') {
|
||||
if (trim($profile["dob"]) > DBA::NULL_DATE) {
|
||||
XML::addElement($doc, $author, "poco:birthday", "0000-".date("m-d", strtotime($profile["dob"])));
|
||||
}
|
||||
|
||||
|
@ -1510,43 +1509,6 @@ class DFRN
|
|||
return intval($res->status);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Add new birthday event for this person
|
||||
*
|
||||
* @param array $contact Contact record
|
||||
* @param string $birthday Birthday of the contact
|
||||
* @return void
|
||||
* @todo Add array type-hint for $contact
|
||||
*/
|
||||
private static function birthdayEvent($contact, $birthday)
|
||||
{
|
||||
// Check for duplicates
|
||||
$condition = ['uid' => $contact['uid'], 'cid' => $contact['id'],
|
||||
'start' => DateTimeFormat::utc($birthday), 'type' => 'birthday'];
|
||||
if (DBA::exists('event', $condition)) {
|
||||
return;
|
||||
}
|
||||
|
||||
Logger::log('updating birthday: ' . $birthday . ' for contact ' . $contact['id']);
|
||||
|
||||
$bdtext = L10n::t('%s\'s birthday', $contact['name']);
|
||||
$bdtext2 = L10n::t('Happy Birthday %s', ' [url=' . $contact['url'] . ']' . $contact['name'] . '[/url]');
|
||||
|
||||
$r = q(
|
||||
"INSERT INTO `event` (`uid`,`cid`,`created`,`edited`,`start`,`finish`,`summary`,`desc`,`type`)
|
||||
VALUES ( %d, %d, '%s', '%s', '%s', '%s', '%s', '%s', '%s') ",
|
||||
intval($contact['uid']),
|
||||
intval($contact['id']),
|
||||
DBA::escape(DateTimeFormat::utcNow()),
|
||||
DBA::escape(DateTimeFormat::utcNow()),
|
||||
DBA::escape(DateTimeFormat::utc($birthday)),
|
||||
DBA::escape(DateTimeFormat::utc($birthday . ' + 1 day ')),
|
||||
DBA::escape($bdtext),
|
||||
DBA::escape($bdtext2),
|
||||
DBA::escape('birthday')
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Fetch the author data from head or entry items
|
||||
*
|
||||
|
@ -1722,9 +1684,9 @@ class DFRN
|
|||
// "poco:birthday" is the birthday in the format "yyyy-mm-dd"
|
||||
$value = XML::getFirstNodeValue($xpath, $element . "/poco:birthday/text()", $context);
|
||||
|
||||
if (!in_array($value, ["", "0000-00-00", "0001-01-01"])) {
|
||||
if (!in_array($value, ["", "0000-00-00", DBA::NULL_DATE])) {
|
||||
$bdyear = date("Y");
|
||||
$value = str_replace("0000", $bdyear, $value);
|
||||
$value = str_replace(["0000", "0001"], $bdyear, $value);
|
||||
|
||||
if (strtotime($value) < time()) {
|
||||
$value = str_replace($bdyear, $bdyear + 1, $value);
|
||||
|
@ -1737,7 +1699,7 @@ class DFRN
|
|||
$contact = array_merge($contact_old, $poco);
|
||||
|
||||
if ($contact_old["bdyear"] != $contact["bdyear"]) {
|
||||
self::birthdayEvent($contact, $birthday);
|
||||
Event::createBirthday($contact, $birthday);
|
||||
}
|
||||
|
||||
// Get all field names
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue