Passed
Push — Showing-Posts ( 4125ee...65a5c0 )
by Stone
02:18
created

Category   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 12
dl 0
loc 24
rs 10
c 0
b 0
f 0
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A posts() 0 13 1
A __construct() 0 4 1
1
<?php
2
3
namespace App\Controllers;
4
5
use App\Models\CategoryModel;
6
use App\Models\PostModel;
7
use App\Models\SlugModel;
8
use Core\Container;
9
use Core\Controller;
10
11
class Category extends Controller
12
{
13
14
    protected $siteConfig;
15
16
    public function __construct(Container $container)
17
    {
18
        $this->loadModules[] = 'SiteConfig';
19
        parent::__construct($container);
20
    }
21
22
    public function posts(string $categorySlug)
23
    {
24
        $slugModel = new SlugModel($this->container);
25
        $postModel = new PostModel($this->container);
26
        $categoryModel = new CategoryModel($this->container);
27
28
        $this->data['configs'] = $this->siteConfig->getSiteConfig();
29
30
        $categoryId = $slugModel->getIdFromSlug($categorySlug, "categories", "categories_slug", "idcategories");
31
        $this->data['navigation'] = $categoryModel->getMenu();
32
        $this->data['posts'] = $postModel->getPostsInCategory($categoryId);
33
34
        $this->renderView('Category');
35
36
    }
37
}