Nastavení: Porovnání verzí
(→Knihovna Settings) |
m (Quimi přesunul stránku Nastavenà na Nastavení bez založení přesměrování) |
||
(Není zobrazeno 60 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é === | ||
+ | |||
+ | ====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==== | ====db_schema_version==== | ||
Řádek 26: | Řádek 39: | ||
- '''nelze nastavit uživatelem v systému, určuje se sama''' | - '''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 <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()) | ||
+ | |||
+ | ====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==== | ====index_page==== | ||
Řádek 51: | Řádek 121: | ||
- '''výchozí hodnota''': 1 | - '''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==== | ====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) | ||
− | ==== | + | ====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''': | + | - '''výchozí hodnota''': 1 |
====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 78: | Řádek 174: | ||
- '''výchozí hodnota''': prázdná (pro vytvoření URL se pak používá substr(server::script_name(),0,-9)) | - '''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 | - '''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 == | == 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íč |
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íč