Example #1
0
 public function reportUser()
 {
     if (!$this->isLogged()) {
         $this->addPopup('danger', 'Pro nahlášení uživatele musíte být přihlášeni.');
         redirectTo("/");
     }
     if ($_POST["user"] == 0) {
         $this->addPopup('danger', 'Pro nahlášení uživatele musíte nějakého zvolit.');
         redirectTo("/nastaveni/nahlasit-uzivatele");
     }
     if ($_POST["user"] == $_SESSION["user"]->getId()) {
         $this->addPopup('danger', 'Nemůžete nahlásit sami sebe...');
         redirectTo("/nastaveni/nahlasit-uzivatele");
     }
     if (strlen(utf8_decode($_POST["reason"])) >= 500) {
         $this->addPopup('danger', 'Důvod nahlášení je příliš dlouhý. Důvod nahlášení by měl obsahovat maximálně 500 znaků.');
         redirectTo("/nastaveni/nahlasit-uzivatele");
     }
     $report = new UserReport();
     $report->setIdUser($_SESSION["user"]->getId());
     $report->setIdUserReported(strip_tags($_POST["user"]));
     $report->setReason(strip_tags($_POST["reason"]));
     $report->save();
     $user = UserQuery::create()->findPk($_POST["user"]);
     $this->addPopup('success', 'Uživatel ' . $user->getUsername() . ' byl úspěšně nahlášen. Děkujeme!');
     redirectTo("/nastaveni");
 }