From 2554a99ace47c5e03b0f48977b8adb2567fa668b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Noack?= <noack@data-quest.de>
Date: Fri, 2 Feb 2024 13:02:48 +0000
Subject: [PATCH] =?UTF-8?q?Resolve=20#3566=20"Ank=C3=BCndigung=20bearbeite?=
 =?UTF-8?q?n:=20Der=20Bearbeiter=20wird=20immer=20als=20Ersteller=20einget?=
 =?UTF-8?q?ragen"?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Closes #3566

Merge request studip/studip!2451
---
 app/controllers/news.php | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/app/controllers/news.php b/app/controllers/news.php
index 33c084ce7b0..96ecd927b99 100644
--- a/app/controllers/news.php
+++ b/app/controllers/news.php
@@ -293,6 +293,7 @@ class NewsController extends StudipController
             $news->date           = $news_template->date;
             $news->expire         = $news_template->expire;
             $news->allow_comments = $news_template->allow_comments;
+            $news->user_id        = User::findCurrent()->id;
         } else {
             // for new news, set startdate to today and range to dialog context
             $news->date   = strtotime('today');
@@ -359,6 +360,12 @@ class NewsController extends StudipController
                         'type' => 'checkbox'
                     ],
                     'user_id' => [
+                        'type' => 'hidden',
+                        'mapper' => function () use ($news) {
+                            return $news->user_id ?: User::findCurrent()->id;
+                        }
+                    ],
+                    'chdate_uid' => [
                         'type' => 'no',
                         'mapper' => function () {
                             return User::findCurrent()->id;
@@ -366,8 +373,9 @@ class NewsController extends StudipController
                     ],
                     'author' => [
                         'type' => 'no',
-                        'mapper' => function () {
-                            return get_fullname();
+                        'mapper' => function () use ($news) {
+                            $author = $news->user_id ? User::find($news->user_id): User::findCurrent();
+                            return $author ? $author->getFullname() : '';
                         }
                     ]
                 ]
-- 
GitLab