From 77e1c99fcf2b3dd6957cf748e2172b6f594842e0 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Tue, 30 May 2023 02:37:03 +0200 Subject: [PATCH 1/4] remove getId() --- Models/NewsArticle.php | 12 ------------ Models/NewsSeen.php | 11 ----------- 2 files changed, 23 deletions(-) diff --git a/Models/NewsArticle.php b/Models/NewsArticle.php index 66cb341..e95d8cb 100755 --- a/Models/NewsArticle.php +++ b/Models/NewsArticle.php @@ -173,18 +173,6 @@ class NewsArticle implements \JsonSerializable $this->publish = new \DateTime('now'); } - /** - * Get id - * - * @return int - * - * @since 1.0.0 - */ - public function getId() : int - { - return $this->id; - } - /** * Get news language * diff --git a/Models/NewsSeen.php b/Models/NewsSeen.php index 3849d59..9c939a3 100755 --- a/Models/NewsSeen.php +++ b/Models/NewsSeen.php @@ -48,15 +48,4 @@ class NewsSeen $this->seenAt = new \DateTime('now'); } - /** - * Get id - * - * @return int - * - * @since 1.0.0 - */ - public function getId() : int - { - return $this->id; - } } From bc2b120c57351618d5b4d1cbffa651adc6ffe49d Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Tue, 30 May 2023 03:42:48 +0200 Subject: [PATCH 2/4] use direct data access for response data --- Controller/ApiController.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Controller/ApiController.php b/Controller/ApiController.php index 78e61e0..afba589 100755 --- a/Controller/ApiController.php +++ b/Controller/ApiController.php @@ -145,7 +145,7 @@ final class ApiController extends Controller public function apiNewsCreate(RequestAbstract $request, ResponseAbstract $response, mixed $data = null) : void { if (!empty($val = $this->validateNewsCreate($request))) { - $response->set('news_create', new FormValidation($val)); + $response->data['news_create'] = new FormValidation($val); $response->header->status = RequestStatusCode::R_400; return; @@ -154,7 +154,7 @@ final class ApiController extends Controller $newsArticle = $this->createNewsArticleFromRequest($request); $this->createModel($request->header->account, $newsArticle, NewsArticleMapper::class, 'news', $request->getOrigin()); - if (!empty($request->getFiles()) + if (!empty($request->files) || !empty($request->getDataJson('media')) ) { $this->createNewsMedia($newsArticle, $request); @@ -180,7 +180,7 @@ final class ApiController extends Controller /** @var \Modules\Admin\Models\Account $account */ $account = AccountMapper::get()->where('id', $request->header->account)->execute(); - if (!empty($uploadedFiles = $request->getFiles())) { + if (!empty($uploadedFiles = $request->files)) { $uploaded = $this->app->moduleManager->get('Media')->uploadFiles( names: [], fileNames: [], From b1457fe4caa93a8475a337acec79d6d42d66adfc Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Tue, 30 May 2023 04:15:38 +0200 Subject: [PATCH 3/4] continue with getter/setter removal --- Controller/ApiController.php | 2 +- Controller/BackendController.php | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Controller/ApiController.php b/Controller/ApiController.php index afba589..3194406 100755 --- a/Controller/ApiController.php +++ b/Controller/ApiController.php @@ -328,7 +328,7 @@ final class ApiController extends Controller $newsArticle->title = $request->getDataString('title') ?? ''; $newsArticle->plain = $request->getDataString('plain') ?? ''; $newsArticle->content = Markdown::parse($request->getDataString('plain') ?? ''); - $newsArticle->setLanguage(\strtolower($request->getDataString('lang') ?? $request->getLanguage())); + $newsArticle->setLanguage(\strtolower($request->getDataString('lang') ?? $request->header->l11n->language)); $newsArticle->setType($request->getDataInt('type') ?? NewsType::ARTICLE); $newsArticle->setStatus($request->getDataInt('status') ?? NewsStatus::VISIBLE); $newsArticle->isFeatured = $request->getDataBool('featured') ?? true; diff --git a/Controller/BackendController.php b/Controller/BackendController.php index c5b0318..0a4b59c 100755 --- a/Controller/BackendController.php +++ b/Controller/BackendController.php @@ -62,8 +62,8 @@ final class BackendController extends Controller implements DashboardElementInte ->with('tags/title') ->where('status', NewsStatus::VISIBLE) ->where('publish', new \DateTime('now'), '<=') - ->where('language', $response->getLanguage()) - ->where('tags/title/language', $response->getLanguage()); + ->where('language', $response->header->l11n->language) + ->where('tags/title/language', $response->header->l11n->language); /** @var \Modules\News\Models\NewsArticle[] $objs */ $objs = []; @@ -124,8 +124,8 @@ final class BackendController extends Controller implements DashboardElementInte ->with('tags/title') ->where('status', NewsStatus::VISIBLE) ->where('publish', new \DateTime('now'), '<=') - ->where('language', $response->getLanguage()) - ->where('tags/title/language', $response->getLanguage()) + ->where('language', $response->header->l11n->language) + ->where('tags/title/language', $response->header->l11n->language) ->where('id', 0, '>') ->limit(5) ->execute(); @@ -163,8 +163,8 @@ final class BackendController extends Controller implements DashboardElementInte ->with('tags/title') ->where('status', NewsStatus::VISIBLE) ->where('publish', new \DateTime('now'), '<=') - ->where('language', $response->getLanguage()) - ->where('tags/title/language', $response->getLanguage()) + ->where('language', $response->header->l11n->language) + ->where('tags/title/language', $response->header->l11n->language) ->where('id', (int) $request->getData('id')) ->execute(); @@ -240,8 +240,8 @@ final class BackendController extends Controller implements DashboardElementInte ->with('tags/title') ->where('status', NewsStatus::VISIBLE) ->where('publish', new \DateTime('now'), '<=') - ->where('language', $response->getLanguage()) - ->where('tags/title/language', $response->getLanguage()); + ->where('language', $response->header->l11n->language) + ->where('tags/title/language', $response->header->l11n->language); if ($request->getData('ptype') === 'p') { $view->setData('news', From 10d91b29cb58024e0eb36414c5479af42d2e0663 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Tue, 30 May 2023 15:44:21 +0200 Subject: [PATCH 4/4] Continue with getter/setter cleanup --- Controller/BackendController.php | 77 ++++++++++++---------------- Theme/Backend/dashboard-news.tpl.php | 2 +- Theme/Backend/news-analysis.tpl.php | 2 +- Theme/Backend/news-archive.tpl.php | 4 +- Theme/Backend/news-create.tpl.php | 2 +- Theme/Backend/news-dashboard.tpl.php | 6 +-- Theme/Backend/news-draft.tpl.php | 4 +- Theme/Backend/news-single.tpl.php | 6 +-- 8 files changed, 46 insertions(+), 57 deletions(-) diff --git a/Controller/BackendController.php b/Controller/BackendController.php index 0a4b59c..bff73e7 100755 --- a/Controller/BackendController.php +++ b/Controller/BackendController.php @@ -54,7 +54,7 @@ final class BackendController extends Controller implements DashboardElementInte $view = new View($this->app->l11nManager, $request, $response); $view->setTemplate('/Modules/News/Theme/Backend/news-dashboard'); - $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response)); + $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response); $mapperQuery = NewsArticleMapper::getAll() ->with('createdBy') @@ -72,19 +72,19 @@ final class BackendController extends Controller implements DashboardElementInte $objs = $mapperQuery->where('id', $request->getDataInt('id') ?? 0, '<') ->limit(25)->execute(); - $view->setData('news', $objs); + $view->data['news'] = $objs; } elseif ($request->getData('ptype') === 'n') { /** @var \Modules\News\Models\NewsArticle[] $objs */ $objs = $mapperQuery->where('id', $request->getDataInt('id') ?? 0, '>') ->limit(25)->execute(); - $view->setData('news', $objs); + $view->data['news'] = $objs; } else { /** @var \Modules\News\Models\NewsArticle[] $objs */ $objs = $mapperQuery->where('id', 0, '>') ->limit(25)->execute(); - $view->setData('news', $objs); + $view->data['news'] = $objs; } $ids = []; @@ -103,7 +103,7 @@ final class BackendController extends Controller implements DashboardElementInte $seen[] = $seenObject->news; } - $view->setData('seen', $seen); + $view->data['seen'] = $seen; return $view; } @@ -130,7 +130,7 @@ final class BackendController extends Controller implements DashboardElementInte ->limit(5) ->execute(); - $view->addData('news', $news); + $view->data['news'] = $news; return $view; } @@ -195,11 +195,10 @@ final class BackendController extends Controller implements DashboardElementInte } $view->setTemplate('/Modules/News/Theme/Backend/news-single'); - $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response)); - $view->addData('news', $article); - $view->addData('editable', $this->app->accountManager->get($accountId)->hasPermission( - PermissionType::MODIFY, $this->app->unitId, $this->app->appId, self::NAME, PermissionCategory::NEWS, $article->id) - ); + $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response); + $view->data['news'] = $article; + $view->data['editable'] = $this->app->accountManager->get($accountId)->hasPermission( + PermissionType::MODIFY, $this->app->unitId, $this->app->appId, self::NAME, PermissionCategory::NEWS, $article->id); // allow comments if (!$article->comments !== null @@ -208,8 +207,8 @@ final class BackendController extends Controller implements DashboardElementInte $commentCreateView = new \Modules\Comments\Theme\Backend\Components\Comment\CreateView($this->app->l11nManager, $request, $response); $commentListView = new \Modules\Comments\Theme\Backend\Components\Comment\ListView($this->app->l11nManager, $request, $response); - $view->addData('commentCreate', $commentCreateView); - $view->addData('commentList', $commentListView); + $view->data['commentCreate'] = $commentCreateView; + $view->data['commentList'] = $commentListView; } return $view; @@ -232,7 +231,7 @@ final class BackendController extends Controller implements DashboardElementInte $view = new View($this->app->l11nManager, $request, $response); $view->setTemplate('/Modules/News/Theme/Backend/news-archive'); - $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response)); + $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response); $mapperQuery = NewsArticleMapper::getAll() ->with('createdBy') @@ -244,20 +243,14 @@ final class BackendController extends Controller implements DashboardElementInte ->where('tags/title/language', $response->header->l11n->language); if ($request->getData('ptype') === 'p') { - $view->setData('news', - $mapperQuery->where('id', $request->getDataInt('id') ?? 0, '<') - ->limit(25)->execute() - ); + $view->data['news'] = $mapperQuery->where('id', $request->getDataInt('id') ?? 0, '<') + ->limit(25)->execute(); } elseif ($request->getData('ptype') === 'n') { - $view->setData('news', - $mapperQuery->where('id', $request->getDataInt('id') ?? 0, '>') - ->limit(25)->execute() - ); + $view->data['news'] = $mapperQuery->where('id', $request->getDataInt('id') ?? 0, '>') + ->limit(25)->execute(); } else { - $view->setData('news', - $mapperQuery->where('id', 0, '>') - ->limit(25)->execute() - ); + $view->data['news'] = $mapperQuery->where('id', 0, '>') + ->limit(25)->execute(); } return $view; @@ -280,18 +273,14 @@ final class BackendController extends Controller implements DashboardElementInte $view = new View($this->app->l11nManager, $request, $response); $view->setTemplate('/Modules/News/Theme/Backend/news-draft'); - $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response)); + $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response); if ($request->getData('ptype') === 'p') { - $view->setData('news', - NewsArticleMapper::getAll()->where('id', $request->getDataInt('id') ?? 0, '<')->where('status', NewsStatus::DRAFT)->limit(25)->execute() - ); + $view->data['news'] = NewsArticleMapper::getAll()->where('id', $request->getDataInt('id') ?? 0, '<')->where('status', NewsStatus::DRAFT)->limit(25)->execute(); } elseif ($request->getData('ptype') === 'n') { - $view->setData('news', - NewsArticleMapper::getAll()->where('id', $request->getDataInt('id') ?? 0, '>')->where('status', NewsStatus::DRAFT)->limit(25)->execute() - ); + $view->data['news'] = NewsArticleMapper::getAll()->where('id', $request->getDataInt('id') ?? 0, '>')->where('status', NewsStatus::DRAFT)->limit(25)->execute(); } else { - $view->setData('news', NewsArticleMapper::getAll()->where('id', 0, '>')->where('status', NewsStatus::DRAFT)->limit(25)->execute()); + $view->data['news'] = NewsArticleMapper::getAll()->where('id', 0, '>')->where('status', NewsStatus::DRAFT)->limit(25)->execute(); } return $view; @@ -314,16 +303,16 @@ final class BackendController extends Controller implements DashboardElementInte $view = new View($this->app->l11nManager, $request, $response); $view->setTemplate('/Modules/News/Theme/Backend/news-create'); - $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response)); + $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response); $editor = new \Modules\Editor\Theme\Backend\Components\Editor\BaseView($this->app->l11nManager, $request, $response); - $view->addData('editor', $editor); + $view->data['editor'] = $editor; $accGrpSelector = new \Modules\Profile\Theme\Backend\Components\AccountGroupSelector\BaseView($this->app->l11nManager, $request, $response); - $view->addData('accGrpSelector', $accGrpSelector); + $view->data['accGrpSelector'] = $accGrpSelector; $tagSelector = new \Modules\Tag\Theme\Backend\Components\TagSelector\BaseView($this->app->l11nManager, $request, $response); - $view->addData('tagSelector', $tagSelector); + $view->data['tagSelector'] = $tagSelector; return $view; } @@ -345,18 +334,18 @@ final class BackendController extends Controller implements DashboardElementInte $view = new View($this->app->l11nManager, $request, $response); $view->setTemplate('/Modules/News/Theme/Backend/news-create'); - $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response)); + $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response); $editor = new \Modules\Editor\Theme\Backend\Components\Editor\BaseView($this->app->l11nManager, $request, $response); - $view->addData('editor', $editor); + $view->data['editor'] = $editor; $accGrpSelector = new \Modules\Profile\Theme\Backend\Components\AccountGroupSelector\BaseView($this->app->l11nManager, $request, $response); - $view->addData('accGrpSelector', $accGrpSelector); + $view->data['accGrpSelector'] = $accGrpSelector; $tagSelector = new \Modules\Tag\Theme\Backend\Components\TagSelector\BaseView($this->app->l11nManager, $request, $response); - $view->addData('tagSelector', $tagSelector); + $view->data['tagSelector'] = $tagSelector; - $view->addData('news', NewsArticleMapper::get()->where('id', $request->getDataInt('id') ?? 0)->execute()); + $view->data['news'] = NewsArticleMapper::get()->where('id', $request->getDataInt('id') ?? 0)->execute(); return $view; } @@ -378,7 +367,7 @@ final class BackendController extends Controller implements DashboardElementInte $view = new View($this->app->l11nManager, $request, $response); $view->setTemplate('/Modules/News/Theme/Backend/news-analysis'); - $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response)); + $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1000601001, $request, $response); return $view; } diff --git a/Theme/Backend/dashboard-news.tpl.php b/Theme/Backend/dashboard-news.tpl.php index ba9185e..e9208c2 100755 --- a/Theme/Backend/dashboard-news.tpl.php +++ b/Theme/Backend/dashboard-news.tpl.php @@ -19,7 +19,7 @@ use phpOMS\Uri\UriFactory; * @var \phpOMS\Views\View $this */ -$newsList = $this->getData('news') ?? []; +$newsList = $this->data['news'] ?? []; ?>
diff --git a/Theme/Backend/news-analysis.tpl.php b/Theme/Backend/news-analysis.tpl.php index 737839d..98d0b41 100755 --- a/Theme/Backend/news-analysis.tpl.php +++ b/Theme/Backend/news-analysis.tpl.php @@ -14,5 +14,5 @@ declare(strict_types=1); // @todo: stats: published timeline, published by tags, published by author -echo $this->getData('nav')->render(); ?> +echo $this->data['nav']->render(); ?> diff --git a/Theme/Backend/news-archive.tpl.php b/Theme/Backend/news-archive.tpl.php index e4f8a84..7fc5d12 100755 --- a/Theme/Backend/news-archive.tpl.php +++ b/Theme/Backend/news-archive.tpl.php @@ -16,12 +16,12 @@ use phpOMS\Uri\UriFactory; /** @var \phpOMS\Views\View $this */ /** @var \Modules\News\Models\NewsArticle[] $newsList */ -$newsList = $this->getData('news') ?? []; +$newsList = $this->data['news'] ?? []; $previous = empty($newsList) ? 'news/archive' : 'news/archive?{?}&id=' . \reset($newsList)->id . '&ptype=p'; $next = empty($newsList) ? 'news/archive' : 'news/archive?{?}&id=' . \end($newsList)->id . '&ptype=n'; -echo $this->getData('nav')->render(); ?> +echo $this->data['nav']->render(); ?>
diff --git a/Theme/Backend/news-create.tpl.php b/Theme/Backend/news-create.tpl.php index 7e2de3a..97174bf 100755 --- a/Theme/Backend/news-create.tpl.php +++ b/Theme/Backend/news-create.tpl.php @@ -23,7 +23,7 @@ $isNewArticle = $news->id === 0; $languages = \phpOMS\Localization\ISO639Enum::getConstants(); /** @var \phpOMS\Views\View $this */ -echo $this->getData('nav')->render(); ?> +echo $this->data['nav']->render(); ?>
diff --git a/Theme/Backend/news-dashboard.tpl.php b/Theme/Backend/news-dashboard.tpl.php index 2e58ddd..747b18e 100755 --- a/Theme/Backend/news-dashboard.tpl.php +++ b/Theme/Backend/news-dashboard.tpl.php @@ -17,13 +17,13 @@ use phpOMS\Utils\Parser\Markdown\Markdown; /** @var \phpOMS\Views\View $this */ /** @var \Modules\News\Models\NewsArticle[] $newsList */ -$newsList = $this->getData('news'); -$seen = $this->getData('seen') ?? []; +$newsList = $this->data['news']; +$seen = $this->data['seen'] ?? []; $previous = empty($newsList) ? 'news/dashboard' : 'news/dashboard?{?}&id=' . \reset($newsList)->id . '&ptype=p'; $next = empty($newsList) ? 'news/dashboard' : 'news/dashboard?{?}&id=' . \end($newsList)->id . '&ptype=n'; -echo $this->getData('nav')->render(); ?> +echo $this->data['nav']->render(); ?>
getData('news') ?? []; +$newsList = $this->data['news'] ?? []; $previous = empty($newsList) ? 'news/archive' : 'news/archive?{?}&id=' . \reset($newsList)->id . '&ptype=p'; $next = empty($newsList) ? 'news/archive' : 'news/archive?{?}&id=' . \end($newsList)->id . '&ptype=n'; -echo $this->getData('nav')->render(); ?> +echo $this->data['nav']->render(); ?>
diff --git a/Theme/Backend/news-single.tpl.php b/Theme/Backend/news-single.tpl.php index e84b6b3..38d7e27 100755 --- a/Theme/Backend/news-single.tpl.php +++ b/Theme/Backend/news-single.tpl.php @@ -16,10 +16,10 @@ use Modules\Comments\Models\CommentListStatus; use phpOMS\Uri\UriFactory; /** @var \Modules\News\Models\NewsArticle $news */ -$news = $this->getData('news'); +$news = $this->data['news']; /** @var bool $editable */ -$editable = $this->getData('editable'); +$editable = $this->data['editable']; /** @var \Modules\Tag\Models\Tag[] $tags */ $tags = $news->getTags(); @@ -27,7 +27,7 @@ $tags = $news->getTags(); $profile = UriFactory::build('profile/single?{?}&id=' . $news->createdBy->id); /** @var \phpOMS\Views\View $this */ -echo $this->getData('nav')->render(); ?> +echo $this->data['nav']->render(); ?>