From b819bab2015da7d83aec39e014bd9302700ed252 Mon Sep 17 00:00:00 2001
From: Martin Leblanc <m26lebla@uwaterloo.ca>
Date: Thu, 8 Sep 2022 14:08:22 -0400
Subject: [PATCH] ISTWCMS-5709: removing the author from the teaser for news
 and blog

---
 src/Service/UwNodeContent.php | 36 +++++++++++++++++++++++------------
 1 file changed, 24 insertions(+), 12 deletions(-)

diff --git a/src/Service/UwNodeContent.php b/src/Service/UwNodeContent.php
index 596fcb32..d49c237e 100644
--- a/src/Service/UwNodeContent.php
+++ b/src/Service/UwNodeContent.php
@@ -54,11 +54,11 @@ class UwNodeContent {
     switch ($node->getType()) {
 
       case 'uw_ct_blog':
-        $content_data = $this->getBlogContent($node_flags);
+        $content_data = $this->getBlogContent($node_flags, $view_mode);
         break;
 
       case 'uw_ct_event':
-        $content_data = $this->getEventContent($node_flags);
+        $content_data = $this->getEventContent($node_flags, $view_mode);
         break;
 
       case 'uw_ct_expand_collapse_group':
@@ -66,7 +66,7 @@ class UwNodeContent {
         break;
 
       case 'uw_ct_news_item':
-        $content_data = $this->getNewsContent($node_flags);
+        $content_data = $this->getNewsContent($node_flags, $view_mode);
         break;
 
       case 'uw_ct_web_page':
@@ -237,21 +237,26 @@ class UwNodeContent {
    *
    * @param array $node_flags
    *   The flags for the node.
+   * @param string $view_mode
+   *   The view mode of the node.
    *
    * @return array
    *   Array of content to get from the node.
    */
-  public function getBlogContent(array $node_flags): array {
+  public function getBlogContent(array $node_flags, string $view_mode): array {
 
     // Get the content data.
     $content_data = $this->setupContentData($node_flags);
 
     // Setup the header content.
     if ($node_flags['get_header']) {
-      $content_data['header']['date'] = $this->addToContentData('date', 'field_uw_blog_date');
-      $content_data['header']['author'] = $this->addToContentData('author', 'field_author');
+      if ($view_mode == 'teaser') {
+        $content_data['header']['date'] = $this->addToContentData('date', 'field_uw_blog_date');
+      } else {
+        $content_data['header']['date'] = $this->addToContentData('date', 'field_uw_blog_date');
+        $content_data['header']['author'] = $this->addToContentData('author', 'field_author');
+      }
     }
-
     // Get the media.
     if ($node_flags['get_media']) {
       $content_data['media'] = $this->addToContentData('media', NULL);
@@ -290,7 +295,8 @@ class UwNodeContent {
    *
    * @param array $node_flags
    *   The flags for the node.
-   *
+   * @param string $view_mode
+   *   The view mode of the node.
    * @return array
    *   Array of content to get from the node.
    */
@@ -382,20 +388,26 @@ class UwNodeContent {
    *
    * @param array $node_flags
    *   The flags for the node.
-   *
+   * @param string $view_mode
+   *   The view mode of the node.
    * @return array
    *   Array of content to get from the node.
    */
-  public function getNewsContent(array $node_flags): array {
+  public function getNewsContent(array $node_flags, string $view_mode): array {
 
     // Get the content data.
     $content_data = $this->setupContentData($node_flags);
 
     // Setup the header content.
     if ($node_flags['get_header']) {
-      $content_data['header']['date'] = $this->addToContentData('date', 'field_uw_news_date');
+      if ($view_mode == 'teaser') {
+        $content_data['header']['date'] = $this->addToContentData('date', 'field_uw_news_date');
+      }
+      else{
+        $content_data['header']['date'] = $this->addToContentData('date', 'field_uw_news_date');
+        $content_data['header']['author'] = $this->addToContentData('author', 'field_author');
+      }
     }
-
     // Get the media.
     if ($node_flags['get_media']) {
       $content_data['media'] = $this->addToContentData('media', NULL);
-- 
GitLab