Revize 8b71ca4d
Přidáno uživatelem Jan Šedivý před téměř 6 roky(ů)
app/AdminModule/component/Surface/SurfaceGrid.php | ||
---|---|---|
42 | 42 |
$this->addColumnText(SurfaceTypeRepository::COLUMN_SURFACE_TYPE, 'Surface Type'); |
43 | 43 |
$this->addColumnText(SurfaceTypeRepository::COLUMN_SORTER, 'Sort Position'); |
44 | 44 |
|
45 |
$this->addAction('edit', 'upravit', 'Surface:editType', ['id' => SurfaceTypeRepository::COLUMN_ID])
|
|
45 |
$this->addAction('edit', 'edit', 'Surface:editType', ['id' => SurfaceTypeRepository::COLUMN_ID])
|
|
46 | 46 |
->setTitle('Edit'); |
47 | 47 |
|
48 |
$this->addAction('delete', 'smazat', 'Surface:deleteType', ['id' => SurfaceTypeRepository::COLUMN_ID]) |
|
49 |
->setConfirm('Do you really want to delete surface type "%s"?', SurfaceTypeRepository::COLUMN_SURFACE_TYPE) |
|
50 |
->setTitle('Delete') |
|
51 |
->setClass('btn btn-xs btn-danger ajax'); |
|
52 |
|
|
48 | 53 |
$this->setDefaultPerPage(20); |
49 | 54 |
} |
50 | 55 |
} |
app/AdminModule/component/Surface/SurfaceTypeEditForm.latte | ||
---|---|---|
1 |
<div class="row"> |
|
2 |
<div class="col-4"> |
|
3 |
{control form} |
|
4 |
</div> |
|
5 |
</div> |
app/AdminModule/component/Surface/SurfaceTypeEditFormFactory.php | ||
---|---|---|
1 |
<?php |
|
2 |
|
|
3 |
namespace App\AdminModule\Components; |
|
4 |
|
|
5 |
|
|
6 |
use App\Enum\EFlashMessage; |
|
7 |
use App\Model\Repository\SurfaceTypeRepository; |
|
8 |
use App\Utils\Form; |
|
9 |
use Nette\Application\UI\Control; |
|
10 |
|
|
11 |
class SurfaceTypeEditForm extends Control |
|
12 |
{ |
|
13 |
/** @var SurfaceTypeRepository */ |
|
14 |
private $surfaceTypeRepository; |
|
15 |
|
|
16 |
private $typeId; |
|
17 |
|
|
18 |
/** |
|
19 |
* SurfaceTypeEditForm constructor. |
|
20 |
* @param SurfaceTypeRepository $surfaceTypeRepository |
|
21 |
* @param $typeId |
|
22 |
*/ |
|
23 |
public function __construct($typeId, SurfaceTypeRepository $surfaceTypeRepository) |
|
24 |
{ |
|
25 |
$this->surfaceTypeRepository = $surfaceTypeRepository; |
|
26 |
$this->typeId = $typeId; |
|
27 |
|
|
28 |
parent::__construct(); |
|
29 |
} |
|
30 |
|
|
31 |
public function render() |
|
32 |
{ |
|
33 |
$this->template->setFile(__DIR__ . '/SurfaceTypeEditForm.latte'); |
|
34 |
$this->template->render(); |
|
35 |
} |
|
36 |
|
|
37 |
public function createComponentForm() |
|
38 |
{ |
|
39 |
$form = new Form(); |
|
40 |
|
|
41 |
$form->addText(SurfaceTypeRepository::COLUMN_SURFACE_TYPE, 'Surface Type'); |
|
42 |
$form->addText(SurfaceTypeRepository::COLUMN_SORTER, 'Sorter'); |
|
43 |
|
|
44 |
$form->addSubmit('submit', 'Save'); |
|
45 |
|
|
46 |
$form->onSuccess[] = [$this, 'formSuccess']; |
|
47 |
|
|
48 |
if($this->typeId) |
|
49 |
{ |
|
50 |
$form->setDefaults($this->surfaceTypeRepository->findRow($this->typeId)); |
|
51 |
} |
|
52 |
|
|
53 |
return $form; |
|
54 |
} |
|
55 |
|
|
56 |
public function formSuccess(Form $form) |
|
57 |
{ |
|
58 |
$result = $this->surfaceTypeRepository->save($form->getValues(true), $this->typeId); |
|
59 |
|
|
60 |
if ($result) |
|
61 |
{ |
|
62 |
$this->presenter->flashMessage('Surface type was successfully saved.', EFlashMessage::SUCCESS); |
|
63 |
$this->presenter->redirect('Surface:'); |
|
64 |
} else |
|
65 |
{ |
|
66 |
$this->presenter->flashMessage('Uživatele se nepodařilo upravit.', EFlashMessage::ERROR); |
|
67 |
} |
|
68 |
} |
|
69 |
} |
|
70 |
|
|
71 |
interface ISurfaceTypeEditFormFactory |
|
72 |
{ |
|
73 |
/** |
|
74 |
* @param $typeId |
|
75 |
* @return SurfaceTypeEditForm |
|
76 |
*/ |
|
77 |
public function create($typeId); |
|
78 |
} |
app/AdminModule/presenters/SurfacePresenter.php | ||
---|---|---|
3 | 3 |
namespace App\AdminModule\Presenters; |
4 | 4 |
|
5 | 5 |
|
6 |
use App\AdminModule\Components\ISurfaceTypeEditFormFactory; |
|
6 | 7 |
use App\AdminModule\Components\ISurfaceTypeGridFactory; |
7 | 8 |
|
8 | 9 |
class SurfacePresenter extends BaseAdminPresenter |
... | ... | |
10 | 11 |
/** @var ISurfaceTypeGridFactory */ |
11 | 12 |
private $surfaceTypeGridFactory; |
12 | 13 |
|
14 |
/** @var ISurfaceTypeEditFormFactory */ |
|
15 |
private $surfaceTypeEditFormFactory; |
|
16 |
|
|
13 | 17 |
private $typeId; |
14 | 18 |
|
15 | 19 |
/** |
16 | 20 |
* SurfacePresenter constructor. |
17 | 21 |
* @param ISurfaceTypeGridFactory $surfaceTypeGridFactory |
22 |
* @param ISurfaceTypeEditFormFactory $surfaceTypeEditFormFactory |
|
18 | 23 |
*/ |
19 |
public function __construct(ISurfaceTypeGridFactory $surfaceTypeGridFactory) |
|
24 |
public function __construct( |
|
25 |
ISurfaceTypeGridFactory $surfaceTypeGridFactory, |
|
26 |
ISurfaceTypeEditFormFactory $surfaceTypeEditFormFactory |
|
27 |
) |
|
20 | 28 |
{ |
21 | 29 |
parent::__construct(); |
22 | 30 |
|
23 | 31 |
$this->surfaceTypeGridFactory = $surfaceTypeGridFactory; |
32 |
$this->surfaceTypeEditFormFactory = $surfaceTypeEditFormFactory; |
|
24 | 33 |
} |
25 | 34 |
|
26 | 35 |
public function actionAddType() |
... | ... | |
28 | 37 |
|
29 | 38 |
} |
30 | 39 |
|
31 |
public function actionEditType($id) |
|
40 |
public function actionEditType(int $id)
|
|
32 | 41 |
{ |
33 |
|
|
42 |
$this->typeId = $id; |
|
34 | 43 |
} |
35 | 44 |
|
36 |
public function actionDeleteType($id) |
|
45 |
public function actionDeleteType(int $id)
|
|
37 | 46 |
{ |
38 | 47 |
|
39 | 48 |
} |
... | ... | |
42 | 51 |
{ |
43 | 52 |
return $this->surfaceTypeGridFactory->create(); |
44 | 53 |
} |
54 |
|
|
55 |
public function createComponentSurfaceTypeEditForm() |
|
56 |
{ |
|
57 |
return $this->surfaceTypeEditFormFactory->create($this->typeId); |
|
58 |
} |
|
45 | 59 |
} |
app/AdminModule/templates/Surface/addType.latte | ||
---|---|---|
1 |
{block content} |
|
2 |
<div class="row"> |
|
3 |
<div class="col-10"> |
|
4 |
<div class="display-5">New Surface Type</div> |
|
5 |
</div> |
|
6 |
<div class="col-2 text-right"> |
|
7 |
<a n:href="Surface:default" class="btn btn-sm btn-success"><span class="fa fa-fw fa-list"></span> Surface Types</a> |
|
8 |
</div> |
|
9 |
</div> |
|
10 |
{control surfaceTypeEditForm} |
|
11 |
{/block} |
app/AdminModule/templates/Surface/default.latte | ||
---|---|---|
1 | 1 |
{block content} |
2 |
{control surfaceTypeGrid} |
|
2 |
<div class="row"> |
|
3 |
<div class="col-10"> |
|
4 |
<div class="display-5">Surface Types</div> |
|
5 |
</div> |
|
6 |
<div class="col-2 text-right"> |
|
7 |
<a n:href="Surface:addType" class="btn btn-sm btn-success"><span class="fa fa-fw fa-plus"></span> New Surface Type</a> |
|
8 |
</div> |
|
9 |
</div> |
|
10 |
<div class="row"> |
|
11 |
<div class="col-10 offset-1"> |
|
12 |
{control surfaceTypeGrid} |
|
13 |
</div> |
|
14 |
</div> |
|
15 |
|
|
3 | 16 |
{/block} |
app/AdminModule/templates/Surface/editType.latte | ||
---|---|---|
1 |
{block content} |
|
2 |
<div class="row"> |
|
3 |
<div class="col-10"> |
|
4 |
<div class="display-5">Edit Surface Type</div> |
|
5 |
</div> |
|
6 |
<div class="col-2 text-right"> |
|
7 |
<a n:href="Surface:default" class="btn btn-sm btn-success"><span class="fa fa-fw fa-list"></span> Surface Types</a> |
|
8 |
</div> |
|
9 |
</div> |
|
10 |
{control surfaceTypeEditForm} |
|
11 |
{/block} |
app/AdminModule/templates/User/add.latte | ||
---|---|---|
1 | 1 |
{block content} |
2 | 2 |
<div class="row"> |
3 |
<div class="col-11">
|
|
4 |
<h4>Administrace - Nový uživatel</h4>
|
|
3 |
<div class="col-10">
|
|
4 |
<div class="display-5">Administrace - Nový uživatel</div>
|
|
5 | 5 |
</div> |
6 |
<div class="col-1">
|
|
6 |
<div class="col-2 text-right">
|
|
7 | 7 |
<a n:href="User:default" class="btn btn-sm btn-success"><span class="fa fa-fw fa-list"></span> Seznam uživatelů</a> |
8 | 8 |
</div> |
9 | 9 |
</div> |
app/AdminModule/templates/User/default.latte | ||
---|---|---|
1 | 1 |
{block content} |
2 | 2 |
<div class="row"> |
3 |
<div class="col-11">
|
|
4 |
<h4>Administrace - Seznam uživatelů</h4>
|
|
3 |
<div class="col-10">
|
|
4 |
<div class="display-5">Administrace - Seznam uživatelů</div>
|
|
5 | 5 |
</div> |
6 |
<div class="col-1">
|
|
6 |
<div class="col-2 text-right">
|
|
7 | 7 |
<a n:href="User:add" class="btn btn-sm btn-success"><span class="fa fa-fw fa-plus"></span> Přidat uživatele</a> |
8 | 8 |
</div> |
9 | 9 |
</div> |
app/AdminModule/templates/User/edit.latte | ||
---|---|---|
1 | 1 |
{block content} |
2 | 2 |
<div class="row"> |
3 |
<div class="col-11">
|
|
4 |
<h4>Administrace - Editace uživatele</h4>
|
|
3 |
<div class="col-10">
|
|
4 |
<div class="display-5">Administrace - Editace uživatele</div>
|
|
5 | 5 |
</div> |
6 |
<div class="col-1">
|
|
6 |
<div class="col-2 text-right">
|
|
7 | 7 |
<a n:href="User:default" class="btn btn-sm btn-success"><span class="fa fa-fw fa-list"></span> Seznam uživatelů</a> |
8 | 8 |
</div> |
9 | 9 |
</div> |
app/config/components.neon | ||
---|---|---|
9 | 9 |
- App\FrontModule\Components\ILoginFormFactory |
10 | 10 |
- App\AdminModule\Components\IUserEditFormFactory |
11 | 11 |
- App\FrontModule\Components\ITransliterationSearchFormFactory |
12 |
- App\AdminModule\Components\ISurfaceTypeEditFormFactory |
|
12 | 13 |
- App\AdminModule\Components\IMuseumEditFormFactory |
Také k dispozici: Unified diff
Re #7336 Formuláře pro úpravu typů povrchu