Jet\MVC_Base

Co je to báze a jak funguje jsme si vysvětlili zde a zde.

V tabulce naleznete přehled metod třídy Jet\MVC_Base a zároveň také rozhraní Jet\MVC_Base_Interface

Třída je instancována zásadně pomocí příslušné továrny.

Základní metody

Metoda Význam
public setId(
string $id
): void
Nastaví ID báze. Používá se při vytváření bází.
Pro aplikační prostor neužitečně. Používáno nástroji.
public getId(
): string
Vrátí ID dané báze. 
public getName(
): string
Vrátí interní jméno báze.
Interní jméno je název, který není určený pro koncové / běžné uživatele. Je používán v nástrojích a také v administraci. 
Není však určen běžným návštěvníkům.
public setName(
string $name
): void
Nastavení interního jména. 
Opět metoda určená pro nástroje, nikoliv pro použití v aplikačním prostoru.
public setIsSecret(
bool $is_secret
): void
Nastavení zda je báze z principu tajná. To znamená, že je automaticky a u všech stránek vyžadována autentizace a autorizace - tedy přihlášení uživatele a ověření jeho práv.

Rovněž metoda určená pro nástorje. V aplikačním prostoru opravdu nesmí být použita.
public getIsSecret(
): bool
Indikuje zda báze je / není z principu tajná. To znamená, že je automaticky a u všech stránek vyžadována autentizace a autorizace - tedy přihlášení uživatele a ověření jeho práv.
public getSSLRequired(
): bool
Indikuje zda báze z principu vyžaduje SSL spojení. Pokud ano, tak je veškerý http provoz automaticky přesměrováván na https a týká se to všech stránek.

Ale dnes by na https mělo běžet vše :-) 

Ovšem například na vašem localhost můžete fungovat bez SSL ... 
public setSSLRequired(
bool $SSL_required
): void
Nastavuje zda báze z principu vyžaduje SSL spojení. Pokud ano, tak je veškerý http provoz automaticky přesměrováván na https a týká se to všech stránek.

Opět metoda určená pro nástorje. V aplikačním prostoru opravdu nesmí být použita.
public getIsDefault(
): bool
Indikuje zda báze je / není výchozí. 

Jedna báze vždy musí být výchozí. Proč? Dejme tomu, že na produkční server nasměrujete úplně novou doménu, kterou nemáte u žádné báze nastavenou. Jet se v takové situaci postará o přesměrování na výchozí bázi.
public setIsDefault(
bool $is_default
): void
Nastavuje zda báze je / není výchozí. 
public getIsActive(
): bool
Indikuje zda báze je / není aktivní.

Není problém nějakou část projektu za nějakým účelem třeba na čas deaktivovat. A může to být klidně součást administrace.
public setIsActive(
bool $is_active
): void
Nastavuje zda báze je / není aktivní.

Není problém nějakou část projektu za nějakým účelem třeba na čas deaktivovat. A může to být klidně součást administrace.
public setInitializer(
callable $initializer
): void
Nastavuje inicializer. 

Další metoda, která je určena primárně pro nástroje.
public getInitializer(
): callable|null
Vrací inicializer, nebo null pokud není žádný nastaven.
public getHomepage(
?Locale $locale = null
): MVC_Page_Interface
Vrátí instanci stránky homepage (tedy kořenové) pro danou bázi a danou lokalizaci.

Pokud lokalizace není zadána (tedy parametr $locale je null), pak se použije aktuální lokalizace požadavku (kterou vyhodnotil router).

Adresáře a cesty

Metoda Význam
public setBasePath(
string $path
): void
Pro případ potřeby je možné vnutit bázi její cestu kde se nalézá její adresář (jinou než danou konfigurací a principem tvorby cesty).

Může se hodit pro nástroje. Opět není určeno k běžnému použití.
public getBasePath(
): string
Vrátí cestu k adresáři, kde se báze nachází. Pokud pomocí setBasePath není natavena volitelná cesta (což většinou není), tak vrátí cestu danou konfigurací systému a principem tvorby cesty k bázi.
public getPagesDataPath(
?Locale $locale = null
): string
Vrátí cestu k adresáři, ve kterém jsou definice stránek dané báze. 

Pokud je parametr $locale roven null, pak vrátí obecnou cestu / základní ke všem lokalizacím.

Pokud je parametr $locale specifikován, pak vrátí přímou cestu k definicím stránek dané lokalizace.
public setLayoutsPath(
string $path
): void
Touto metodou je možné vnutit cestu k adresáři obsahujícímu layouty. Tedy cestu jinou než danou konfigurací a principem tvorby cesty.
public getLayoutsPath(
): string
Vrátí cestu k adresáři obsahujícímu layouty. Pokud pomocí setLayoutsPath není nastavena volitelná cesta (v běžné praxi většinou není), tak vrátí cestu odvíjející se od základní cesty k adresáři báze.
public setViewsPath(
string $path
): void
Touto metodou je možné vnutit cestu k adresáři obsahujícímu obecné pohledy. Tedy cestu jinou než danou konfigurací a principem tvorby cesty.
public getViewsPath(
): string
Vrátí cestu k adresáři obsahujícímu obecné pohledy. Pokud pomocí setViewsPath není nastavena volitelná cesta (v běžné praxi většinou není), tak vrátí cestu odvíjející se od základní cesty k adresáři báze.

Lokalizace

Metoda Význam
public getDefaultLocale(
): Locale|null
Vrátí identifikaci výchozí lokalizace. (Nebo null, pokud ještě není definována)
public getHasLocale(
Locale $locale
): bool
Zjišťuje, zda daná báze má danou lokalizaci.
public getLocalizedData(
Locale $locale
): MVC_Base_LocalizedData_Interface
Vrátí instanci lokalizovaných dat datné báze.
public getLocales(
bool $get_as_string = false
): Locale[]|string[]
Vrátí seznam všech lokalizací, které k bázi náleží.

Pokud je parametr $get_as_string roven true, pak vrátí pole textových identifikátorů (např. cs_CZ atd), v opačném případě vrátí pole instancí třídy Jet\Locale.
public getActiveLocales(
bool $get_as_string = false
): Locale[]|string[]
Vrátí seznam pouze aktivních lokalizací, které k bázi náleží.

Pokud je parametr $get_as_string roven true, pak vrátí pole textových identifikátorů (např. cs_CZ atd), v opačném případě vrátí pole instancí třídy Jet\Locale.
public sortLocales(
array $order
): void
Seřadí priority lokalizací dle zadaného pořadí. 

Parametr $order je pole textových identifikátorů lokalizací.
public addLocale(
Locale $locale
): MVC_Base_LocalizedData_Interface
Přidá bázi novou lokalizaci identifikovanou instancí třídy Jet\Locale - parametrem $locale

Následně vrátí instanci lokalizovaných dat báze.

Pokud již lokalizace existovala, pak pouze vrátí instanci lokalizovaných dat.
public removeLocale(
Locale $locale
): void
Odebere lokalizaci identifikovanou instancí třídy Jet\Locale - parametrem $locale

Ukládání

Metoda Význam
public saveDataFile(
): void
Uloží datový soubor definice báze.
public toArray(
): array
Vrátí data definice báze v podobě asociovaného pole. Používá se pro ukládání definice.
Předchozí kapitola
Báze / Base
Další kapitola
Jet\MVC_Base_LocalizedData