Skip to content

Shadow38PL/sandforms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Heseya Template Engine

Funkcja render()

Zwraca wyrenderowany kod html stworzony na podstawie templatki i parametrów

render($path, $params, $minify = false);

$path - ścieżka względna od webroota zdefiniowanego w pliku konfiguracyjnym prowadząca do pliku z templatką,
$params - tabica asocjacyjna której wartości będą przypisane zmiennej o nazwie klucza,
$minify - Jeśli true zwrócyony kod zostanie zminifikowany

Funkcja renderContent()

Umożliwia wykorzystanie przy renderowaniu zmiennej typu string zawierającej kod templatki zamiast ścieżki do pliku. Pozatym działa identycznie jak render()

renderContent($content, $params, $minify = false);

$content - Zmienna typu string zawierająca template

Specyfikacja templatki

{{ }} - Tag w którym umieszczamy wszystkie rzeczy związane z templatką.

Typy zmiennych:

bez prefiksu - Zmienna przekazana przez funkcje render - wkleja zawartość zmiennej.
@ - Import z pliku np: @templatki/plik - Wkleja zawartość pliku o podanej ścieżce (jeśli nie podamy rozszerzenia domyślnie będzie szukany plik z rozszerzeniem .html).
$ - Zmienna językowa np: $main_page - Wkleja tłumaczenie dla zmiennej z pliku językowego.
# - Stała np: #ver - wkleja stałą utworzoną w pliku konfiguracyjnym.

Operatory:

? - Operator warunkowy np: {{ warunek ? templatka }} - Jeśli zmienna warunkowa jest ustawiona i nie równa się fałsz lub jest pusta to zostanie wyrenderowana templatka następująca po operatorze warunkowym. Templatka może być zapisana bezpośrednio w tagu lub może być importem tzn. @templatka.
=> - Operator mapowania np: {{ tablica => templatka }} - Renderuje templatkę używając wartości tablicy jako parametrów. Jeśli tablica jest sekwencyjna to templatka renderowana jest dla każdej z jej wartości. Jeśli wartośćiami tej tablicy nie są tablice asocjacyjne to wartość tą w templatce zczytujemy jako zmienna value. Templatka może być zapisana bezpośrednio w tagu lub może być importem tzn. @templatka.

Komentarze:

Zwyczajne komentarze HTML <!-- treść komentarza --> zostaną usunięte.
By zachować komentarz trzeba uzyć specjalnego komentarza wymuszonego <!--! treść komentarza -->

Plik konfiguracyjny

Jest plikiem php zawierającym globalne parametry używane przez render().

$webRoot - Jest ścieżką startową dla wszystkich ścieżek podawanych funkcji render i dla importów.
$langFolder - Jest ścieżką folderu z plikami językowymi zależną od $webRoot.

$defaultLanguage - Jest domyślnym językiem tłumaczenia jeśli nie ma tłumaczenia w języku użytkownika.
$langCookieName - Jest nazwą ciasteczka w którym przechowywany jest język wybrany przez użytkownika.

$constants - Jest tablicą asocjacyjną zawierającą stałe używane przy renderowaniu templatek. Klucz jest nazwą zmiennej a wartość jej wartością.

Pliki językowe

Zapisywane są w fomacie .json w folderze językowym.

Klucze są nazwami zmiennych językowych a wartości tłumaczeniami.

Konwencja jęzków

Pliki językowe i domyślny język nazywane są w formacie ogólnym np. en lub bardziej sczegółowo np. en_US. Jeśli nie ma tłumaczenia dla języka szczegułowego np. en_GB to zostanie zastosowane tłumaczenie ogólne np. en. Jeśli nie ma i takiego tłumaczenia zastosowane zostanie tłumaczenie domyślne ustawione w pliku konfiguracyjnym.

Przykłady zastosowania

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published