3 class mw_forms_sourceml extends mw_controller{
5 var $forms_contact_mod;
9 if($this->forms_contact_mod = $env->get_controller("forms/contact")){
10 return $this->forms_contact_mod->validate();
12 return "impossible de trouver le controlleur forms/contact";
15 function contact_author(){
17 if(file_exists($env->path("mw_dir")."libs/ptitcaptcha.php")) require_once $env->path("mw_dir")."libs/ptitcaptcha.php";
19 if(($status = $data->source_status()) !== false)
20 { foreach($status as $id_source_status => $source_status)
21 { if($source_status["nom"] == "album") $album_status_id = $id_source_status;
22 if(isset($album_status_id)) break;
24 if(isset($album_status_id))
25 { if($groupe = $data->groupe($_GET[$env->param("id")]))
26 { if($groupe["contact_form"] && $groupe["email"])
27 { $env->set_out("groupe", $groupe);
28 $select = array("status" => $album_status_id);
29 $select["id_groupe"] = $groupe["id"];
30 if(($albums = $data->sources($select)) !== false)
31 { $env->set_out("albums", $albums);
37 "[".$env->config("site_name")." - ".$groupe["nom"]."] nouveau message",
44 ( $env->url("sources/groupe/view", array("id" => $_GET[$env->param("id")])),
45 "Le message a été envoyé"
50 else $env->erreur("impossible de lire la liste des albums");
53 { $env->run("sources/groupe/view", array("get" => array("id" => $groupe["id"])));
57 else $env->erreur("Impossible de lire les informations du groupe");
59 else $env->erreur("Type de source inconnu: album");
61 else $env->erreur("Impossible de lire la liste des status de source");
64 function send(&$env, $from, $titre, $message, $dest, $captcha)
65 { $env->set_out("ENVOYE", false);
66 if($captcha && !class_exists("PtitCaptchaHelper")){
67 $env->erreur("fichier du captcha introuvable");
70 if(!$captcha || PtitCaptchaHelper::checkCaptcha())
79 ."Reply-To: ".$from."\r\n"
82 { $env->set_out("ENVOYE", true);
85 else $env->erreur("Erreur à l'envoi du mail");
87 else $env->erreur("Impossible de trouver l'email du destinataire");
89 else $env->message("merci de préciser un email");
91 else $env->message("anti-spam incorrect");