+<?php\r
+\r
+if (!defined("_ECRIRE_INC_VERSION")) return;\r
+\r
+include_spip('inc/autoriser');\r
+include_spip('inc/actions');\r
+include_spip('inc/editer');\r
+\r
+// chargement des valeurs par defaut des champs du formulaire\r
+function formulaires_editer_abomailman_charger_dist($id_abomailman='new',$retour='', $config_fonc='', $row=array(), $hidden=''){\r
+ $valeurs = array();\r
+\r
+ //initialise les variables d'environnement pas défaut\r
+ if (!autoriser('creer', 'abomailman', 'oui')) {\r
+ $editable = false;\r
+ }else{\r
+ $valeurs = formulaires_editer_objet_charger('abomailman',$id_abomailman,0,0,$retour,$config_fonc,$row,$hidden);\r
+ $editable = true;\r
+ }\r
+\r
+ if(!$valeurs['langue']){\r
+ $valeurs['langue'] = lang_select();\r
+ }\r
+ unset($valeurs['lang']);\r
+\r
+ $recuptemplate = explode('&',_request('modele_defaut'));\r
+ $valeurs['template'] = $recuptemplate[0];\r
+ $valeurs['envoi_liste_parametres']=recup_param(_request('modele_defaut'));\r
+ $valeurs['editable'] = $editable;\r
+ return $valeurs;\r
+}\r
+\r
+/**\r
+ * Identifier le formulaire en faisant abstraction des parametres qui\r
+ * ne representent pas l'objet edite\r
+ */\r
+function formulaires_editer_abomailman_identifier_dist($id_abomailman='new', $retour='', $associer_objet='', $config_fonc='auteurs_edit_config', $row=array(), $hidden=''){\r
+ return serialize(array(intval($id_abomailman),$associer_objet));\r
+}\r
+\r
+function formulaires_editer_abomailman_verifier_dist($id_abomailman='new',$retour='', $config_fonc='', $row=array(), $hidden=''){\r
+\r
+ //initialise le tableau des erreurs\r
+ $erreurs = formulaires_editer_objet_verifier('abomailman',$id_abomailman,array('titre','email'));\r
+ spip_log($erreurs,'test');\r
+ // Faire une fonction de verif sur le mail et le titre pour validite\r
+ $desactive = _request('desactive');\r
+\r
+ // Si on fait une suppression, on ne vérifie pas le reste\r
+ if($desactive != '2'){\r
+ if (count($erreurs)<1){\r
+ include_spip('inc/filtres'); # pour email_valide()\r
+ if (!email_valide(_request('email'))){\r
+ $erreurs['email'] = _T("abomailmans:email_valide");\r
+ }\r
+ }\r
+ }\r
+ \r
+ //message d'erreur genéralisé\r
+ if (count($erreurs)>0) {\r
+ $erreurs['message_erreur'] .= _T('abomailmans:verifier_formulaire');\r
+ }\r
+\r
+ return $erreurs; // si c'est vide, traiter sera appele, sinon le formulaire sera resoumis\r
+}\r
+\r
+function formulaires_editer_abomailman_traiter_dist($id_abomailman='new',$retour='', $config_fonc='', $row=array(), $hidden=''){\r
+ $res = formulaires_editer_objet_traiter('abomailman',$id_abomailman,0,0,$retour,$config_fonc,$row,$hidden);\r
+ \r
+ $message = array();\r
+ $valeurs['envoi_liste_parametres'] = _request('envoi_liste_parametres');\r
+\r
+ $datas = array();\r
+\r
+ // Récupération des données\r
+ $datas['titre'] = _request('titre');\r
+ $datas['descriptif'] = _request('descriptif');\r
+ if(_request('abo_type') && in_array(_request('abo_type'), array('news','ml'))){\r
+ $datas['abo_type'] = _request('abo_type');\r
+ }\r
+ $datas['email'] = _request('email');\r
+ $datas['email_subscribe'] = _request('email_subscribe');\r
+ $datas['email_unsubscribe'] = _request('email_unsubscribe');\r
+ $datas['email_sympa'] = _request('email_sympa');\r
+ $datas['desactive'] = _request('desactive');\r
+ $datas['modele_defaut'] = str_replace('\'','',_request('template'))."".$valeurs['envoi_liste_parametres'];\r
+ $datas['periodicite'] = _request('periodicite');\r
+ $datas['lang'] = _request('langue');\r
+\r
+ // on récupère les données de la liste\r
+ if(intval($id_abomailman)){\r
+ if($datas['desactive'] == '2'){\r
+ sql_delete("spip_abomailmans","id_abomailman = $id_abomailman");\r
+ $message['message_ok'] = _T('abomailmans:liste_supprimee',array("id"=>$id_abomailman,"titre"=> $datas['titre']));\r
+ $message['editable'] = false;\r
+ }else{\r
+ sql_updateq("spip_abomailmans",$datas,"id_abomailman = $id_abomailman");\r
+ $message['message_ok'] = _T('abomailmans:liste_updatee',array("id"=>$id_abomailman,"titre"=> $datas['titre']));\r
+ }\r
+ }else{\r
+ $message['message_ok'] = _T('abomailmans:liste_creee',array("id"=>$id_abomailman,"titre"=> $datas['titre']));\r
+ $message['editable'] = false;\r
+ }\r
+ \r
+ if (!$retour) {\r
+ $message['redirect'] = parametre_url(parametre_url(self(),'id_abomailman', $res['id_abomailman']),'abomailman','');\r
+ } else {\r
+ // sinon on utilise la redirection donnee.\r
+ $message['redirect'] = parametre_url($retour, 'id_abomailman', $res['id_abomailman']);\r
+ }\r
+ return $message;\r
+}\r
+\r
+?>
\ No newline at end of file