Пример #1
0
 /**
  * Returns the number of related UserReport objects.
  *
  * @param      Criteria $criteria
  * @param      boolean $distinct
  * @param      ConnectionInterface $con
  * @return int             Count of related UserReport objects.
  * @throws PropelException
  */
 public function countUserReportsRelatedByIdUserReported(Criteria $criteria = null, $distinct = false, ConnectionInterface $con = null)
 {
     $partial = $this->collUserReportsRelatedByIdUserReportedPartial && !$this->isNew();
     if (null === $this->collUserReportsRelatedByIdUserReported || null !== $criteria || $partial) {
         if ($this->isNew() && null === $this->collUserReportsRelatedByIdUserReported) {
             return 0;
         }
         if ($partial && !$criteria) {
             return count($this->getUserReportsRelatedByIdUserReported());
         }
         $query = ChildUserReportQuery::create(null, $criteria);
         if ($distinct) {
             $query->distinct();
         }
         return $query->filterByUserReported($this)->count($con);
     }
     return count($this->collUserReportsRelatedByIdUserReported);
 }
Пример #2
0
 public function banUser($id)
 {
     if (!$this->isAdmin()) {
         $this->addPopup('danger', 'Pro zakázání přístupu nemáte dostatečná práva.');
         redirectTo('/administrace/nahlaseni-uzivatele');
     }
     $user = UserQuery::create()->findPk($id);
     if ($user == NULL) {
         $this->addPopup('danger', 'Uživatel se zadaným identifikačním číslem se v databázi nenachází.');
         redirectTo('/administrace/nahlaseni-uzivatele');
     }
     $ban = new Ban();
     $ban->setReason($_POST["reason"]);
     $ban->setIdUser($id);
     $end_date = new DateTime();
     $end_date->setTimestamp($end_date->format('U') + $_POST["length"]);
     $ban->setEndingDate($end_date->format('U'));
     $ban->setBannedBy($_SESSION["user"]->getId());
     $ban->save();
     $reports = UserReportQuery::create()->filterByIdUserReported($id)->find();
     foreach ($reports as $r) {
         $r->delete();
     }
     $this->addPopup('success', 'Uživateli ' . $user->getUsername() . ' byl úspěšně zakázán přístup.');
     redirectTo('/administrace/nahlaseni-uzivatele');
 }