public $nastavenie; /** @var string - relatívna cesta pre avatar poloziek menu */ public $avatar_path = "files/menu/"; /** @var int Maximalna velkost suboru pre upload */ public $upload_size = 0; // -- KONIEC Premenne z o stareho CommonBasePresentera /** @var array Hodnoty role=>id v DB tab registracia */ public $ur_reg = []; /** @var array Hodnoty id=>nazov pre formulare z tabulky registracia */ public $urovneReg; /** @var array - pole s chybami pri uploade */ public $upload_error = [0 => "Bez chyby. Súbor úspešne nahraný.", 1 => "Nahrávaný súbor je väčší ako systémom povolená hodnota!", 2 => "Nahrávaný súbor je väčší ako je formulárom povolená hodnota!", 3 => "Nahraný súbor bol nahraný len čiastočne...", 4 => "Žiadny súbor nebol nahraný... Pravdepodobne ste vo formuláry žiaden nezvolili!", 5 => "Upload error 5.", 6 => "Chýbajúci dočasný priečinok!"]; /** Vychodzie nastavenia */ protected function startup() { parent::startup(); // Sprava uzivatela $user = $this->getUser(); //Nacitanie uzivatela // Kontrola prihlasenia a nacitania urovne registracie $this->id_reg = $user->isLoggedIn() ? $user->getIdentity()->id_registracia : 0; // Kontrola prihlasenia if ($this->id_reg) { //Prihlaseny uzivatel if (!$user->isAllowed($this->name, $this->action)) { //Kontrola ACL $this->flashRedirect('Homepage:', 'Na požadovanú akciu nemáte dostatočné oprávnenie!', 'danger'); } } else { //Neprihlaseny if ($user->getLogoutReason() === User::INACTIVITY) { $backlink = $this->getApplication()->storeRequest(); $this->flashRedirect([':Front:User:'******'backlink' => $backlink]], 'Boli ste príliš dlho neaktívny a preto ste boli odhlásený! Prosím, prihláste sa znovu.', 'danger'); } else { $this->flashRedirect(':Front:User:in', 'Nemáte dostatočné oprávnenie na danú operáciu!', 'danger'); } } // Nastavenie z config-u $this->nastavenie = $this->context->parameters; $modul_presenter = explode(":", $this->name); $this->language = 'sk'; $this->language_id = 1; //Nacitanie a spracovanie hlavnych udajov webu $this->udaje_webu = $this->udaje->findAll()->fetchPairs('nazov', 'text'); $vysledok = []; //Nacitanie len tych premennych, ktore platia pre danu jazykovu mutaciu foreach ($this->udaje_webu as $key => $value) { $kluc = explode("-", $key); if (count($kluc) == 2 && $kluc[1] == $this->language) { $vysledok[substr($key, 0, strlen($key) - strlen($this->language) - 1)] = $value; } if (count($kluc) == 1) { $vysledok[$key] = $value; } } $this->udaje_webu = $vysledok; // Nacitanie pomocnych premennych $this->udaje_webu['meno_presentera'] = strtolower($modul_presenter[1]); //Meno aktualneho presentera $httpR = $this->httpRequest->getUrl(); $this->nazov_stranky = $httpR->host . $httpR->scriptPath; // Nazov stranky v tvare www.nieco.sk $this->nazov_stranky = substr($this->nazov_stranky, 0, strlen($this->nazov_stranky) - 1); // Priradenie hlavnych parametrov a udajov
protected function startup() { parent::startup(); // Sprava uzivatela $user = $this->getUser(); //Nacitanie uzivatela // Kontrola prihlasenia a nacitania urovne registracie $this->id_reg = $user->isLoggedIn() ? $user->getIdentity()->id_registracia : 0; // Nastavenie z config-u $this->nastavenie = $this->context->parameters; $modul_presenter = explode(":", $this->name); // Skontroluj ci je nastaveny jazyk a ci pozadovany jazyk existuje ak ano akceptuj if (!isset($this->language)) { //Prednastavim hodnotu jazyka $lang_temp = $this->lang->find(1); $this->language = $lang_temp->skratka; $this->language_id = $lang_temp->id; } if (isset($this->params['language'])) { $lang_temp = $this->lang->findOneBy(['skratka' => $this->params['language']]); if (isset($lang_temp->skratka) && $lang_temp->skratka == $this->params['language']) { $this->language = $this->params['language']; $this->language_id = $lang_temp->id; } else { //Inak nastav Slovencinu $this->language = 'sk'; $this->language_id = 1; } } //Nacitanie a spracovanie hlavnych udajov webu $this->udaje_webu = $this->udaje->findAll()->fetchPairs('nazov', 'text'); $vysledok = []; //Nacitanie len tych premennych, ktore platia pre danu jazykovu mutaciu foreach ($this->udaje_webu as $key => $value) { $kluc = explode("-", $key); if (count($kluc) == 2 && $kluc[1] == $this->language) { $vysledok[substr($key, 0, strlen($key) - strlen($this->language) - 1)] = $value; } if (count($kluc) == 1) { $vysledok[$key] = $value; } } $this->udaje_webu = $vysledok; // Nacitanie pomocnych premennych $this->udaje_webu['meno_presentera'] = strtolower($modul_presenter[1]); //Meno aktualneho presentera $httpR = $this->httpRequest->getUrl(); $this->nazov_stranky = $httpR->host . $httpR->scriptPath; // Nazov stranky v tvare www.nieco.sk $this->nazov_stranky = substr($this->nazov_stranky, 0, strlen($this->nazov_stranky) - 1); // Priradenie hlavnych parametrov a udajov $this->max_id_reg = $this->registracia->findAll()->max('id'); //Najdi max. ur. reg. //Najdi info o druhu $tmp_druh = $this->druh->findBy(["druh.presenter" => ucfirst($this->udaje_webu['meno_presentera'])])->where("druh.modul IS NULL OR druh.modul = ?", $modul_presenter[0])->limit(1)->fetch(); if ($tmp_druh !== FALSE) { if ($tmp_druh->je_spec_naz) { //Ak je spec_nazov pozadovany a mam id $hl_udaje = $this->hlavne_menu->hladaj_id(isset($this->params['id']) ? (int) trim($this->params['id']) : 0, $this->id_reg); } else { //Ak nie je spec_nazov pozadovany $hl_udaje = $this->hlavne_menu->findOneBy(["id_druh" => $tmp_druh->id]); } } else { $hl_udaje = FALSE; } if ($hl_udaje !== FALSE) { //Ak sa hl. udaje nasli //Nacitanie textov hl_udaje pre dany jazyk $lang_hl_udaje = $this->hlavne_menu_lang->findOneBy(['id_lang' => $this->language_id, 'id_hlavne_menu' => $hl_udaje->id]); if ($lang_hl_udaje !== FALSE) { //Nasiel som udaje a tak aktualizujem $this->udaje_webu["nazov"] = $lang_hl_udaje->nazov; $this->udaje_webu["h1part2"] = $lang_hl_udaje->h1part2; $this->udaje_webu["description"] = $lang_hl_udaje->description; } else { //Len preto aby tam nieco bolo $this->udaje_webu["nazov"] = "Error nazov"; $this->udaje_webu["h1part2"] = "Error h1part2"; $this->udaje_webu["description"] = "Error description"; } $this->udaje_webu['hl_udaje'] = $hl_udaje->toArray(); } else { //Len preto aby tam nieco bolo $this->udaje_webu["description"] = "Nenájdená stránka"; $this->udaje_webu['hl_udaje'] = FALSE; } //Vypocet max. velkosti suboru pre upload $ini_v = trim(ini_get("upload_max_filesize")); $s = ['g' => 1 << 30, 'm' => 1 << 20, 'k' => 1 << 10]; $this->upload_size = intval($ini_v) * ($s[strtolower(substr($ini_v, -1))] ?: 1); // -- Povodny: $this->texty_presentera->setLanguage($this->language); //Nastavenie textov podla jazyka }