function dologin() { $rememberme = @$_POST['rememberme']; $username = stripslashes($_POST['name']); $password = stripslashes($_POST['passwd']); if ($rememberme) { $this->auth->setCookie($username); } else { $this->auth->deleteCookie(); } // najprv sa vykona autentifikacia voci LDAP (korektny login + heslo) try { $this->auth->login($username, $password); } catch (LoginException $ex) { $this->log("Neplatné meno `{$username}` alebo heslo"); $this->flash("Bolo zadané neplatné heslo alebo meno.", "error"); $this->redirect('auth/login'); return; } $user = $this->user->findByLogin($username); if (empty($user)) { $this->log("Pokus o prihlásenie neevidovanej osoby `{$username}`"); $this->flash("Ľutujeme, nemáte prístup do tejto aplikácie. Kontaktujte prosím <a href='mailto:galbavy@fiit.stuba.sk' title='Poslať mail administratorovi'>administrátora aplikácie</a>", "error"); $this->redirect('auth/login'); return; } // nastavi aktivny semester // TODO: uchovavat v DB pre usera jeho poslednu hodnotu $periods = new Periods(); $lastSemID = $periods->getLastSemesterID(); $user["semester"] = $lastSemID; $this->session->writeUser($user); $this->log("Prihlásenie používateľa"); $redirect = $this->session->read("redirect"); if ($redirect) { // zmaze presmerovanie a presmetuje $this->session->delete("redirect"); $this->redirect($redirect); } else { $this->redirect('user/home'); } }