]> git.mxchange.org Git - friendica.git/blobdiff - src/Model/Event.php
Merge pull request #5776 from annando/fix-contact
[friendica.git] / src / Model / Event.php
index 8e67da6352daf5f7b269b750056b9e132c5f3f8b..016d1f8d9e3974a47ec0197223a1ec4fda5ece83 100644 (file)
@@ -12,6 +12,7 @@ use Friendica\Core\L10n;
 use Friendica\Core\PConfig;
 use Friendica\Core\System;
 use Friendica\Database\DBA;
+use Friendica\Model\Contact;
 use Friendica\Util\DateTimeFormat;
 use Friendica\Util\Map;
 
@@ -48,9 +49,13 @@ class Event extends BaseObject
                }
 
                if ($simple) {
-                       $o = "<h3>" . BBCode::convert($event['summary'], false, $simple) . "</h3>";
+                       if (!empty($event['summary'])) {
+                               $o = "<h3>" . BBCode::convert($event['summary'], false, $simple) . "</h3>";
+                       }
 
-                       $o .= "<div>" . BBCode::convert($event['desc'], false, $simple) . "</div>";
+                       if (!empty($event['desc'])) {
+                               $o .= "<div>" . BBCode::convert($event['desc'], false, $simple) . "</div>";
+                       }
 
                        $o .= "<h4>" . L10n::t('Starts:') . "</h4><p>" . $event_start . "</p>";
 
@@ -58,7 +63,7 @@ class Event extends BaseObject
                                $o .= "<h4>" . L10n::t('Finishes:') . "</h4><p>" . $event_end . "</p>";
                        }
 
-                       if (strlen($event['location'])) {
+                       if (!empty($event['location'])) {
                                $o .= "<h4>" . L10n::t('Location:') . "</h4><p>" . BBCode::convert($event['location'], false, $simple) . "</p>";
                        }
 
@@ -85,7 +90,7 @@ class Event extends BaseObject
                        $o .= '<div class="description event-description">' . BBCode::convert($event['desc'], false, $simple) . '</div>' . "\r\n";
                }
 
-               if (strlen($event['location'])) {
+               if (!empty($event['location'])) {
                        $o .= '<div class="event-location"><span class="event-label">' . L10n::t('Location:') . '</span>&nbsp;<span class="location">'
                                . BBCode::convert($event['location'], false, $simple)
                                . '</span></div>' . "\r\n";
@@ -546,10 +551,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);
@@ -582,6 +590,12 @@ class Event extends BaseObject
                                $title = strip_tags(html_entity_decode($title, ENT_QUOTES, 'UTF-8'));
                        }
 
+                       $author_link = $event['author-link'];
+                       $plink       = $event['plink'];
+
+                       $event['author-link'] = Contact::magicLink($author_link);
+                       $event['plink']       = Contact::magicLink($author_link, $plink);
+
                        $html = self::getHTML($event);
                        $event['desc']     = BBCode::convert($event['desc']);
                        $event['location'] = BBCode::convert($event['location']);