Nastavení: Porovnání verzí
(→Metody) |
m (Quimi přesunul stránku Nastavenà na Nastavení bez založení přesměrování) |
||
(Není zobrazeno 19 mezilehlých verzí od 5 dalších uživatelů.) | |||
Řádek 1: | Řádek 1: | ||
− | Jako každý jiný informační systém i | + | [[en:Settings]] |
+ | [[ru:Настройки]] | ||
+ | |||
+ | Jako každý jiný informační systém i FreenetIS musí mít možnost různých nastavení, jak uživatelských, tak i systémových. V současné době se o to starají dvě knihovny: | ||
application/libraries/settings.php (pro nastavení skrze databázi) | application/libraries/settings.php (pro nastavení skrze databázi) | ||
− | system/ | + | system/core/config.php (pro nastavení skrze konfigurační soubor) |
= Původní stav = | = Původní stav = | ||
Řádek 16: | Řádek 19: | ||
== Knihovna Settings == | == Knihovna Settings == | ||
− | Všechna nastavení se ukládají do tabulky Config. | + | Všechna nastavení se ukládají do databázové tabulky Config. |
=== Proměnné === | === Proměnné === | ||
Řádek 37: | Řádek 40: | ||
====debtor==== | ====debtor==== | ||
+ | ====default_country==== | ||
+ | - základní země užívaná v systému (id z tabulky countries) | ||
+ | - '''výchozí hodnota''': 55 (Czech Republic) | ||
====domain==== | ====domain==== | ||
− | - doména, na kterém poběží | + | - doména, na kterém poběží FreenetIS |
− | - pokud je vaše adresa | + | - pokud je vaše adresa FreenetISu <nowiki>http://www.mojedomena.cz/freenetis/</nowiki>, bude tato proměnná <nowiki>www.mojedomena.cz</nowiki> |
- '''výchozí hodnota''': prázdná (pro vytvoření URL se pak používá server::http_host()) | - '''výchozí hodnota''': prázdná (pro vytvoření URL se pak používá server::http_host()) | ||
Řádek 48: | Řádek 54: | ||
====email_default_email==== | ====email_default_email==== | ||
− | - výchozí e-mail - na všech e-mailech odeslaných z | + | - výchozí e-mail - na všech e-mailech odeslaných z FreenetISu bude jako odesílatel uvedena tato adresa |
- nastavuje se v Nastavení - Systém - Výchozí e-mail | - nastavuje se v Nastavení - Systém - Výchozí e-mail | ||
Řádek 121: | Řádek 127: | ||
====map_google_maps_api_key==== | ====map_google_maps_api_key==== | ||
+ | |||
+ | - klíč pro Google maps API, které se v is využívají. | ||
+ | |||
+ | - '''výchozí hodnota''': prázdná | ||
====optional_message==== | ====optional_message==== | ||
Řádek 128: | Řádek 138: | ||
====protocol==== | ====protocol==== | ||
− | - protokol, na kterém poběží | + | - protokol, na kterém poběží FreenetIS |
− | - pokud je vaše adresa | + | - pokud je vaše adresa FreenetISu <nowiki>http://www.mojedomena.cz/freenetis/</nowiki>, bude tato proměnná <nowiki>http</nowiki> |
- '''výchozí hodnota''': prázdná (pro vytvoření URL se pak používá hodnota http) | - '''výchozí hodnota''': prázdná (pro vytvoření URL se pak používá hodnota http) | ||
Řádek 156: | Řádek 166: | ||
====suffix==== | ====suffix==== | ||
− | - přípona za doménou v URL, na které běží | + | - přípona za doménou v URL, na které běží FreenetIS |
− | - pokud je vaše adresa | + | - pokud je vaše adresa FreenetISu <nowiki>http://www.mojedomena.cz/freenetis/</nowiki>, bude tato proměnná <nowiki>/freenetis/</nowiki> |
- vždy musí začínat i končit lomítkem (může být i /) | - vždy musí začínat i končit lomítkem (může být i /) | ||
Řádek 170: | Řádek 180: | ||
- nastavuje se v Nastavení - Systém - Titulek stránky | - nastavuje se v Nastavení - Systém - Titulek stránky | ||
− | - '''výchozí hodnota''': | + | - '''výchozí hodnota''': FreenetIS |
====unknown_device==== | ====unknown_device==== | ||
Řádek 189: | Řádek 199: | ||
====voip_billing_driver==== | ====voip_billing_driver==== | ||
+ | - proměnná obsahuje aktuálně zvolený driver pro VoIP | ||
+ | |||
+ | - momentálně je podporovaný pouze drver pro řešení VOIP od NFX z.s.p.o. | ||
+ | |||
+ | - '''výchozí hodnota:''' 0 | ||
====voip_billing_partner==== | ====voip_billing_partner==== | ||
+ | |||
+ | - proměnná obsahuje uživatelské jméno k přihlášení k billingu | ||
+ | |||
+ | - '''výchozí hodnota:''' prázdná | ||
====voip_billing_password==== | ====voip_billing_password==== | ||
+ | - proměnná obsahuje uživatelské heslo k přihlášení k billingu | ||
+ | |||
+ | - '''výchozí hodnota:''' prázdná | ||
====voip_number_exclude==== | ====voip_number_exclude==== | ||
+ | - proměnná obsahuje devíti-místné čísla oddělená středníkem(;) | ||
+ | |||
+ | - čísla uvedená v tomto seznamu nebudou nabídnuta k výberu pro registraci VoIP účtu | ||
+ | |||
+ | - '''výchozí hodnota:''' prázdná | ||
====voip_number_interval==== | ====voip_number_interval==== | ||
+ | - proměnná obsahuje rozsah devítimístných čísel ve tvaru XXXXXXXXX-XXXXXXXXX | ||
+ | |||
+ | - čísla uvedená v tomto seznamu budou nabídnuta k výbeřu pro registraci VoIP ůčtu | ||
+ | |||
+ | - '''výchozí hodnota:''' prázdná | ||
====voip_sip_server==== | ====voip_sip_server==== | ||
+ | - proměnná uchovává řetezec s hostname SIP serveru. Např. sip.slfree.czf | ||
+ | |||
+ | - zobrazuje se v nastavení VoIP účtu jako doplňující informace. Nemá vliv na funkci ústředny. | ||
+ | |||
+ | - '''výchozí hodnota''': prázdná | ||
====website_after_redirection==== | ====website_after_redirection==== | ||
Řádek 258: | Řádek 295: | ||
====db_name==== | ====db_name==== | ||
− | - název databáze, na které poběží | + | - název databáze, na které poběží FreenetIS |
- '''výchozí hodnota''': freenetis | - '''výchozí hodnota''': freenetis | ||
Řádek 264: | Řádek 301: | ||
====db_host==== | ====db_host==== | ||
− | - adresa hostitele, na kterém poběží | + | - adresa hostitele, na kterém poběží FreenetIS |
- '''výchozí hodnota''': localhost | - '''výchozí hodnota''': localhost | ||
Řádek 282: | Řádek 319: | ||
====db_table_prefix==== | ====db_table_prefix==== | ||
− | - předpona pro tabulky | + | - předpona pro tabulky FreenetISu |
− | - užitečné, pokud chcete používat společnou databázi pro | + | - užitečné, pokud chcete používat společnou databázi pro FreenetIS a jiný projekt |
- '''výchozí hodnota''': prázdná | - '''výchozí hodnota''': prázdná |
Aktuální verze z 31. 1. 2018, 14:14
Jako každý jiný informační systém i FreenetIS musí mít možnost různých nastavení, jak uživatelských, tak i systémových. V současné době se o to starají dvě knihovny:
application/libraries/settings.php (pro nastavení skrze databázi) system/core/config.php (pro nastavení skrze konfigurační soubor)
Obsah
- 1 Původní stav
- 2 Současný stav
- 3 Samotná implementace
- 3.1 Knihovna Settings
- 3.1.1 Proměnné
- 3.1.1.1 contact
- 3.1.1.2 currency
- 3.1.1.3 db_schema_version
- 3.1.1.4 debtor
- 3.1.1.5 default_country
- 3.1.1.6 domain
- 3.1.1.7 email_default_email
- 3.1.1.8 email_driver
- 3.1.1.9 email_hostname
- 3.1.1.10 email_port
- 3.1.1.11 email_password
- 3.1.1.12 email_username
- 3.1.1.13 gateway
- 3.1.1.14 index_page
- 3.1.1.15 info
- 3.1.1.16 interrupt
- 3.1.1.17 map_google_maps_api_key
- 3.1.1.18 optional_message
- 3.1.1.19 payment_notice
- 3.1.1.20 protocol
- 3.1.1.21 registration_info
- 3.1.1.22 registration_license
- 3.1.1.23 self_registration
- 3.1.1.24 suffix
- 3.1.1.25 title
- 3.1.1.26 unknown_device
- 3.1.1.27 upload_directory
- 3.1.1.28 use_javascript
- 3.1.1.29 voip_billing_driver
- 3.1.1.30 voip_billing_partner
- 3.1.1.31 voip_billing_password
- 3.1.1.32 voip_number_exclude
- 3.1.1.33 voip_number_interval
- 3.1.1.34 voip_sip_server
- 3.1.1.35 website_after_redirection
- 3.1.2 Metody
- 3.1.1 Proměnné
- 3.2 Knihovna Config
- 3.1 Knihovna Settings
Původní stav
V původním stavu framework Kohana podporoval pouze nastavení přes konfigurační soubory, žádné nastavení přes databázi neexistovaly. Z toho plyne, že v systému nešly vytvářet formulář pro nastavení - ty by pak totiž musely tyto soubory přegenerovávat => velké bezpečnostní riziko.
Současný stav
Takřka veškerá nastavení byla přesunuta do databáze, v konfiguračním souboru zůstaly pouze přístupové údaje k databázi.
Samotná implementace
Knihovna Settings
Všechna nastavení se ukládají do databázové tabulky Config.
Proměnné
contact
currency
- měna, které se bude používat v systému
- nastavuje se v Nastavení - Systém - Měna
- výchozí hodnota: CZK
db_schema_version
- zřejmě nejdůležitější proměnná - určuje aktuální revizi databázového schématu, používá se pří Autoupdate DB struktury
- nelze nastavit uživatelem v systému, určuje se sama
debtor
default_country
- základní země užívaná v systému (id z tabulky countries)
- výchozí hodnota: 55 (Czech Republic)
domain
- doména, na kterém poběží FreenetIS
- pokud je vaše adresa FreenetISu http://www.mojedomena.cz/freenetis/, bude tato proměnná www.mojedomena.cz
- výchozí hodnota: prázdná (pro vytvoření URL se pak používá server::http_host())
email_default_email
- výchozí e-mail - na všech e-mailech odeslaných z FreenetISu bude jako odesílatel uvedena tato adresa
- nastavuje se v Nastavení - Systém - Výchozí e-mail
- výchozí hodnota: no-reply@freenetis.org
email_driver
- ovladač posílání e-mailu - způsob, jakým se budou odesílat e-maily
- možné možnosti - nativní (pomocí funkce php mail), SMTP a Sendmail
- nastavuje se v Nastavení - E-mail - Ovladač
- výchozí hodnota: nativní
email_hostname
- hostitel SMTP serveru
- bere se v potaz, pouze pokud je email_driver nastaven na SMTP
- nastavuje se v Nastavení - E-mail - Název hostitele
- výchozí hodnota: prázdná
email_port
- port SMTP serveru
- bere se v potaz, pouze pokud je email_driver nastaven na SMTP
- nastavuje se v Nastavení - E-mail - Port
- výchozí hodnota: 25
email_password
- heslo pro přístup na hostitele SMTP serveru
- bere se v potaz, pouze pokud je email_driver nastaven na SMTP
- nastavuje se v Nastavení - E-mail - Heslo
- výchozí hodnota: prázdná
email_username
- uživatelské jméno pro přístup na hostitele SMTP serveru
- bere se v potaz, pouze pokud je email_driver nastaven na SMTP
- nastavuje se v Nastavení - E-mail - Uživatelské jméno
- výchozí hodnota: prázdná
gateway
index_page
- logická proměnná, zda-se má v URL zobrazovat index.php
- 1 => bude se zobrazovat, 0=> nebude se zobrazit
- nastavuje se v Nastavení - Systém - Čistá URL (přes negaci)
- výchozí hodnota: 1
info
interrupt
map_google_maps_api_key
- klíč pro Google maps API, které se v is využívají.
- výchozí hodnota: prázdná
optional_message
payment_notice
protocol
- protokol, na kterém poběží FreenetIS
- pokud je vaše adresa FreenetISu http://www.mojedomena.cz/freenetis/, bude tato proměnná http
- výchozí hodnota: prázdná (pro vytvoření URL se pak používá hodnota http)
registration_info
- informace, které se zobrazí na vyexportované přihlášce na horní části
- výchozí hodnota: prázdná
registration_license
- licenční podmínky, které se zobrazí na vyexportované přihlášce na dolní části
- výchozí hodnota: prázdná
self_registration
- logické proměnná, zda-li povolit samo-registraci zájemců o členství
- nastavuje se v Nastavení - Systém - Samo-registrace
- výchozí hodnota: 1
suffix
- přípona za doménou v URL, na které běží FreenetIS
- pokud je vaše adresa FreenetISu http://www.mojedomena.cz/freenetis/, bude tato proměnná /freenetis/
- vždy musí začínat i končit lomítkem (může být i /)
- výchozí hodnota: prázdná (pro vytvoření URL se pak používá substr(server::script_name(),0,-9))
title
- titulek stránky, který se zobrazuje v hlavičce (uvnitř HTML atributu title)
- nastavuje se v Nastavení - Systém - Titulek stránky
- výchozí hodnota: FreenetIS
unknown_device
upload_directory
- určuje adresář, do kterého se budou nehrávat soubory (importy, atd.)
- výchozí hodnota: upload
use_javascript
- logická proměnná, zda-li je používán javascript
- zastaralé, v budoucnu bude odstraněno
- výchozí hodnota: 1
voip_billing_driver
- proměnná obsahuje aktuálně zvolený driver pro VoIP
- momentálně je podporovaný pouze drver pro řešení VOIP od NFX z.s.p.o.
- výchozí hodnota: 0
voip_billing_partner
- proměnná obsahuje uživatelské jméno k přihlášení k billingu
- výchozí hodnota: prázdná
voip_billing_password
- proměnná obsahuje uživatelské heslo k přihlášení k billingu
- výchozí hodnota: prázdná
voip_number_exclude
- proměnná obsahuje devíti-místné čísla oddělená středníkem(;)
- čísla uvedená v tomto seznamu nebudou nabídnuta k výberu pro registraci VoIP účtu
- výchozí hodnota: prázdná
voip_number_interval
- proměnná obsahuje rozsah devítimístných čísel ve tvaru XXXXXXXXX-XXXXXXXXX
- čísla uvedená v tomto seznamu budou nabídnuta k výbeřu pro registraci VoIP ůčtu
- výchozí hodnota: prázdná
voip_sip_server
- proměnná uchovává řetezec s hostname SIP serveru. Např. sip.slfree.czf
- zobrazuje se v nastavení VoIP účtu jako doplňující informace. Nemá vliv na funkci ústředny.
- výchozí hodnota: prázdná
website_after_redirection
Metody
Celá knihovna obsahuje pouze dvě metody - set a get.
V kontrolerech a v pohledech (ve views) se používá dynamický přístup - v záhlaví hlavního kontroleru se vytvoří instance knihovny:
$this->settings = new Settings();
a pak např. hodnotu proměnné suffix získáme takto:
$this->settings->get('suffix');
V ostatních místech aplikace (helpers, atd.) se pak musí používat statický přístup:
$suffix = Settings::get('suffix');
get
- vrací hodnotu podle zadaného klíče
- pokud nalezne neprázdnou hodnotu, vrátí ji
- pokud nalezne prázdnou hodnotu nebo nestane neočekávaná chyba, zkontroluje, zda-li existuje stejnojmenný privátní atribut (tj. defaultní hodnota)
- pokud existuje, vrátí jej
- pokud neexistuje, zkusí vrátit stejnojmennou proměnnou z Configu (z konfiguračního souboru)
set
- nastaví proměnnou zadanou pomocí klíče na zadanou hodnotu
- pokud nastane neočekávaná chyba, vrátí neúspěch
- jinak pokud proměnná již v databázi existuje, aktualizuje ji
- pokus proměnná v databázi neexistuje, vytvoří ji
Knihovna Config
Jedná se o nastavení, které se zapisují do konfiguračního souboru config.php.
Jde však pouze o proměnné s údaji pro připojení k databázi.
Proměnné
db_type
- typ databáze (mysql, pgsql)
- zatím je podporováno pouze mysql
- výchozí hodnota: mysql
db_name
- název databáze, na které poběží FreenetIS
- výchozí hodnota: freenetis
db_host
- adresa hostitele, na kterém poběží FreenetIS
- výchozí hodnota: localhost
db_user
- uživatelské jméno pro připojení k databázi
- výchozí hodnota: freenetis
db_password
- uživatelské heslo pro připojení k databázi
- výchozí hodnota: freenetis
db_table_prefix
- předpona pro tabulky FreenetISu
- užitečné, pokud chcete používat společnou databázi pro FreenetIS a jiný projekt
- výchozí hodnota: prázdná
Metody
Na rozdíl od knihovny Settings se u této knihovny používá pouze statický přístup:
$db_name = Config::get('db_name')
get
- vrací hodnotu z konfiguračního souboru podle zadaného klíče
set
- nastaví zadanou hodnotu na zadaný klíč