Projekt

Obecné

Profil

Stáhnout (1.38 KB) Statistiky
| Větev: | Tag: | Revize:
1 d5a16eb6 Filip Jani
<?php
2
3
4
namespace App\AdminModule\Presenters;
5
6
7
use App\AdminModule\Components\IUserEditFormFactory;
8
use App\AdminModule\Components\IUserGridFactory;
9
use App\Model\Facade\UserFacade;
10
11
class UserPresenter extends BaseAdminPresenter
12
{
13
    /**
14
     * @var IUserGridFactory
15
     */
16
    private $userGridFactory;
17
    /**
18
     * @var IUserEditFormFactory
19
     */
20
    private $userEditFormFactory;
21
    /**
22
     * @var UserFacade
23
     */
24
    private $userFacade;
25
26
    public function __construct(IUserGridFactory $userGridFactory,
27
                                IUserEditFormFactory $userEditFormFactory,
28
                                UserFacade $userFacade
29
    )
30
    {
31
        parent::__construct();
32
33
        $this->userGridFactory = $userGridFactory;
34
        $this->userEditFormFactory = $userEditFormFactory;
35
        $this->userFacade = $userFacade;
36
    }
37
38
    public function actionAdd(){}
39
40
    public function actionEdit(int $id)
41
    {
42
        $this['userEditForm']->setUser($id);
43
    }
44
45
    public function handleDeleteUser(int $id)
46
    {
47
        if ($this->isAjax())
48
        {
49
            $this->userFacade->deleteUser($id);
50
            $this['userGrid']->reload();
51
        }
52
    }
53
54
    public function createComponentUserGrid()
55
    {
56
        return $this->userGridFactory->create();
57
    }
58
59
    public function createComponentUserEditForm()
60
    {
61
        return $this->userEditFormFactory->create();
62
    }
63
}