X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FModel%2FEvent.php;h=992b77badabaf8042907aae3df0b7d5af4eb0353;hb=0bc2fe66f54717a3f2e86fd9626dc565e9d00fd7;hp=2805a83f26ab852dd08674940d51ef27fad3a590;hpb=a6fb3568f989f72164b435baafc63a174397b542;p=friendica.git diff --git a/src/Model/Event.php b/src/Model/Event.php index 2805a83f26..992b77bada 100644 --- a/src/Model/Event.php +++ b/src/Model/Event.php @@ -34,19 +34,27 @@ class Event extends BaseObject $bd_format = L10n::t('l F d, Y \@ g:i A'); // Friday January 18, 2011 @ 8 AM. $event_start = day_translate( - $event['adjust'] ? + !empty($event['adjust']) ? DateTimeFormat::local($event['start'], $bd_format) : DateTimeFormat::utc($event['start'], $bd_format) ); - $event_end = day_translate( - $event['adjust'] ? - DateTimeFormat::local($event['finish'], $bd_format) : DateTimeFormat::utc($event['finish'], $bd_format) - ); + if (!empty($event['finish'])) { + $event_end = day_translate( + !empty($event['adjust']) ? + DateTimeFormat::local($event['finish'], $bd_format) : DateTimeFormat::utc($event['finish'], $bd_format) + ); + } else { + $event_end = ''; + } if ($simple) { - $o = "

" . BBCode::convert($event['summary'], false, $simple) . "

"; + if (!empty($event['summary'])) { + $o = "

" . BBCode::convert($event['summary'], false, $simple) . "

"; + } - $o .= "
" . BBCode::convert($event['desc'], false, $simple) . "
"; + if (!empty($event['desc'])) { + $o .= "
" . BBCode::convert($event['desc'], false, $simple) . "
"; + } $o .= "

" . L10n::t('Starts:') . "

" . $event_start . "

"; @@ -54,7 +62,7 @@ class Event extends BaseObject $o .= "

" . L10n::t('Finishes:') . "

" . $event_end . "

"; } - if (strlen($event['location'])) { + if (!empty($event['location'])) { $o .= "

" . L10n::t('Location:') . "

" . BBCode::convert($event['location'], false, $simple) . "

"; } @@ -66,20 +74,22 @@ class Event extends BaseObject $o .= '
' . BBCode::convert($event['summary'], false, $simple) . '
' . "\r\n"; $o .= '
' . L10n::t('Starts:') . ' ' . $event_start . '
' . "\r\n"; if (!$event['nofinish']) { $o .= '
' . L10n::t('Finishes:') . ' ' . $event_end . '
' . "\r\n"; } - $o .= '
' . BBCode::convert($event['desc'], false, $simple) . '
' . "\r\n"; + if (!empty($event['desc'])) { + $o .= '
' . BBCode::convert($event['desc'], false, $simple) . '
' . "\r\n"; + } - if (strlen($event['location'])) { + if (!empty($event['location'])) { $o .= '
' . L10n::t('Location:') . ' ' . BBCode::convert($event['location'], false, $simple) . '
' . "\r\n"; @@ -303,7 +313,7 @@ class Event extends BaseObject Addon::callHooks('event_updated', $event['id']); } else { - $event['guid'] = System::createGUID(32); + $event['guid'] = defaults($arr, 'guid', System::createGUID(32)); // New event. Store it. DBA::insert('event', $event); @@ -317,6 +327,7 @@ class Event extends BaseObject $item_arr['uri'] = $event['uri']; $item_arr['parent-uri'] = $event['uri']; $item_arr['guid'] = $event['guid']; + $item_arr['plink'] = defaults($arr, 'plink', ''); $item_arr['post-type'] = Item::PT_EVENT; $item_arr['wall'] = $event['cid'] ? 0 : 1; $item_arr['contact-id'] = $contact['id']; @@ -539,10 +550,13 @@ class Event extends BaseObject $fmt = L10n::t('l, F j'); foreach ($event_result as $event) { $item = Item::selectFirst(['plink', 'author-name', 'author-avatar', 'author-link'], ['id' => $event['itemid']]); - if (DBA::isResult($item)) { - $event = array_merge($event, $item); + if (!DBA::isResult($item)) { + // Using default values when no item had been found + $item = ['plink' => '', 'author-name' => '', 'author-avatar' => '', 'author-link' => '']; } + $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); @@ -863,6 +877,11 @@ class Event extends BaseObject if (substr($dtstart_title, 0, 10) === substr($dtend_title, 0, 10)) { $same_date = true; } + } else { + $dtend_title = ''; + $dtend_dt = ''; + $end_time = ''; + $end_short = ''; } // Format the event location.