Sfoglia il codice sorgente

Heartbeat.php -> better handling of heartbeats capturing statuses

logicp 7 anni fa
parent
commit
68eeebcc71
1 ha cambiato i file con 36 aggiunte e 12 eliminazioni
  1. 36 12
      src/Entity/Heartbeat.php

+ 36 - 12
src/Entity/Heartbeat.php

@@ -411,22 +411,46 @@ class Heartbeat extends RevisionableContentEntityBase implements HeartbeatInterf
    * @return null|string
    */
   public static function buildMessage(Token $tokenService, $preparsedMessage, $entities = NULL, $entityType, $mediaData = NULL) {
-    $options = null;
-    if ($entityType === 'flag') {
 
-      $returnMessage = self::handleMultipleEntities($tokenService, $preparsedMessage, $entities);
-//      $returnMessage = "jigga";
-      return strlen($returnMessage) > 0 ? $returnMessage : "Error creating message";
+    switch (true) {
 
-    }
+      case $entityType === 'node':
+
+        $parsedMessage = $tokenService->replace($preparsedMessage . '<a href="/node/[node:nid]">', $entities);
+        /** @noinspection NestedTernaryOperatorInspection */
+        $message = $parsedMessage;
+        $message .= $mediaData ? self::buildMediaMarkup($mediaData) : '';
+        $message .= '</a>';
+
+        return $message;
+        break;
+
+      case $entityType === 'status':
+
+        $parsedMessage = $tokenService->replace($preparsedMessage . '<a href="/admin/structure/' . $entityType . '/[' . $entityType . ':id]">', $entities);
+        /** @noinspection NestedTernaryOperatorInspection */
+        $message = $parsedMessage;
+        $message .= $mediaData ? self::buildMediaMarkup($mediaData) : 'Post';
+        $message .= '</a>';
+
+        return $message;
+
+        break;
 
-    $parsedMessage = $tokenService->replace($preparsedMessage . '<a href="/node/[node:nid]">', $entities);
-    /** @noinspection NestedTernaryOperatorInspection */
-    $message = $parsedMessage;
-    $message .= $mediaData ? self::buildMediaMarkup($mediaData) : '';
-    $message .= '</a>';
+      case $entityType === 'user':
+
+        break;
+
+      case $entityType === 'flag':
+
+        $returnMessage = self::handleMultipleEntities($tokenService, $preparsedMessage, $entities);
+
+        return strlen($returnMessage) > 0 ? $returnMessage : "Error creating message";
+
+        break;
+
+    }
 
-    return $message;
   }