X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModel%2FEvent.php;h=cb7c39c37d094f0de46d6db4846cfbd11ae7f1d6;hb=2e05dac7dae0a3d028b442a2d5afbd4176a32e99;hp=331a77e3f1e8a1bd3d1f76aceda3bd94043f4568;hpb=8e074a5fe4b90d2d1a6e6b9300f6005d010839f8;p=friendica.git diff --git a/src/Model/Event.php b/src/Model/Event.php index 331a77e3f1..cb7c39c37d 100644 --- a/src/Model/Event.php +++ b/src/Model/Event.php @@ -49,18 +49,12 @@ class Event $uriid = $event['uri-id'] ?? $uriid; - $bd_format = DI::l10n()->t('l F d, Y \@ g:i A'); // Friday January 18, 2011 @ 8 AM. + $bd_format = DI::l10n()->t('l F d, Y \@ g:i A \G\M\TP (e)'); // Friday October 29, 2021 @ 9:15 AM GMT-04:00 (America/New_York) - $event_start = DI::l10n()->getDay( - !empty($event['adjust']) ? - DateTimeFormat::local($event['start'], $bd_format) : DateTimeFormat::utc($event['start'], $bd_format) - ); + $event_start = DI::l10n()->getDay(DateTimeFormat::local($event['start'], $bd_format)); if (!empty($event['finish'])) { - $event_end = DI::l10n()->getDay( - !empty($event['adjust']) ? - DateTimeFormat::local($event['finish'], $bd_format) : DateTimeFormat::utc($event['finish'], $bd_format) - ); + $event_end = DI::l10n()->getDay(DateTimeFormat::local($event['finish'], $bd_format)); } else { $event_end = ''; } @@ -94,13 +88,13 @@ class Event $o .= '
' . BBCode::convertForUriId($uriid, Strings::escapeHtml($event['summary']), $simple) . '
' . "\r\n"; $o .= '
' . DI::l10n()->t('Starts:') . ' ' . $event_start . '
' . "\r\n"; if (!$event['nofinish']) { $o .= '
' . DI::l10n()->t('Finishes:') . ' ' . $event_end . '
' . "\r\n"; } @@ -157,10 +151,6 @@ class Event $o .= '[event-location]' . $event['location'] . '[/event-location]'; } - if ($event['adjust']) { - $o .= '[event-adjust]' . $event['adjust'] . '[/event-adjust]'; - } - return $o; } @@ -200,11 +190,6 @@ class Event $ev['location'] = $match[1]; } - $match = []; - if (preg_match("/\[event\-adjust\](.*?)\[\/event\-adjust\]/is", $text, $match)) { - $ev['adjust'] = $match[1]; - } - $ev['nofinish'] = !empty($ev['start']) && empty($ev['finish']) ? 1 : 0; return $ev; @@ -218,8 +203,8 @@ class Event private static function compareDatesCallback($event_a, $event_b) { - $date_a = (($event_a['adjust']) ? DateTimeFormat::local($event_a['start']) : $event_a['start']); - $date_b = (($event_b['adjust']) ? DateTimeFormat::local($event_b['start']) : $event_b['start']); + $date_a = DateTimeFormat::local($event_a['start']); + $date_b = DateTimeFormat::local($event_b['start']); if ($date_a === $date_b) { return strcasecmp($event_a['desc'], $event_b['desc']); @@ -245,7 +230,7 @@ class Event } DBA::delete('event', ['id' => $event_id]); - Logger::log("Deleted event ".$event_id, Logger::DEBUG); + Logger::info("Deleted event", ['id' => $event_id]); } /** @@ -274,7 +259,6 @@ class Event $event['allow_gid'] = $arr['allow_gid'] ?? ''; $event['deny_cid'] = $arr['deny_cid'] ?? ''; $event['deny_gid'] = $arr['deny_gid'] ?? ''; - $event['adjust'] = intval($arr['adjust'] ?? 0); $event['nofinish'] = intval($arr['nofinish'] ?? (!empty($event['start']) && empty($event['finish']))); $event['created'] = DateTimeFormat::utc(($arr['created'] ?? '') ?: 'now'); @@ -305,7 +289,6 @@ class Event 'desc' => $event['desc'], 'location' => $event['location'], 'type' => $event['type'], - 'adjust' => $event['adjust'], 'nofinish' => $event['nofinish'], ]; @@ -547,8 +530,6 @@ class Event * int 'ignore' => * string 'start' => Start time of the timeframe. * string 'finish' => Finish time of the timeframe. - * string 'adjust_start' => - * string 'adjust_finish' => * * @param string $sql_extra Additional sql conditions (e.g. permission request). * @@ -568,11 +549,11 @@ class Event $events = DBA::toArray(DBA::p("SELECT `event`.*, `post-user`.`id` AS `itemid` FROM `event` LEFT JOIN `post-user` ON `post-user`.`event-id` = `event`.`id` AND `post-user`.`uid` = `event`.`uid` WHERE `event`.`uid` = ? AND `event`.`ignore` = ? - AND ((NOT `adjust` AND (`finish` >= ? OR (`nofinish` AND `start` >= ?)) AND `start` <= ?) - OR (`adjust` AND (`finish` >= ? OR (`nofinish` AND `start` >= ?)) AND `start` <= ?))" . $sql_extra, - $owner_uid, $event_params["ignore"], - $event_params["start"], $event_params["start"], $event_params["finish"], - $event_params["adjust_start"], $event_params["adjust_start"], $event_params["adjust_finish"])); + AND (`finish` >= ? OR (`nofinish` AND `start` >= ?)) AND `start` <= ? + " . $sql_extra, + $owner_uid, $event_params['ignore'], + $event_params['start'], $event_params['start'], $event_params['finish'] + )); if (DBA::isResult($events)) { $return = self::removeDuplicates($events); @@ -604,15 +585,15 @@ class Event $event = array_merge($event, $item); - $start = $event['adjust'] ? DateTimeFormat::local($event['start'], 'c') : DateTimeFormat::utc($event['start'], 'c'); - $j = $event['adjust'] ? DateTimeFormat::local($event['start'], 'j') : DateTimeFormat::utc($event['start'], 'j'); - $day = $event['adjust'] ? DateTimeFormat::local($event['start'], $fmt) : DateTimeFormat::utc($event['start'], $fmt); + $start = DateTimeFormat::local($event['start'], 'c'); + $j = DateTimeFormat::local($event['start'], 'j'); + $day = DateTimeFormat::local($event['start'], $fmt); $day = DI::l10n()->getDay($day); if ($event['nofinish']) { $end = null; } else { - $end = $event['adjust'] ? DateTimeFormat::local($event['finish'], 'c') : DateTimeFormat::utc($event['finish'], 'c'); + $end = DateTimeFormat::local($event['finish'], 'c'); } $is_first = ($day !== $last_date); @@ -720,23 +701,14 @@ class Event // but test your solution against http://icalvalid.cloudapp.net/ // also long lines SHOULD be split at 75 characters length foreach ($events as $event) { - if ($event['adjust'] == 1) { - $UTC = 'Z'; - } else { - $UTC = ''; - } $o .= 'BEGIN:VEVENT' . PHP_EOL; if ($event['start']) { - $tmp = strtotime($event['start']); - $dtformat = "%Y%m%dT%H%M%S" . $UTC; - $o .= 'DTSTART:' . strftime($dtformat, $tmp) . PHP_EOL; + $o .= 'DTSTART:' . DateTimeFormat::utc($event['start'], 'Ymd\THis\Z') . PHP_EOL; } if (!$event['nofinish']) { - $tmp = strtotime($event['finish']); - $dtformat = "%Y%m%dT%H%M%S" . $UTC; - $o .= 'DTEND:' . strftime($dtformat, $tmp) . PHP_EOL; + $o .= 'DTEND:' . DateTimeFormat::utc($event['finish'], 'Ymd\THis\Z') . PHP_EOL; } if ($event['summary']) { @@ -793,7 +765,7 @@ class Event return $return; } - $fields = ['start', 'finish', 'adjust', 'summary', 'desc', 'location', 'nofinish']; + $fields = ['start', 'finish', 'summary', 'desc', 'location', 'nofinish']; $conditions = ['uid' => $uid, 'cid' => 0]; @@ -883,48 +855,22 @@ class Event $tformat = DI::l10n()->t('g:i A'); // 8:01 AM. // Convert the time to different formats. - $dtstart_dt = DI::l10n()->getDay( - $item['event-adjust'] ? - DateTimeFormat::local($item['event-start'], $dformat) - : DateTimeFormat::utc($item['event-start'], $dformat) - ); - $dtstart_title = DateTimeFormat::utc($item['event-start'], $item['event-adjust'] ? DateTimeFormat::ATOM : 'Y-m-d\TH:i:s'); + $dtstart_dt = DI::l10n()->getDay(DateTimeFormat::local($item['event-start'], $dformat)); + $dtstart_title = DateTimeFormat::utc($item['event-start'], DateTimeFormat::ATOM); // Format: Jan till Dec. - $month_short = DI::l10n()->getDayShort( - $item['event-adjust'] ? - DateTimeFormat::local($item['event-start'], 'M') - : DateTimeFormat::utc($item['event-start'], 'M') - ); + $month_short = DI::l10n()->getDayShort(DateTimeFormat::local($item['event-start'], 'M')); // Format: 1 till 31. - $date_short = $item['event-adjust'] ? - DateTimeFormat::local($item['event-start'], 'j') - : DateTimeFormat::utc($item['event-start'], 'j'); - $start_time = $item['event-adjust'] ? - DateTimeFormat::local($item['event-start'], $tformat) - : DateTimeFormat::utc($item['event-start'], $tformat); - $start_short = DI::l10n()->getDayShort( - $item['event-adjust'] ? - DateTimeFormat::local($item['event-start'], $dformat_short) - : DateTimeFormat::utc($item['event-start'], $dformat_short) - ); + $date_short = DateTimeFormat::local($item['event-start'], 'j'); + $start_time = DateTimeFormat::local($item['event-start'], $tformat); + $start_short = DI::l10n()->getDayShort(DateTimeFormat::local($item['event-start'], $dformat_short)); // If the option 'nofinisch' isn't set, we need to format the finish date/time. if (!$item['event-nofinish']) { $finish = true; - $dtend_dt = DI::l10n()->getDay( - $item['event-adjust'] ? - DateTimeFormat::local($item['event-finish'], $dformat) - : DateTimeFormat::utc($item['event-finish'], $dformat) - ); - $dtend_title = DateTimeFormat::utc($item['event-finish'], $item['event-adjust'] ? DateTimeFormat::ATOM : 'Y-m-d\TH:i:s'); - $end_short = DI::l10n()->getDayShort( - $item['event-adjust'] ? - DateTimeFormat::local($item['event-finish'], $dformat_short) - : DateTimeFormat::utc($item['event-finish'], $dformat_short) - ); - $end_time = $item['event-adjust'] ? - DateTimeFormat::local($item['event-finish'], $tformat) - : DateTimeFormat::utc($item['event-finish'], $tformat); + $dtend_dt = DI::l10n()->getDay(DateTimeFormat::local($item['event-finish'], $dformat)); + $dtend_title = DateTimeFormat::utc($item['event-finish'], DateTimeFormat::ATOM); + $end_short = DI::l10n()->getDayShort(DateTimeFormat::utc($item['event-finish'], $dformat_short)); + $end_time = DateTimeFormat::local($item['event-finish'], $tformat); // Check if start and finish time is at the same day. if (substr($dtstart_title, 0, 10) === substr($dtend_title, 0, 10)) { $same_date = true; @@ -1063,7 +1009,6 @@ class Event 'summary' => DI::l10n()->t('%s\'s birthday', $contact['name']), 'desc' => DI::l10n()->t('Happy Birthday %s', ' [url=' . $contact['url'] . ']' . $contact['name'] . '[/url]'), 'type' => 'birthday', - 'adjust' => 0 ]; self::store($values);