aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMario Vavti <mario@mariovavti.com>2019-05-26 18:05:11 +0200
committerMario Vavti <mario@mariovavti.com>2019-05-26 18:05:11 +0200
commite466d72058b2543bec69c77d2730828acada38a1 (patch)
treeaeb1a73e02c3d28409e96eb0591a7e28846b5539 /include
parent528b9b6a60d847b0ecb639cb7fb8e01ee79b11d4 (diff)
downloadvolse-hubzilla-e466d72058b2543bec69c77d2730828acada38a1.tar.gz
volse-hubzilla-e466d72058b2543bec69c77d2730828acada38a1.tar.bz2
volse-hubzilla-e466d72058b2543bec69c77d2730828acada38a1.zip
adjust birthday handling according to community decision and slightly change display of allday event items
Diffstat (limited to 'include')
-rw-r--r--include/datetime.php3
-rw-r--r--include/event.php24
-rw-r--r--include/features.php9
-rw-r--r--include/zot.php2
4 files changed, 23 insertions, 15 deletions
diff --git a/include/datetime.php b/include/datetime.php
index d049fc7c5..ef0927ea4 100644
--- a/include/datetime.php
+++ b/include/datetime.php
@@ -516,13 +516,14 @@ function update_birthdays() {
'event_xchan' => $rr['xchan_hash'],
'dtstart' => datetime_convert('UTC', 'UTC', $rr['abook_dob']),
'dtend' => datetime_convert('UTC', 'UTC', $rr['abook_dob'] . ' + 1 day '),
- 'adjust' => 1, //intval(feature_enabled($rr['abook_channel'],'smart_birthdays')),
+ 'adjust' => 0,
'summary' => sprintf( t('%1$s\'s birthday'), $rr['xchan_name']),
'description' => sprintf( t('Happy Birthday %1$s'), '[zrl=' . $rr['xchan_url'] . ']' . $rr['xchan_name'] . '[/zrl]'),
'etype' => 'birthday',
];
$z = event_store_event($ev);
+
if ($z) {
$item_id = event_store_item($ev, $z);
q("update abook set abook_dob = '%s' where abook_id = %d",
diff --git a/include/event.php b/include/event.php
index eb8731f46..ca08a67b5 100644
--- a/include/event.php
+++ b/include/event.php
@@ -76,18 +76,34 @@ function format_event_obj($jobject) {
if(array_key_exists('description', $object)) {
$tz = (($object['timezone']) ? $object['timezone'] : 'UTC');
+ $allday = (($object['adjust']) ? false : true);
- $bd_format = t('l F d, Y \@ g:i A'); // Friday January 18, 2011 @ 8:01 AM
+ $dtstart = new DateTime($object['dtstart']);
+ $dtend = new DateTime($object['dtend']);
+ $dtdiff = $dtstart->diff($dtend);
+
+ if($allday && ($dtdiff->days < 2))
+ $oneday = true;
+
+ if($allday && !$oneday) {
+ // Subtract one day from the end date so we can use the "first day - last day" format for display.
+ $dtend->modify('-1 day');
+ $object['dtend'] = datetime_convert('UTC', 'UTC', $dtend->format('Y-m-d H:i:s'));
+ }
+
+ $bd_format = (($allday) ? t('l F d, Y') : t('l F d, Y \@ g:i A')); // Friday January 18, 2011 @ 8:01 AM or Friday January 18, 2011 for allday events
$event['header'] = replace_macros(get_markup_template('event_item_header.tpl'),array(
'$title' => zidify_links(smilies(bbcode($object['title']))),
- '$dtstart_label' => t('Starts:'),
+ '$dtstart_label' => t('Start:'),
'$dtstart_title' => datetime_convert($tz, date_default_timezone_get(), $object['dtstart'], (($object['adjust']) ? ATOM_TIME : 'Y-m-d\TH:i:s' )),
'$dtstart_dt' => (($object['adjust']) ? day_translate(datetime_convert($tz, date_default_timezone_get(), $object['dtstart'] , $bd_format )) : day_translate(datetime_convert('UTC', 'UTC', $object['dtstart'] , $bd_format))),
'$finish' => (($object['nofinish']) ? false : true),
- '$dtend_label' => t('Finishes:'),
+ '$dtend_label' => t('End:'),
'$dtend_title' => datetime_convert($tz, date_default_timezone_get(), $object['dtend'], (($object['adjust']) ? ATOM_TIME : 'Y-m-d\TH:i:s' )),
- '$dtend_dt' => (($object['adjust']) ? day_translate(datetime_convert($tz, date_default_timezone_get(), $object['dtend'] , $bd_format )) : day_translate(datetime_convert('UTC', 'UTC', $object['dtend'] , $bd_format )))
+ '$dtend_dt' => (($object['adjust']) ? day_translate(datetime_convert($tz, date_default_timezone_get(), $object['dtend'] , $bd_format )) : day_translate(datetime_convert('UTC', 'UTC', $object['dtend'] , $bd_format ))),
+ '$allday' => $allday,
+ '$oneday' => $oneday
));
$event['content'] = replace_macros(get_markup_template('event_item_content.tpl'),array(
diff --git a/include/features.php b/include/features.php
index 5841395c5..9528d3418 100644
--- a/include/features.php
+++ b/include/features.php
@@ -95,16 +95,7 @@ function get_features($filtered = true, $level = (-1)) {
t('Allow event creation in timezones other than your own.'),
false,
get_config('feature_lock','event_tz_select'),
- ],
-/*
- [
- 'smart_birthdays',
- t('Smart Birthdays'),
- t('Make birthday events timezone aware in case your friends are scattered across the planet.'),
- false,
- get_config('feature_lock','smart_birthdays'),
]
-*/
],
diff --git a/include/zot.php b/include/zot.php
index b99eeb1ec..a37b7cdb5 100644
--- a/include/zot.php
+++ b/include/zot.php
@@ -4430,7 +4430,7 @@ function zotinfo($arr) {
$profile['description'] = $p[0]['pdesc'];
$profile['birthday'] = $p[0]['dob'];
- if(($profile['birthday'] != '0000-00-00') && (($bd = z_birthday($p[0]['dob'],$e['channel_timezone'])) !== ''))
+ if(($profile['birthday'] != '0000-00-00') && (($bd = z_birthday($p[0]['dob'],'UTC')) !== ''))
$profile['next_birthday'] = $bd;
if($age = age($p[0]['dob'],$e['channel_timezone'],''))