Ejemplo n.º 1
0
 public function run()
 {
     $columnsParameters = array(array('dbField' => 'AccountEntity.login', 'dtField' => 'compte'), array('dbField' => 'PlayerIndexEntity.empire', 'filterLevel' => 'strict', 'dtField' => 'empire', 'formatter' => function ($d, $row) {
         return \FonctionsUtiles::findIconEmpire($d);
     }), array('dbField' => ['PlayerEntity1.name', 'PlayerEntity2.name', 'PlayerEntity3.name', 'PlayerEntity4.name'], 'dbSortReplaceField' => ["PlayerEntity1.name" => "PlayerEntity2.name", "PlayerEntity2.name" => "PlayerEntity3.name", "PlayerEntity3.name" => "PlayerEntity4.name", "PlayerEntity4.name" => "PlayerEntity1.name"], 'dbConcatSeparator' => "|VAMOS|", 'dtField' => 'names', 'formatter' => function ($d, $row) {
         $arrReturn = array_unique(explode("|VAMOS|", $d));
         return implode(", ", $arrReturn);
     }), array('dbField' => 'BannissementsActifsEntity.raisonBannissement', 'dtField' => 'raison', 'formatter' => function ($d, $row) {
         return \BanRaisonHelper::getLibelle($d);
     }), array('dbField' => 'BannissementsActifsEntity.duree', 'filterLevel' => 'strict', 'dtField' => 'duree', 'formatter' => function ($d, $row) {
         if ($d == 999) {
             return "Définitif";
         } else {
             return \BanDureeHelper::getLibelle($d);
         }
     }), array('dbField' => 'AccountEntity.ipCreation', 'dtField' => 'ip'), array('dbField' => 'AccountEntity.id', 'dtField' => 'actions', 'formatter' => function ($d, $row) {
         if ($this->HaveTheRight(\DroitsHelper::DEBANNISSEMENT)) {
             $varButton = '<a class="btn btn-material btn-success btn-sm" onclick="SuppressionBannissement(' . $d . ')" data-tooltip="Lever"><i class="material-icons md-icon-lock-open"></i></a>';
         } else {
             $varButton = "";
         }
         return '<div class="btn-toolbar">' . $varButton . "</div>";
     }));
     $datatable = new \DataTable();
     $datatable->setColumnsParameters($columnsParameters)->setRequest($_GET)->from("\\Account\\Entity\\Account", "AccountEntity")->leftJoin("\\Player\\Entity\\PlayerIndex", "PlayerIndexEntity", "WITH", "PlayerIndexEntity.id = AccountEntity.id")->leftJoin("\\Player\\Entity\\Player", "PlayerEntity1", "WITH", "PlayerEntity1.id = PlayerIndexEntity.pid1")->leftJoin("\\Player\\Entity\\Player", "PlayerEntity2", "WITH", "PlayerEntity2.id = PlayerIndexEntity.pid2")->leftJoin("\\Player\\Entity\\Player", "PlayerEntity3", "WITH", "PlayerEntity3.id = PlayerIndexEntity.pid3")->leftJoin("\\Player\\Entity\\Player", "PlayerEntity4", "WITH", "PlayerEntity4.id = PlayerIndexEntity.pid4")->leftJoin("\\Site\\Entity\\BannissementsActifs", "BannissementsActifsEntity", "WITH", "BannissementsActifsEntity.idCompte = AccountEntity.id")->andWhere("AccountEntity.status = '" . \StatusHelper::BANNI . "'");
     $datatable->getResult()->toJson();
 }
Ejemplo n.º 2
0
 public function run()
 {
     global $request;
     $idAccount = $request->query->get("idAccount");
     $objAccount = \Account\AccountHelper::getAccountRepository()->find($idAccount);
     $this->arrayTemplate["arrBannissementMotifs"] = \BanRaisonHelper::getAll(false);
     $this->arrayTemplate["arrBannissementDuree"] = \BanDureeHelper::getAll(false);
     $this->arrayTemplate["rightBannissementEmail"] = $this->HaveTheRight(\DroitsHelper::BANNISSEMENT_IP);
     $this->arrayTemplate["rightBannissementIp"] = $this->HaveTheRight(\DroitsHelper::BANNISSEMENT_EMAIL);
     $this->arrayTemplate["objAccount"] = $objAccount;
     $view = $this->template->render($this->arrayTemplate);
     $this->response->setContent($view);
     $this->response->send();
 }
Ejemplo n.º 3
0
 public function run()
 {
     global $request;
     $em = \Shared\DoctrineHelper::getEntityManager();
     $idAccount = $request->request->get("accountId");
     $banRaison = $request->request->get("banRaison");
     $banDuree = $request->request->get("banDuree");
     $banCommentaire = $request->request->get("banCommentaire");
     $withBanEmail = $request->request->get("withBanEmail");
     $withBanIp = $request->request->get("withBanIp");
     $arrObjAccount = [];
     $objAccount = \Account\AccountHelper::getAccountRepository()->find($idAccount);
     if ($objAccount !== null) {
         array_push($arrObjAccount, $objAccount);
     }
     if ($this->HaveTheRight(\DroitsHelper::BANNISSEMENT_EMAIL)) {
         if ($withBanEmail !== null && $withBanEmail == "true") {
             $arrBanEmail = \Account\AccountHelper::getAccountRepository()->findAccountByEmail($objAccount->getEmail());
             if (count($arrBanEmail) > 0) {
                 foreach ($arrBanEmail as $banEmail) {
                     array_push($arrObjAccount, $banEmail);
                 }
             }
         }
     }
     if ($this->HaveTheRight(\DroitsHelper::BANNISSEMENT_IP)) {
         if ($withBanIp !== null && $withBanIp == "true") {
             $arrBanIp = \Account\AccountHelper::getAccountRepository()->findByIpCreation($objAccount->getIpCreation());
             if (count($arrBanIp) > 0) {
                 foreach ($arrBanIp as $banIp) {
                     array_push($arrObjAccount, $banIp);
                 }
             }
         }
     }
     $arrObjAccount = array_unique($arrObjAccount, SORT_REGULAR);
     foreach ($arrObjAccount as $objAccount) {
         $libelleRaison = \BanRaisonHelper::getLibelle($banRaison);
         $estDefinitif = false;
         if ($banDuree == 0) {
             $estDefinitif = true;
         }
         $objAccount->setStatus(\StatusHelper::BANNI);
         $em->persist($objAccount);
         $dateDebutBanissement = \Carbon\Carbon::now();
         $dateFinBanissement = \Carbon\Carbon::now()->addDay($banDuree);
         $objBanissementActifs = new \Site\Entity\BannissementsActifs();
         $objBanissementActifs->setIdCompte($objAccount->getId());
         $objBanissementActifs->setRaisonBannissement($banRaison);
         $objBanissementActifs->setCommentaireBannissement($banCommentaire);
         $objBanissementActifs->setIdCompteGm($this->objAccount->getId());
         $objBanissementActifs->setIpGm($this->ipAdresse);
         $objBanissementActifs->setDuree($banDuree);
         $objBanissementActifs->setDateDebutBannissement($dateDebutBanissement);
         $objBanissementActifs->setDateFinBannissement($dateFinBanissement);
         $objBanissementActifs->setDefinitif($estDefinitif);
         $em->persist($objBanissementActifs);
         $em->flush();
         $template = $this->objTwig->loadTemplate("BanissementCompte.html5.twig");
         $resultTemplate = $template->render(["compte" => $objAccount->getLogin(), "definitif" => $estDefinitif, "raison" => $libelleRaison]);
         $subject = 'VamosMt2 - Bannissement de ' . $objAccount->getLogin() . '';
         \EmailHelper::sendEmail($objAccount->getEmail(), $subject, $resultTemplate);
     }
     $result = array('result' => true, 'reasons' => "");
     echo json_encode($result);
 }
Ejemplo n.º 4
0
 public function helpBanRaison($raison = 0)
 {
     return BanRaisonHelper::getLibelle($raison);
 }