From c83947ab0969693751aed8a66a8c72adb8257f08 Mon Sep 17 00:00:00 2001 From: Maxim Leshchenko Date: Wed, 17 Nov 2021 09:43:55 +0200 Subject: [PATCH] Groups: If the administrator is hidden, create his posts anonymously --- Web/Presenters/WallPresenter.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/Web/Presenters/WallPresenter.php b/Web/Presenters/WallPresenter.php index 325b84a2..5c63f2e4 100644 --- a/Web/Presenters/WallPresenter.php +++ b/Web/Presenters/WallPresenter.php @@ -187,8 +187,17 @@ final class WallPresenter extends OpenVKPresenter if(false) $this->flashFail("err", "Не удалось опубликовать пост", "Пост слишком большой."); - - $anon = OPENVK_ROOT_CONF["openvk"]["preferences"]["wall"]["anonymousPosting"]["enable"] && $this->postParam("anon") === "on"; + + $anon = OPENVK_ROOT_CONF["openvk"]["preferences"]["wall"]["anonymousPosting"]["enable"]; + if($wallOwner instanceof Club && $this->postParam("as_group") === "on" && $this->postParam("force_sign") !== "on" && $anon) { + $manager = $wallOwner->getManager($this->user->identity); + if($manager) + $anon = $manager->isHidden(); + elseif($this->user->identity->getId() === $wallOwner->getOwner()->getId()) + $anon = $wallOwner->isOwnerHidden(); + } else { + $anon = $anon && $this->postParam("anon") === "on"; + } $flags = 0; if($this->postParam("as_group") === "on")