Po rozdělení webu na Front a Admin přestaly fungotat funkce v presenterech

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Rellik
Člen | 104
+
0
-

Zdravím,
narazil sem na jeden problémek. Rozdělil sem web na veřejnou část (FrontModule) a administrační část (AdminModule). Po této úpravě my přestaly fungovat volané funkce.
Příklad:
V souboru app/FrontModule/presenters/gallery.php mám funkci randImage(), která má za úkol zobrazovat náhodné fotky z galerie. V templatu ji volám

...{randImage($gal->folder)} (přiřadí se složka ze které to pak vypisuje

Dokud bylo všechno dohromady (nebyl Front a Admin), tak všechno fungovalo.
Po úpravě mi laděnka vyhodí eror:
Fatal Error
Call to undefined function randImage()

Proč tomu tak je? Když jinak celý web funguje?
Zkusil sem tu funkci dát do BasePresenter.php a tak to funguje. Příde mi ale trochu blbé nacpat pak všechny funkce právě sem… :-/
Poradí někdo jak to napravit, případně jestli je to standardní chování?

EDIT: ještě mě teď napadlo, vykuchat ty funkce do jednotlivých souborů, uložit je to složky libs a pomocí require je volat jen tam, kde budou potřeba.

Díky za odpovědi… :)

PetrLz
Člen | 8
+
0
-

Ahoj,
a mas v kazdem modulu definovan nejaky presenter od ktereho ty ostatni dedi v tom modulu ? Osobne bych si na ty funkce vytvořil komponenty a ty pak nahazel do presenteru, od ktereho dedi ostatni v modulu.

Fandik
Člen | 19
+
0
-

Když jsi to rozházel na Front a Admin module, tak jsi přidával každému modulu namespace? Pokud ano, problém bude možná tady.

Editoval Fandik (25. 2. 2012 10:57)

Rellik
Člen | 104
+
0
-

Chlapi díky za rady. Nakonec sem to vyřešil těmi samostatnými funkcemi v libs a následně jejich použití jen tam kde jsou potřeba (require). Funguje to parádně. Je to na ten můj projekt http://nette.rellik.eu/
Už sem to nahrál i na web. Ještě to musím ale pořádně projít a odladit to… :-)

Jamicon
Člen | 19
+
0
-

Rellik napsal(a):

Chlapi díky za rady. Nakonec sem to vyřešil těmi samostatnými funkcemi v libs a následně jejich použití jen tam kde jsou potřeba (require). Funguje to parádně. Je to na ten můj projekt http://nette.rellik.eu/
Už sem to nahrál i na web. Ještě to musím ale pořádně projít a odladit to… :-)

Trošku neobvyklé nastavenie: klikol som na odkaz a ukázala sa mi ladenka (som na domácej pevnej ip adrese) s chybou:

Undefined index: HTTP_ACCEPT_CHARSET
Rellik
Člen | 104
+
0
-

Jamicon napsal(a):

Rellik napsal(a):

Chlapi díky za rady. Nakonec sem to vyřešil těmi samostatnými funkcemi v libs a následně jejich použití jen tam kde jsou potřeba (require). Funguje to parádně. Je to na ten můj projekt http://nette.rellik.eu/
Už sem to nahrál i na web. Ještě to musím ale pořádně projít a odladit to… :-)

Trošku neobvyklé nastavenie: klikol som na odkaz a ukázala sa mi ladenka (som na domácej pevnej ip adrese) s chybou:

Undefined index: HTTP_ACCEPT_CHARSET

Hmm zajímavé. M2lo by to zjistit nastavení prohlížeče pro součást ověření návštěv..
81. řádek https://github.com/…resenter.php
php manuál: http://cz.php.net/…s.server.php
No když to oddělám, tak se taky nic závažného nestane… :)
Díky za upozornění.