Revize 1565
Přidáno uživatelem David Raška před asi 12 roky(ů)
freenetis/branches/testing/media/css/installation.css | ||
---|---|---|
|
||
label.error {
|
||
display: block;
|
||
}
|
||
|
||
.status_icon {
|
||
vertical-align: middle;
|
||
padding-right: .5em;
|
||
padding-bottom: .5em;
|
||
}
|
freenetis/branches/testing/application/i18n/cs_CZ/texts.php | ||
---|---|---|
'1 day ago' => 'před 1 dnem',
|
||
'1 hour ago' => 'před 1 hodinou',
|
||
'1 minute ago' => 'před 1 minutou',
|
||
'99% chance you won\'t need to change this value' => '99% šance, že nebudete chtít měnit tuto hodnotu.',
|
||
'absolute majority' => 'Absolutní většina',
|
||
'abstain' => 'Zdržet se',
|
||
'about sms' => 'Informace o SMS',
|
||
... | ... | |
'chairman and agent' => 'Předseda a jednatel',
|
||
'change' => 'Změnit',
|
||
'change application password' => 'Změnit aplikační heslo',
|
||
'change directory permissions:' => 'Změnte práva složky:',
|
||
'change language' => 'Změnit jazyk',
|
||
'change member limit' => 'Změnit limit člena',
|
||
'change password' => 'Změnit heslo',
|
||
'change root freenetis directory permissions:' => 'Změnte práva kořenové složky FreenetISu:',
|
||
'changed values' => 'Změněné hodnoty',
|
||
'change voicemail password' => 'Změnit heslo hlasové schránky',
|
||
'channel' => 'Kanál',
|
||
... | ... | |
'direction' => 'Směr',
|
||
'directional' => 'směrová',
|
||
'directory' => 'adresář',
|
||
'directory %s exist and is writeable' => 'Složka %s existuje a je zapisovatelná',
|
||
'directory "static" is not writable, change access rights' => 'Adresář "static" není zapisovatelný, změňte přístupová práva.',
|
||
'directory "upload" is not writable, change access rights' => 'Adresář "upload" není zapisovatelný, změňte přístupová práva.',
|
||
'directory "upload" is not writable, change access rights to be able upload your own logo' => 'Adresář "upload" není zapisovatelný, změňte přístupové práva pro možnost nahrát vlastní logo.',
|
||
... | ... | |
'error - cannot add phone operator' => 'Chyba - nelze přidat telefonního operátora',
|
||
'error - cannot assign transfer' => 'Chyba - nelze přiřadit převod.',
|
||
'error - cannot complete registration' => 'Chyba - Nelze dokončit registraci',
|
||
'error - cannot create %s file' => 'Chyba - Nelze vytvořit soubor %s',
|
||
'error - cannot delete access rule' => 'Chyba - Nelze smazat přístupové pravidlo.',
|
||
'error - cannot delete bank statement' => 'Chyba - nelze smazat bankovní výpis.',
|
||
'error - cannot delete filter query' => 'Chyba - nelze smazat dotaz filtru.',
|
||
... | ... | |
'fees have not been set!' => 'Členské příspěvky nebyly nastaveny!',
|
||
'fifth-degree certified engineers' => 'Certifikování technici pátého stupně',
|
||
'file' => 'Soubor',
|
||
'file %s exist' => 'Soubor %s existuje',
|
||
'file %s will be created' => 'Soubor %s bude vytvořen',
|
||
'file type' => 'Typ souboru',
|
||
'file with bank transfer listing' => 'Soubor s bankovním výpisem',
|
||
'fill in' => 'Doplnit',
|
||
... | ... | |
'fixed line' => 'Pevná linka',
|
||
'fixed line number' => 'Číslo v pevné lince',
|
||
'for smtp settings only' => 'Pouze pro nastavení SMTP.',
|
||
'for successful installation, you have to change some file/directory permissions' => 'Pro úspěšnou instalaci musíte změnit některá práva souborů/složek.',
|
||
'for this month and year is not set default fee' => 'Pro tento měsíc a rok není nastaven výchozí poplatek.',
|
||
'foreign download' => 'Zahraniční download',
|
||
'foreign upload' => 'Zahraniční upload',
|
||
... | ... | |
'i' => 'P',
|
||
'i accept this message and i want to cancel this redirection' => 'Beru na vědomí tuto zprávu a chci zrušit toto přesměrování',
|
||
'i can\'t set file permission to 660' => 'Nemůžu nastavit oprávnění souboru na 660',
|
||
'i can\'t write the configphp file' => 'Nemůžu zapisovat do souboru <code>config.php</code>.',
|
||
'i can\'t write the %s file' => 'Nemůžu zapisovat do souboru <code>%s</code>.',
|
||
'i can\'t write the htaccess file' => 'Nemůžu zapisovat do souboru <code>.htaccess</code>.',
|
||
'i can\'t write to dir %s' => 'Nemůžu zapisovat do složky %s',
|
||
'id' => 'ID',
|
||
'id of member' => 'ID člena',
|
||
'param id with same value was used for another message before' => 'Byl použit parametr id s hodnotou, která již byla použita pro jinou zprávu',
|
||
... | ... | |
'minimal latency' => 'Minimální odezva',
|
||
'minimal suggest amount' => 'Minimální navrhovaná částka',
|
||
'minimum of traffic' => 'Minimální provoz',
|
||
'mod_rewrite is enabled' => 'Mod_rewrite je povolen',
|
||
'mod_rewrite is not enabled' => 'Mod_rewrite není povolen',
|
||
'mode' => 'Mód',
|
||
'mode is required' => 'Mód je povinný.',
|
||
'module settings' => 'Nastavení modulů',
|
||
... | ... | |
'notification settings have not been updated' => 'Nastavení upozornění nebylo upraveno.',
|
||
'notifications' => 'Upozornění',
|
||
'november' => 'Listopad',
|
||
'now you can login using account name and password you entered before installation' => 'Nyní se můžete přihlásit pomocí uživatelského jména a hesla, které jste zadali před instalací.',
|
||
'number' => 'Číslo',
|
||
'number of the recipient' => 'Číslo příjemce',
|
||
'number of the sender' => 'Číslo odesilatele',
|
||
... | ... | |
'thank you for your error report' => 'Děkujeme Vám za hlášení chyby',
|
||
'thank you for your registration' => 'Děkujeme Vám za vaši registraci',
|
||
'the first bank account information' => 'Údaje o prvním bankovním účtu',
|
||
'the name of the database you want to run freenetis in' => 'Název databáze, do které chcete FreeNetIS nainstalovat.',
|
||
'the parsed account is unknown' => 'Parsovaný účet je neznámý',
|
||
'the request has been sent to your e-mail' => 'Žádost byla odeslána na Váš e-mail',
|
||
'the transfer successfully done' => 'Převod úspěšně dokončen',
|
||
... | ... | |
'vote to your work has been added' => 'K vaší práci byl přidán hlas',
|
||
'votes' => 'Hlasy',
|
||
'votes has been successfully updated' => 'Hlasy byly úspěšně aktualizovány.',
|
||
'welcome to freenetis' => 'Vítejte ve FreeNetISu','voicemail password for voip account' => 'Heslo hlasové schránky pro VoIP účet',
|
||
'welcome to freenetis installation' => 'Vítejte ve FreeNetIS instalaci.',
|
||
'voicemail password for voip account' => 'Heslo hlasové schránky pro VoIP účet',
|
||
'welcome to freenetis' => 'Vítejte ve FreeNetISu',
|
||
'welcome to freenetis installation' => 'Vítejte v instalaci FreenetIS.',
|
||
'view all records' => 'Vidět všechny záznamy',
|
||
'view name' => 'Název pohledu',
|
||
'view own records' => 'Vidět vlastní záznamy',
|
||
... | ... | |
'your concepts of work reports' => 'Vaše koncepty pracovních výkazů',
|
||
'your email' => 'Váš email',
|
||
'your request for membership has not been approved yet' => 'Vaše žádost o členství zatím nebyla schválena',
|
||
'your mysql password' => 'Vaše MySQL heslo.',
|
||
'your mysql username' => 'Vaše MySQL uživatelské jméno.',
|
||
'your name' => 'Vaše jméno',
|
||
'your registration has been sended and waiting for admin approval' => 'Vaše registrace byla odeslána a čeká na schválení adminem',
|
||
'you will be inform by your email address about admin decision' => 'O rozhodnutí admina budete informován emailem',
|
freenetis/branches/testing/application/i18n/cs_CZ/help.php | ||
---|---|---|
*/
|
||
$lang = array
|
||
(
|
||
'99% chance you won\'t need to change this value' => '99% šance, že nebudete chtít měnit tuto hodnotu.',
|
||
'access_to_system' => 'Určuje, zda-li má uživatel možnost přihlásit se do systému Freenetis a zda má možnost využívat služeb Radius serveru napojeného na Freenetis, tedy například VPN, aktivní prvky sítě, volání z VoIP účtu atd.',
|
||
'accounting_system' => 'Účetní osnova je hlavní pomocník pro účetního sdružení. Zobrazuje sumu peněz na účtu z pohledu účetní osnovy. Ve výchozím stavu je to částka za celou dobu fungování sdružení, lze ovšem vyfiltrovat převody za zvolené období, např. od data 2009-01-01 do data 2009-12-31.',
|
||
'acl' => 'Jedná se o seznam definovaných přístupových pravidel. Ke každému pravidlu jsou přiřazeny ACO objekty (operace), ARO skupiny (skupiny uživatelů) a AXO objekty (objekty, nad kterými se konají operace).',
|
||
... | ... | |
'recalculate_fees' => 'Pro primární strhávání členských příspěvků používejte funkci pro globální strhávání členských příspěvků v Účetním deníku. Tuto funkci používejte opatrně a to jen v případě, že máte správně strženy všechny členské příspěvky pro všechny členy od založení sdružení až po současné datum. Pak můžete tomuto členovi přepočítat stržení členských příspěvků v případě, že u něj došlo k nutnosti je přepočítat, např. chybné datum vstupu, vznikla nutnost přidat přerušení členství apod.',
|
||
'recalculate_entrance_fees' => 'Pro primární strhávání vstupních příspěvků používejte funkci pro globální strhávání v účetním deníku. Tuto funkci používejte jen v případě, že došlo k nějakému omylu, například, že měl zaplatit vstupní a pak se ukázalo, že nemusel.',
|
||
'redirection_preview' => 'Náhled zobrazí stránku přesně tak, jak se zobrazí dané IP adrese. V případě více aktivovaných přesměrování najednou pro jednu IP adresu se zobrazí jen to, které se členovi zobrazí jako první.',
|
||
'register_install' => 'Zašlě data o instalaci (jméno organizace a Váš email) vývojářům FreeNetISu pro zasílání novinek a informacích o vývoji',
|
||
'register_install' => 'Zašle data o instalaci (jméno organizace a Váš email) vývojářům FreeNetISu pro zasílání novinek a informacích o vývoji',
|
||
'registration_logo' => 'Jedná se o logo sdružení, které se zobrazí v levém horním rohu vyexportované přihlášky. Poměr stran by měl být 16:6.',
|
||
'self_cancel' => 'Je-li daná zpráva samozrušitelná, znamená to, že při jejím zobrazení členovi se v patičce stránky objeví odkaz, který mu umožní přesměrování vypnout. Vhodné pro zprávy informativního charakteru. Rozlišuje se samozrušitelnost pro jednu IP adresu anebo pro všechny IP adresy člena.',
|
||
'self_cancel_text' => 'Text pro odkaz určený k zrušení přesměrování členem. Tento text se zobrazuje v patičce stránky přesměrovanému členovi.',
|
||
... | ... | |
'subnet_used_ips' => 'Jedná se procentuální vyjádření využití IP adres v podsíti. Červené zbarvení značí docházející IP adresy, zelené pak nevyužitou podsít (zbytečně velká?).',
|
||
'syslog_ng_mysql_api' => 'Jedná se o jednoduché API pro načítání dat z syslog-ng daémona ukládajícího logy do MySQL databáze. Více infa <a href=http://dev.quimi.cz/projects/syslog-ng-mysql-api>zde</a>',
|
||
'syslog_ng_mysql_api_url' => 'URL adresa API pro zasílání požadavků, včetně jména a hesla ve tvaru http://URL?user=uživatel&password=heslo',
|
||
'the name of the database you want to run freenetis in' => 'Název databáze, do které chcete FreeNetIS nainstalovat.',
|
||
'time threshold in minutes, before module is shown as inactive' => 'Časová hranice v minutách, po které je modul označen jako neaktivní',
|
||
'total_traffic' => 'Jedná se o celkový provoz člena od spuštění ulogd.',
|
||
'ulogd_active' => 'Jedná se o seznam (z pohledu typu provozu) příliš aktivních členů. Tento seznam se používá například pro vyhodnocování QoSu pro členy (členové z tohoto seznamu jsou mírně znevýhodněni oproti ostatním členům), aktualizuje při každé aktualizaci ulogd, viz. Nastavení - Logování - Ulogd - Interval aktualizace.',
|
||
... | ... | |
'voip_login_data' => 'Níže uvedené údaje využijte pro nastavení vašeho VoIP telefonu. Login použijte pro požadované přihlašovací či zobrazovací jméno, heslo pro heslo k účtu a adresa proxy serveru odpovídá adrese telefonní ústředny. Údaj CLIPS je jen dodatečná informace pro příjemce hovoru, pokud vás nemá v seznamu. Doporučujeme nastavit stejné jako je vaše číslo.',
|
||
'voip_status' => 'Stav Registrovaný znamená, že telefonní klient ať už fyzický či softwarový je zapnut a správně připojen k ústředně. Stav Neregistrovaný platí pro opak. Pro VoIP telefon registrovaný v ústředně se pak zobrazuje jeho aktuální IP adresa, port a čas vypršení registrace.',
|
||
'whitelist' => 'IP adresám, které jsou umístěny na bílé listině, je sice možné aktivovat přesměrování, ale nebudou odeslány na centrální router. Tedy nebudou přesměrovány, dokud nebudou odebrány z bílé listiny. Dočasná bílá listina se od trvalé liší v tom, že je pravidelně promazávána.',
|
||
'your mysql password' => 'Vaše MySQL heslo.',
|
||
'your mysql username' => 'Vaše MySQL uživatelské jméno.',
|
||
|
||
);
|
freenetis/branches/testing/application/helpers/server.php | ||
---|---|---|
return (empty($_SERVER['QUERY_STRING']) ? '' : '?' . $_SERVER['QUERY_STRING']);
|
||
}
|
||
|
||
/**
|
||
* Returns base directory of FreenetIS
|
||
*
|
||
* @author David Raška
|
||
* @return string
|
||
*/
|
||
public static function base_dir()
|
||
{
|
||
$path_parts = explode('/', ltrim(@$_SERVER['SCRIPT_NAME'], '/'));
|
||
|
||
$folder = '';
|
||
|
||
if (count($path_parts) > 0)
|
||
{
|
||
$folder = '/'.$path_parts[0];
|
||
}
|
||
|
||
return @$_SERVER['DOCUMENT_ROOT'] . $folder;
|
||
}
|
||
|
||
}
|
||
|
||
|
freenetis/branches/testing/application/models/vlan.php | ||
---|---|---|
LEFT JOIN ifaces_vlans iv ON iv.vlan_id = v.id
|
||
WHERE iv.iface_id = ?
|
||
GROUP BY v.id
|
||
ORDER BY v.tag_802_1q
|
||
", $iface_id);
|
||
}
|
||
|
freenetis/branches/testing/application/controllers/installation.php | ||
---|---|---|
->rules('required')
|
||
->value($currency);
|
||
|
||
$form->radio('clean_urls')
|
||
->label('Clean URLs')
|
||
->options(arr::bool())
|
||
->default(1);
|
||
|
||
$link = html::anchor('http://www.freenetis.org', 'FreeNetIS.org', array
|
||
$link = html::anchor('http://www.freenetis.org', 'FreenetIS.org', array
|
||
(
|
||
'target' => '_blank'
|
||
));
|
||
... | ... | |
// array for store error
|
||
$errors = array();
|
||
|
||
$clean_urls = ($form_data['clean_urls'] && server::is_mod_rewrite_enabled());
|
||
|
||
// set base domain
|
||
Settings::set('domain', server::http_host());
|
||
|
||
... | ... | |
|
||
$view = new View('installation/done');
|
||
|
||
// want clean urls
|
||
if ($clean_urls)
|
||
{
|
||
// it is not re-install
|
||
if (!file_exists('.htaccess'))
|
||
{
|
||
// load .htaccess sample file
|
||
$htaccessFile = file('.htaccess-sample');
|
||
foreach ($htaccessFile as $line_num => $line)
|
||
{
|
||
// find line with RewriteBase
|
||
if (preg_match("/^RewriteBase (.+)/", $line, $matches))
|
||
{
|
||
// and set there our suffix (subdirectory)
|
||
$htaccessFile[$line_num] = preg_replace(
|
||
"/^(RewriteBase )(.+)/",
|
||
'${1}'.$suffix, $line
|
||
);
|
||
}
|
||
}
|
||
|
||
// root directory is not writable, only generate code
|
||
// and howto to create config file by user
|
||
if (!is_writable('.'))
|
||
{
|
||
$errors['writable'] = TRUE;
|
||
|
||
$textarea = '';
|
||
foreach ($htaccessFile as $line)
|
||
$textarea .= htmlentities ($line);
|
||
|
||
$view->textarea = '<textarea cols="90" rows="15">';
|
||
$view->textarea .= $textarea.'</textarea>';
|
||
}
|
||
// root directory is writable, create .htacess
|
||
else
|
||
{
|
||
$handle = @fopen('.htaccess', 'w');
|
||
|
||
if (!$handle)
|
||
$errors['fopen'] = TRUE;
|
||
else
|
||
{
|
||
foreach($htaccessFile as $line )
|
||
fwrite($handle, $line);
|
||
fclose($handle);
|
||
|
||
if (!@chmod('.htaccess', 0666))
|
||
$errors['chmod'] = TRUE;
|
||
}
|
||
}
|
||
}
|
||
|
||
// no errors
|
||
if (!count($errors))
|
||
{
|
||
// remove index.php from urls
|
||
Settings::set('index_page', 0);
|
||
}
|
||
}
|
||
|
||
// remove index.php from urls
|
||
Settings::set('index_page', 0);
|
||
|
||
$view->errors = $errors;
|
||
$view->render(TRUE);
|
||
}
|
freenetis/branches/testing/application/controllers/setup_config.php | ||
---|---|---|
* @author Michal Kliment
|
||
*/
|
||
public function index()
|
||
{
|
||
{
|
||
$f_state = $this->get_file_statuses(array('config.php', '.htaccess'));
|
||
|
||
// check if the database is empty
|
||
if ($this->settings->get('db_schema_version'))
|
||
if ($f_state['file_exist']['config.php'] &&
|
||
$f_state['file_exist']['.htaccess'] &&
|
||
Settings::get('db_schema_version'))
|
||
{
|
||
url::redirect('members/show/'.$this->session->get('member_id'));
|
||
}
|
||
|
||
// new form
|
||
$form = new Forge('setup_config/setup');
|
||
$d_state = $this->get_dir_statuses(array('upload', 'logs'));
|
||
|
||
$form->submit(__('Next step') . ' >>>');
|
||
$writeable = $f_state['state'] & $d_state['state'];
|
||
|
||
$html_statuses = $f_state['html'] . $d_state['html'];
|
||
|
||
if (!server::is_mod_rewrite_enabled())
|
||
{
|
||
$html_statuses .= html::image(array('src' => 'media/images/icons/status/error.png', 'class' => 'status_icon'));
|
||
$html_statuses .= '<span style="color: red">'.__('Mod_rewrite is not enabled').'</span><br>';
|
||
$writeable = false;
|
||
}
|
||
else
|
||
{
|
||
$html_statuses .= html::image(array('src' => 'media/images/icons/status/success.png', 'class' => 'status_icon'));
|
||
$html_statuses .= __('Mod_rewrite is enabled').'<br>';
|
||
}
|
||
|
||
if ($writeable)
|
||
{
|
||
$form = new Forge('setup_config/htaccess');
|
||
$form->submit(__('Next step') . ' >>>');
|
||
}
|
||
else
|
||
{
|
||
// new form
|
||
$form = new Forge();
|
||
$form->submit('Check again');
|
||
}
|
||
|
||
$view = new View('setup_config/main');
|
||
$view->content = new View('setup_config/index');
|
||
$view->content->form = $form->html();
|
||
$view->content->file_statuses = $html_statuses;
|
||
$view->content->writeable = $writeable;
|
||
$view->content->config_exist = $f_state['file_exist']['config.php'];
|
||
$view->render(TRUE);
|
||
}
|
||
|
||
/*
|
||
* This method creates new .htaccess file
|
||
*
|
||
* @author David Raška
|
||
*/
|
||
public function htaccess()
|
||
{
|
||
// set subdirectory
|
||
$suffix = substr(server::script_name(),0,-9);
|
||
$errors = array();
|
||
|
||
if (!file_exists('.htaccess'))
|
||
{
|
||
// load .htaccess sample file
|
||
$htaccessFile = @file('.htaccess-sample');
|
||
|
||
if (!$htaccessFile)
|
||
{
|
||
$errors['fopen'] = TRUE;
|
||
}
|
||
else
|
||
{
|
||
foreach ($htaccessFile as $line_num => $line)
|
||
{
|
||
// find line with RewriteBase
|
||
if (preg_match("/^RewriteBase (.+)/", $line))
|
||
{
|
||
// and set there our suffix (subdirectory)
|
||
$htaccessFile[$line_num] = preg_replace(
|
||
"/^(RewriteBase )(.+)/",
|
||
'${1}'.$suffix, $line
|
||
);
|
||
}
|
||
}
|
||
// root directory is writable, create .htacess
|
||
$handle = @fopen('.htaccess', 'w');
|
||
|
||
if (!$handle)
|
||
{
|
||
$errors['fopen'] = TRUE;
|
||
}
|
||
else
|
||
{
|
||
foreach($htaccessFile as $line )
|
||
{
|
||
@fwrite($handle, $line);
|
||
}
|
||
|
||
@fclose($handle);
|
||
|
||
if (!@chmod('.htaccess', 0666))
|
||
{
|
||
$errors['chmod'] = TRUE;
|
||
}
|
||
}
|
||
}
|
||
}
|
||
|
||
if (count($errors))
|
||
{
|
||
$view = new View('setup_config/main');
|
||
|
||
$view->content = '<h2>'.__('Error - Cannot create %s file', '.htaccess').'</h2>';
|
||
|
||
$view->render(TRUE);
|
||
}
|
||
else
|
||
{
|
||
if (Settings::get('db_schema_version'))
|
||
{
|
||
Settings::set('index_page', 0);
|
||
}
|
||
|
||
$this->redirect('setup_config/setup');
|
||
}
|
||
|
||
}
|
||
|
||
/**
|
||
* This method create config file (if root directory is writable)
|
||
* or generate code to create it by user
|
||
... | ... | |
// new form
|
||
$form = new Forge('setup_config/setup');
|
||
|
||
$form->group('Database information');
|
||
$form->group('<h2>'.__('Database information').'</h2>');
|
||
|
||
$form->input('db_name')
|
||
->label('Database name')
|
||
... | ... | |
}
|
||
}
|
||
}
|
||
|
||
// root directory is writable, create config
|
||
$handle = fopen('config.php', 'w');
|
||
|
||
|
||
// root directory is not writable, only generate code and
|
||
// howto to create config file by user
|
||
if (!is_writable('.'))
|
||
foreach ($config_file as $line)
|
||
{
|
||
$textarea = '';
|
||
|
||
foreach ($config_file as $line)
|
||
{
|
||
$textarea .= htmlentities($line);
|
||
}
|
||
fwrite($handle, $line);
|
||
}
|
||
|
||
$view->content->textarea = '<textarea cols="90" rows="15">'
|
||
. $textarea . '</textarea>';
|
||
}
|
||
// root directory is writable, create config
|
||
else
|
||
{
|
||
$handle = fopen('config.php', 'w');
|
||
|
||
foreach ($config_file as $line)
|
||
{
|
||
fwrite($handle, $line);
|
||
}
|
||
|
||
fclose($handle);
|
||
chmod('config.php', 0666);
|
||
}
|
||
fclose($handle);
|
||
chmod('config.php', 0666);
|
||
}
|
||
$view->render(TRUE);
|
||
}
|
||
... | ... | |
$view->render(TRUE);
|
||
}
|
||
}
|
||
|
||
/**
|
||
* Returns states (exist, writeable) of files in html format and boolean
|
||
*
|
||
* @author David Raška
|
||
* @param array $files
|
||
* @return array
|
||
*/
|
||
private function get_file_statuses($files)
|
||
{
|
||
$ok = true;
|
||
$html = '';
|
||
$file_exist = array();
|
||
|
||
foreach ($files AS $file)
|
||
{
|
||
if (file_exists($file))
|
||
{
|
||
$html .= html::image(array('src' => 'media/images/icons/status/success.png', 'class' => 'status_icon'));
|
||
$html .= __('File %s exist.',$file).'<br>';
|
||
$file_exist[$file] = true;
|
||
}
|
||
else if (!is_writeable('.'))
|
||
{
|
||
$html .= html::image(array('src' => 'media/images/icons/status/error.png', 'class' => 'status_icon'));
|
||
$html .= '<span style="color: red">'.__('i can\'t write the %s file',$file).'</span><br>'.
|
||
'<span style="margin-left: 3em">'.__('Change root FreenetIS directory permissions:').' <code>chmod ugo+w '.server::base_dir().'</code></span><br>';
|
||
$ok = false;
|
||
$file_exist[$file] = false;
|
||
}
|
||
else
|
||
{
|
||
$html .= html::image(array('src' => 'media/images/icons/status/info.png', 'class' => 'status_icon'));
|
||
$html .= __('File %s will be created.',$file).'<br>';
|
||
$file_exist[$file] = false;
|
||
}
|
||
}
|
||
|
||
return array('state' => $ok, 'html' => $html, 'file_exist' => $file_exist);
|
||
}
|
||
|
||
/**
|
||
* Returns states (exist & writeable) of directories in html format and boolean
|
||
*
|
||
* @param array $dirs
|
||
* @return array
|
||
*/
|
||
private function get_dir_statuses($dirs)
|
||
{
|
||
$ok = true;
|
||
$html = '';
|
||
|
||
foreach ($dirs AS $dir)
|
||
{
|
||
if (file_exists($dir) && is_writeable($dir))
|
||
{
|
||
$html .= html::image(array('src' => 'media/images/icons/status/success.png', 'class' => 'status_icon'));
|
||
$html .= __('Directory %s exist and is writeable.',$dir).'<br>';
|
||
}
|
||
else
|
||
{
|
||
$html .= html::image(array('src' => 'media/images/icons/status/error.png', 'class' => 'status_icon'));
|
||
$html .= '<span style="color: red">'.__('i can\'t write to dir %s',$dir).'</span><br>'.
|
||
'<span style="margin-left: 3em">'.__('Change directory permissions:').' <code>chmod ugo+w '.server::base_dir().'/'.$dir.'</code></span><br>';
|
||
$ok = false;
|
||
}
|
||
}
|
||
|
||
return array('state' => $ok, 'html' => $html);
|
||
}
|
||
|
||
}
|
freenetis/branches/testing/application/controllers/settings.php | ||
---|---|---|
// load .htaccess sample file
|
||
if (($htaccessFile = @file('.htaccess-sample')) != FALSE)
|
||
{
|
||
$this->form->radio('clean_urls')
|
||
->label('Clean URLs')
|
||
->options(arr::bool())
|
||
->default(!Settings::get('index_page'))
|
||
->help(__('URL addresses without index.php.'));
|
||
|
||
foreach ($htaccessFile as $line_num => $line)
|
||
{
|
||
// find line with RewriteBase
|
||
... | ... | |
|
||
foreach ($form_data as $name => $value)
|
||
{
|
||
// transform clean_urls to index_page
|
||
if ($name == 'clean_urls')
|
||
if ($name == 'module_status_timeout')
|
||
{
|
||
$name = 'index_page';
|
||
$value = ($value) ? 0 : 1;
|
||
|
||
// we want clean urls
|
||
if (!$value)
|
||
{
|
||
// and can create it
|
||
if (is_writable('.'))
|
||
{
|
||
// create it
|
||
$handle = @fopen('.htaccess', 'w');
|
||
|
||
if ($handle)
|
||
{
|
||
foreach ($htaccessFile as $line)
|
||
{
|
||
fwrite($handle, $line);
|
||
}
|
||
|
||
fclose($handle);
|
||
chmod('.htaccess', 0666);
|
||
|
||
$message = __(
|
||
'Htaccess file has been ' .
|
||
'successfully created.'
|
||
);
|
||
}
|
||
else
|
||
{
|
||
$value = 0;
|
||
$message = __(
|
||
'Htaccess file hasn\'t been ' .
|
||
'successfully created.'
|
||
);
|
||
}
|
||
}
|
||
else
|
||
{
|
||
// we can't create it and it doen't exist
|
||
if (!file_exists('.htaccess'))
|
||
{
|
||
// we turn off clean urls
|
||
$value = 1;
|
||
$message = __(
|
||
'Htaccess file hasn\'t been ' .
|
||
'successfully created.'
|
||
);
|
||
}
|
||
}
|
||
}
|
||
}
|
||
else if ($name == 'module_status_timeout')
|
||
{
|
||
$value = max($value, 1);
|
||
}
|
||
else if ($name == 'address_ranges')
|
freenetis/branches/testing/application/libraries/Forge.php | ||
---|---|---|
// default action
|
||
if (!$action)
|
||
{
|
||
$action = url::base().url::current(TRUE);
|
||
$action = url::base(TRUE).url::current(TRUE);
|
||
}
|
||
// auto action prefix
|
||
if (!text::starts_with($action, url::base()))
|
||
{
|
||
$action = url_lang::base() . $action;
|
||
$action = url_lang::base(TRUE) . $action;
|
||
}
|
||
//echo $action.'<br>';
|
||
if (isset($_GET[Path::QSNAME]))
|
freenetis/branches/testing/application/libraries/MY_Controller.php | ||
---|---|---|
'scheduler/run',
|
||
'installation',
|
||
'setup_config',
|
||
'setup_config/htaccess',
|
||
'setup_config/setup',
|
||
/* registration */
|
||
'registration',
|
||
... | ... | |
$this->noredirect = ($this->input->get('noredirect') || $this->input->post('noredirect'));
|
||
|
||
// config file doesn't exist, we must create it
|
||
if (!file_exists('config.php'))
|
||
if (!file_exists('config.php') || !file_exists('.htaccess'))
|
||
{
|
||
// protection before loop
|
||
if (url_lang::current(1) == 'setup_config')
|
||
return;
|
||
|
||
if (!file_exists('.htaccess'))
|
||
{
|
||
Settings::set('index_page', 1);
|
||
}
|
||
|
||
url::redirect('setup_config');
|
||
}
|
||
|
freenetis/branches/testing/application/views/installation/done.php | ||
---|---|---|
<div id="main-padd">
|
||
<div id="content">
|
||
<h2><?php echo __('Installation done') ?></h2><br />
|
||
|
||
<?php if (!count($errors)) :?>
|
||
<p><?php echo __('Installation has been successfully finished.') ?></p>
|
||
<p><?php echo __('And now, click Login.') ?></p>
|
||
<?php else: ?>
|
||
<p><?php echo __('Installation has been finished.') ?></p>
|
||
<p><?php echo __('But there are some problems') ?>:</p>
|
||
|
||
<?php if ((isset($errors['writable']) && $errors['writable']) || (isset($errors['fopen']) && $errors['fopen'])): ?>
|
||
<p class="warning"><?php echo __('I can\'t write the htaccess file.').' '.__('You must create it manually and paste the following text into it') ?>:</p>
|
||
<?php echo $textarea ?>
|
||
<?php endif ?>
|
||
|
||
<?php if (isset($errors['chmod']) && $errors['chmod']): ?>
|
||
<p class="warning">
|
||
<?php echo __('But I can\'t set file permission to 660').'.' ?>
|
||
<?php echo __('You have to set up it by yourself:') ?><br />
|
||
</p>
|
||
<code>chmod 660 .htaccess</code>
|
||
<?php endif ?>
|
||
|
||
<p>
|
||
<?php echo __('Currently clean urls are turn off.') ?>
|
||
<?php echo __('After you will solve previous problems, you can turn them on in') ?>
|
||
<?php echo html::anchor('settings/system', __('Settings').' - '.__('System').' - '.__('URL Settings')).'.' ?>
|
||
</p>
|
||
<?php endif ?>
|
||
<p><?php echo __('Installation has been successfully finished') . ' ' .
|
||
__('Now you can login using account name and password you entered before installation.') ?></p>
|
||
<?php echo form::open(url_lang::base().'login') ?>
|
||
<?php echo form::submit('submit', __('Login')) ?>
|
||
<?php echo form::close() ?>
|
freenetis/branches/testing/application/views/setup_config/setup.php | ||
---|---|---|
<p><a href="<?php echo url_lang::base() ?>setup_config/setup"><<< <?php echo __('Back to the form') ?></a></p>
|
||
<?php else: ?>
|
||
<h2><?php echo __('Setup config done') ?></h2>
|
||
<?php if (isset($textarea) && $textarea!=''): ?>
|
||
<p><?php echo __('But I can\'t write the configphp file.') ?> <?php echo __('You must create it manually and paste the following text into it.') ?></p>
|
||
<?php echo $textarea ?>
|
||
<?php echo __('After you\'ve done that, you can continue.') ?>
|
||
<?php endif ?>
|
||
<?php echo form::open(url_lang::base().'login') ?>
|
||
<?php echo form::submit('submit', __('Next step').' >>>') ?>
|
||
<?php echo form::close() ?>
|
freenetis/branches/testing/application/views/setup_config/index.php | ||
---|---|---|
<h2><?php echo __('Welcome to FreeNetIS') ?></h2>
|
||
<h2><?php echo __('Welcome to FreenetIS installation') ?></h2>
|
||
<?php if (!$writeable): ?>
|
||
<p><?php echo __('For successful installation, you have to change some file/directory permissions.')?></p>
|
||
<?php endif; ?>
|
||
<?php echo $file_statuses ?>
|
||
<br>
|
||
<?php if (!$config_exist): ?>
|
||
<p><?php echo __('Before getting started, we need some information on the database.')?> <?php echo __('You will need to know the following items before proceeding.') ?></p>
|
||
|
||
<ol>
|
||
... | ... | |
<li><?php echo __('Database password') ?></li>
|
||
<li><?php echo __('Database host') ?></li>
|
||
</ol>
|
||
|
||
<p><b><?php echo __('If for any reason this automatic config file creation doesn\'t work, don\'t worry.') ?>
|
||
<?php echo __('You can simply open %s in a text editor, fill in your information, and save it as %s.', array('config-sample.php', 'config.php')) ?></b></p>
|
||
<?php endif; ?>
|
||
<?php echo $form ?>
|
Také k dispozici: Unified diff
Upravy:
- Razeni VLANu u detailu portu
- Uprava instalace (testovani prav u slozek a souboru, generovani .htaccess)