Front Kontroler: http://www.unit1.pl/pb-905
Rozszerzenie (dołączone przez Front Kontroler): http://www.unit1.pl/pb-906
W klasie Content zdefiniowałem 2 zmienne. Są to:
* $content->dir - z szablonami źródłowymi (HTML + pseudokod szablonowy)
* $content->cacheDir - z szablonami skompilowanymi do PHP
Doskonale zdają egzamin, gdy całkowicie zmieniam środowisko (np. panel admina, instalator). Wtedy wszystkie szablony są ładowane z określonych w tych zmiennych katalogów (oprócz kilku ładowanych z VIEW_DIR).
Do tej pory wszystko funkcjonowało poprawnie. Teraz pojawił się problem. Zacząłem tworzyć rozszerzenie do systemu CMS. Nie wypada, by szablony wtyczek były przechowywane w katalogu domyślnej skórki (bo skórek może być więcej - wtedy admin może nie wiedzieć, która jest tą domyślną).

Pojawia się problem. W pliku rozszerzenia zmieniam katalog, w którym znajdują się rozszerzenia. Niestety, wyświetla się błąd:
Kod
Warning: filemtime() [function.filemtime]: stat failed for ./style/chat/body.html in [...]lib\content.php on line 100
Teraz popatrzmy na Front Kontroler (na sam koniec). Tam sprawdzam, czy główny szablon (layout) jest skompilowany, wywołując metodę compile(), która wykorzystuje te 2 zmienne $content->dir i $content->cacheDir.Jak rozwiązać problem, aby móc trzymać szablony rozszerzeń w osobnych katalogach? Może w ogóle inaczej zorganizować cały proces dołączania szablonów?
Jest jeszcze drugi, trochę mniej istotny problem. W domyślnym katalogu znajdują się szablony współdzielone (np. dla komentarzy). Gdyby tak rozszerzenia chciały je wykorzystywać? Chociaż mogą je też skopiować do własnego katalogu...