Využití metody presenteru v šabloně
- Tirus91
- Člen | 199
mám metodu checkRights v BasePresenteru a potřeboval bych tuto metodu využít i v šabloně. Jedná se o to, že tato metoda mi kontroluje, zda uživatel je alespoň v jedné z rolí. Zkoušel jsem
$presenter->checkRights(['admin','mod']);
, ale hned mi to vypíše, že parent::checkRights neexistuje. Ta metoda musí být statická?
Nebo to mám dělat jinak?
- David Kudera
- Člen | 455
Nevoláš v té metodě spíš parent::checkRights();
? Pokud
taková metoda v předkovi není, tak to tu chybu vyhodí..
A ještě není moc hezké volat takhle presenter v šabloně. Možná bych si spíš rozšířil třídu User a do ní přidal tuhle metodu. Pak by ti v šabloně stačilo:
{if $user->checkRights([admin, mod])}
- David Matějka
- Moderator | 6445
na rozsirovani Usera se vykasli. Radeji si udelej makro/helper…
edit: a nebo spravne nastav acl a nekontroluj proti roli, ale proti opravneni k resource..
Editoval matej21 (4. 9. 2014 12:52)
- David Kudera
- Člen | 455
Tirus91 napsal(a):
Jak si tu třídu mohu rozšířit aniž bych zasáhl do vendoru?
a ne, vážně volám$presenter->checkRights(['admin','mod']);
jj to vidíme, že voláš tohle, ale já myslel uvnitř té metody checkRights, jestli nevoláš to, co jsem ti napsal…
Jinak ale @matej21 má pravdu, to bude rozhodně lepší