env(); $data = $env->data(); if($this->user = $env->user()){ if($env->etat("action") == "edit" || $env->etat("action") == "del"){ if( ( $this->groupe = $data->groupe( $_GET[$env->param("id")] ) ) !== false && $this->groupe ){ if($this->groupe["id_user"] == $this->user["id"]){ return true; } else return "Vous n'est pas autorisé à modifier ce groupe"; } else return "Impossible de lire les informations du groupe"; } else return true; } return "Vous devez être identifier pour accéder à cette page"; } public function index(){ $env = $this->env(); $data = $env->data(); if( $env->set_out( "groupes", $data->groupes( $this->user["id"], isset($_GET[$env->param("start")]) ? $_GET[$env->param("start")] : 0 ) ) !== false ){ } else $env->erreur("Impossible de lire la liste des groupes"); } public function add(){ $env = $this->env(); $data = $env->data(); if($data->check_user_uploads_dir()){ $web_path = $env->path("web"); $upload_dir = $env->path("content")."uploads/".$this->user["id"]; $_SESSION["upload_dir"] = $web_path.($web_path ? "" : "/").$upload_dir; if($_POST){ $env->set_out("groupe", $_POST); if(($image = $data->upload("image", $upload_dir)) !== false){ if(trim($_POST["nom"])){ if(($exists = $data->groupe_exists($_POST["nom"])) !== false){ if(!isset($_POST["contact_form"]) || trim($_POST["email"])){ if($exists == 0){ if( $data->add_groupe( $this->user["id"], $_POST["nom"], $image ? $this->user["id"]."/".$image : null, $_POST["description"], $_POST["email"], isset($_POST["contact_form"]) ? 1 : 0, isset($_POST["captcha"]) ? 1 : 0 ) ){ $env->redirect( $env->url("users/groupes"), "le groupe a été ajouté" ); } else $env->erreur("Impossible d'ajouter le groupe"); } else $env->message("Un groupe avec ce nom existe déjà"); } else $env->message("merci de préciser un email pour le formulaire de contact"); } else $env->erreur("Impossible de savoir si le groupe existe déjà"); } else $env->message("merci de préciser un nom pour le groupe"); } else $env->erreur("Impossible d'uploader l'image"); } } else $env->erreur("Impossible de creer le repertoire utilisateur"); } public function edit(){ $env = $this->env(); $data = $env->data(); if($data->check_user_uploads_dir()){ $web_path = $env->path("web"); $upload_dir = $env->path("content")."uploads/".$this->user["id"]; $_SESSION["upload_dir"] = $web_path.($web_path ? "" : "/").$upload_dir; if($env->set_out("groupe", $this->groupe)){ $groupe = $env->out("groupe"); if($_POST){ $id = $groupe["id"]; $nom = $groupe["nom"]; $image = $groupe["image"]; $_POST["image"] = $image ? $_SESSION["upload_dir"]."/".$image : ""; $env->set_out("groupe", $_POST); if(isset($_POST["del_image"])){ if($image){ if(@unlink($env->path("content")."uploads/".$image)) $image = ""; else{ $image = false; $env->erreur("Impossible d'effacer l'image"); } } else $image = ""; } else{ if(($new_image = $data->upload("image", $upload_dir)) !== false){ if($new_image) $image = $this->user["id"]."/".$new_image; } else $env->erreur("Impossible d'uploader l'image"); } if($image !== false){ if(trim($_POST["nom"])){ if(($exists = $data->groupe_exists($_POST["nom"], $this->groupe["id"])) !== false){ if(!$exists){ if(!isset($_POST["contact_form"]) || trim($_POST["email"])){ if( $data->set_groupe( $id, $_POST["nom"], $image, $_POST["description"], $_POST["email"], isset($_POST["contact_form"]) ? 1 : 0, isset($_POST["captcha"]) ? 1 : 0 ) ){ $env->redirect( $env->url("users/groupes/edit", array("id" => $_GET[$env->param("id")])), "le groupe a été modifié" ); } else $env->erreur("Impossible de modifier le groupe"); } else $env->message("merci de préciser un email pour le formulaire de contact"); } else $env->message("Un groupe avec ce nom existe déjà"); } else $env->erreur("Impossible de savoir si le groupe existe déjà"); } else $env->message("merci de préciser un nom pour le groupe"); } } else{ $env->set_out("groupe", $groupe); } } else $env->erreur("Impossible de lire les informations du groupe"); } else $env->erreur("Impossible de creer le repertoire utilisateur"); } public function del(){ $env = $this->env(); $data = $env->data(); if(($res = $data->del_groupe($this->groupe["id"])) !== false){ if($res === 1){ $env->redirect( $env->url("users/groupes"), "Ce groupe a des sources sur ce site, il n'a pas été supprimé.", 5 ); } else{ $env->redirect( $env->url("users/groupes"), "le groupe a été supprimé" ); } } else $env->erreur("Impossible de supprimer le groupe"); } }