diff --git a/htdocs/adherent.class.php b/htdocs/adherent.class.php
index 6815aa25160..416b9a9ea2e 100644
--- a/htdocs/adherent.class.php
+++ b/htdocs/adherent.class.php
@@ -42,7 +42,7 @@ class Adherent
var $pass;
var $naiss;
var $photo;
- var $public;
+ // var $public;
var $array_options;
var $errorstr;
@@ -63,14 +63,59 @@ class Adherent
/*
* function envoyant un email au destinataire (recipient) avec le text fourni en parametre.
- * La particularite de cette focntion est de remplacer certains champs par leur valeur pour l'adherent
+ * La particularite de cette fonction est de remplacer certains champs par leur valeur pour l'adherent
* en l'occurrence :
- * %prenom% : est remplace par le prenom
- * %nom% : est remplace par nom
+ * %PRENOM% : est remplace par le prenom
+ * %NOM% : est remplace par nom
+ * %INFOS% : l'ensemble des attributs de cet adherent
+ * %SERVEUR% : URL du serveur web
+ * ...
*/
- Function send_an_email($recipients,$text)
+ Function send_an_email($recipients,$text,$subject="Vos coordonnees sur %SERVEUR%")
{
-
+ $patterns = array (
+ '/%PRENOM%/',
+ '/%NOM%/',
+ '/%INFOS%/',
+ '/%INFO%/',
+ '/%SERVEUR%/',
+ '/%SOCIETE%/',
+ '/%ADRESSE%/',
+ '/%CP%/',
+ '/%VILLE%/',
+ '/%PAYS%/',
+ '/%EMAIL%/',
+ '/%NAISS%/',
+ '/%PHOTO%/',
+ '/%LOGIN%/',
+ '/%PASS%/'
+ );
+ $infos = "Prenom : $this->prenom\nNom : $this->nom\nSociete : $this->societe\nAdresse : $this->adresse\nCP : $this->cp\nVille : $this->ville\nPays : $this->pays\nEmail : $this->email\nLogin : $this->login\nPassword : $this->pass\nDate de naissance : $this->naiss\nPhoto : $this->photo\n";
+ if ($this->public == 1){
+ $infos.="Fiche Publique : Oui\n";
+ }else{
+ $infos.="Fiche Publique : Non\n";
+ }
+ $replace = array (
+ $this->prenom,
+ $this->nom,
+ $infos,
+ $infos,
+ "http://".$_SERVER["SERVER_NAME"]."/",
+ $this->societe,
+ $this->adresse,
+ $this->cp,
+ $this->ville,
+ $this->pays,
+ $this->email,
+ $this->naiss,
+ $this->photo,
+ $this->login,
+ $this->pass
+ );
+ $texttosend = preg_replace ($patterns, $replace, $text);
+ $subjectosend = preg_replace ($patterns, $replace, $subject);
+ return mail($recipients,$subjectosend,$texttosend);
}
/*
*
@@ -532,6 +577,49 @@ class Adherent
}
}
+ /*
+ * Ajoute le user aux mailing-list
+ *
+ */
+ Function add_to_list($email,$list)
+ {
+
+ }
+ /*
+ *
+ *
+ */
+ Function add_to_mailman($email,$list,$mailmandir)
+ {
+ if (!file_exists($mailmandir)) {
+ mkdir($mailmandir, 0777);
+ }
+ if (!file_exists("$mailmandir/$list")) {
+ mkdir("$mailmandir/$list", 0777);
+ }
+ if (!file_exists("$mailmandir/$list/subscribe")) {
+ mkdir("$mailmandir/$list/subscribe", 0777);
+ }
+ if (!file_exists("$mailmandir/$list/subscribe/$email")) {
+ touch("$mailmandir/$list/subscribe/$email");
+ }
+ }
+
+ Function del_to_mailman($email,$list,$mailmandir)
+ {
+ if (!file_exists($mailmandir)) {
+ mkdir($mailmandir, 0777);
+ }
+ if (!file_exists("$mailmandir/$list")) {
+ mkdir("$mailmandir/$list", 0777);
+ }
+ if (!file_exists("$mailmandir/$list/unsubscribe")) {
+ mkdir("$mailmandir/$list/unsubscribe", 0777);
+ }
+ if (!file_exists("$mailmandir/$list/unsubscribe/$email")) {
+ touch("$mailmandir/$list/unsubscribe/$email");
+ }
+ }
}
?>
diff --git a/htdocs/adherents/fiche.php b/htdocs/adherents/fiche.php
index edcbb0afb59..ea88b97585e 100644
--- a/htdocs/adherents/fiche.php
+++ b/htdocs/adherents/fiche.php
@@ -92,8 +92,15 @@ if ($HTTP_POST_VARS["action"] == 'confirm_valid' && $HTTP_POST_VARS["confirm"] =
$adh = new Adherent($db, $rowid);
$adh->validate($user->id);
$adh->fetch($rowid);
- $mesg=preg_replace("/%INFO%/","Prenom : $adh->prenom\nNom : $adh->nom\nSociete = $adh->societe\nAdresse = $adh->adresse\nCode Postal : $adh->cp\nVille : $adh->ville\nPays : $adh->pays\nEmail : $adh->email\nLogin : $adh->login\nPassword : $adh->pass\nNote : $adh->note\n\nServeur : http://$SERVER_NAME/public/adherents/",$conf->adherent->email_valid);
- mail($adh->email,"Vos coordonnees sur http://$SERVER_NAME/",$mesg);
+ //$mesg=preg_replace("/%INFO%/","Prenom : $adh->prenom\nNom : $adh->nom\nSociete = $adh->societe\nAdresse = $adh->adresse\nCode Postal : $adh->cp\nVille : $adh->ville\nPays : $adh->pays\nEmail : $adh->email\nLogin : $adh->login\nPassword : $adh->pass\nNote : $adh->note\n\nServeur : http://$SERVER_NAME/public/adherents/",$conf->adherent->email_valid);
+ //mail($adh->email,"Vos coordonnees sur http://$SERVER_NAME/",$mesg);
+ $adh->send_an_email($adh->email,$conf->adherent->email_valid,'Vos coordonnees sur %SERVEUR%');
+ if ($conf->adherent->use_mailman == 1){
+ foreach ($conf->adherent->mailman_lists as $key){
+ $adh->add_to_mailman($adh->email,$key,$conf->adherent->mailman_dir);
+ }
+ }
+
}
if ($HTTP_POST_VARS["action"] == 'confirm_resign' && $HTTP_POST_VARS["confirm"] == yes)
@@ -101,8 +108,14 @@ if ($HTTP_POST_VARS["action"] == 'confirm_resign' && $HTTP_POST_VARS["confirm"]
$adh = new Adherent($db, $rowid);
$adh->resiliate($user->id);
$adh->fetch($rowid);
- $mesg=preg_replace("/%INFO%/","Prenom : $adh->prenom\nNom : $adh->nom\nSociete = $adh->societe\nAdresse = $adh->adresse\nCode Postal : $adh->cp\nVille : $adh->ville\nPays : $adh->pays\nEmail : $adh->email\nLogin : $adh->login\nPassword : $adh->pass\nNote : $adh->note\n\nServeur : http://$SERVER_NAME/public/adherents/",$conf->adherent->email_resil);
- mail($adh->email,"Vos coordonnees sur http://$SERVER_NAME/",$mesg);
+ //$mesg=preg_replace("/%INFO%/","Prenom : $adh->prenom\nNom : $adh->nom\nSociete = $adh->societe\nAdresse = $adh->adresse\nCode Postal : $adh->cp\nVille : $adh->ville\nPays : $adh->pays\nEmail : $adh->email\nLogin : $adh->login\nPassword : $adh->pass\nNote : $adh->note\n\nServeur : http://$SERVER_NAME/public/adherents/",$conf->adherent->email_resil);
+ //mail($adh->email,"Vos coordonnees sur http://$SERVER_NAME/",$mesg);
+ $adh->send_an_email($adh->email,$conf->adherent->email_resil,'Vos coordonnees sur %SERVEUR%');
+ if ($conf->adherent->use_mailman == 1){
+ foreach ($conf->adherent->mailman_lists as $key){
+ $adh->del_to_mailman($adh->email,$key,$conf->adherent->mailman_dir);
+ }
+ }
}
diff --git a/htdocs/admin/const.php b/htdocs/admin/const.php
index bf3ebf2cc22..b333f7c141b 100644
--- a/htdocs/admin/const.php
+++ b/htdocs/admin/const.php
@@ -37,14 +37,14 @@ print "\n";
$db = new Db();
$form = new Form($db);
-
+$typeconst=array('yesno','texte','chaine');
if ($user->admin)
{
if ($HTTP_POST_VARS["action"] == 'update' || $HTTP_POST_VARS["action"] == 'add')
{
-
- if ($HTTP_POST_VARS["consttype"] == 0){
- $sql = "REPLACE INTO llx_const SET name='".$_POST["constname"]."', value = '".$HTTP_POST_VARS["constvalue"]."',note='".$HTTP_POST_VARS["constnote"]."', type='yesno'";
+
+ if (isset($HTTP_POST_VARS["consttype"]) && $HTTP_POST_VARS["consttype"] != ''){
+ $sql = "REPLACE INTO llx_const SET name='".$_POST["constname"]."', value = '".$HTTP_POST_VARS["constvalue"]."',note='".$HTTP_POST_VARS["constnote"]."', type='".$typeconst[$HTTP_POST_VARS["consttype"]]."'";
}else{
$sql = "REPLACE INTO llx_const SET name='".$_POST["constname"]."', value = '".$HTTP_POST_VARS["constvalue"]."',note='".$HTTP_POST_VARS["constnote"]."'";
}
@@ -94,13 +94,21 @@ if ($result)
{
$form->selectyesnonum('constvalue',$obj->value);
print '
';
- $form->select_array('consttype',array('yesno','texte'),0);
+ $form->select_array('consttype',array('yesno','texte','chaine'),0);
+ }
+ elseif ($obj->type == 'texte')
+ {
+ print '\n";
+ print ' | ';
+ $form->select_array('consttype',array('yesno','texte','chaine'),1);
}
else
{
- print '';
+ print '';
print ' | ';
- $form->select_array('consttype',array('yesno','texte'),1);
+ $form->select_array('consttype',array('yesno','texte','chaine'),2);
}
print ' | ';
@@ -122,10 +130,10 @@ print '';
print " | | \n";
print '';
-print '';
+print '';
print ' | ';
-$form->select_array('consttype',array('yesno','texte'),1);
+$form->select_array('consttype',array('yesno','texte','chaine'),1);
print ' | ';
print '';
diff --git a/htdocs/conf/conf.class.php3.sample b/htdocs/conf/conf.class.php3.sample
index ee03ea578c4..61ff840dbcd 100644
--- a/htdocs/conf/conf.class.php3.sample
+++ b/htdocs/conf/conf.class.php3.sample
@@ -192,6 +192,9 @@ class ServiceConf {
class AdherentConf {
Function AdherentConf() {
$this->enabled = 0;
+ $this->use_mailman = 1;
+ $this->mailman_dir = "/home/httpd/adherents.j1b.org/htdocs/adherents/ml/mailman";
+ $this->mailman_lists = array('lists1','list2');
$this->email_new = "Merci de votre inscription. Votre adhesion devrait etre rapidement validee.\nVoici le rappel des coordonnees que vous avez rentrees (toute information erronee entrainera la non validation de votre inscription) :\n\n%INFO%\n\nVous pouvez a tout moment, grace a votre login et mot de passe, modifier vos coordonnees a l'adresse suivante :\nhttp://$SERVER_NAME/public/adherents/priv_edit.php\n\n";
$this->email_edit = "Voici le rappel des coordonnees que vous avez modifiees (toute information erronee entrainera la non validation de votre inscription) :\n\n%INFO%\n\nVous pouvez a tout moment, grace a votre login et mot de passe, modifier vos coordonnees a l'adresse suivante :\nhttp://$SERVER_NAME/public/adherents/priv_edit.php\n\n";
$this->email_valid = "Votre adhesion vient d'etre validee. Voici le rappel de vos coordonnees (toute information erronee entrainera la non validation de votre inscription) :\n\n%INFO%\n\nVous pouvez a tout moment, grace a votre login et mot de passe, modifier vos coordonnees a l'adresse suivante :\nhttp://$SERVER_NAME/public/adherents/priv_edit.php\n\n";
diff --git a/htdocs/html.form.class.php b/htdocs/html.form.class.php
index 26aaa7ab2f1..c49b73da06f 100644
--- a/htdocs/html.form.class.php
+++ b/htdocs/html.form.class.php
@@ -176,9 +176,9 @@ class Form {
Function checkbox($name,$checked=0,$value=1)
{
if ($checked==1){
- print "\n";
+ print "\n";
}else{
- print "\n";
+ print "\n";
}
}
}
diff --git a/htdocs/main.inc.php3 b/htdocs/main.inc.php3
index 5a4857b7e63..106145d4ffe 100644
--- a/htdocs/main.inc.php3
+++ b/htdocs/main.inc.php3
@@ -80,7 +80,22 @@ if (defined("MAIN_THEME"))
$conf->theme=MAIN_THEME;
$conf->css = "theme/".$conf->theme."/".$conf->theme.".css";
}
-
+if (defined("MAIN_MAIL_RESIL"))
+{
+ $conf->adherent->email_resil=MAIN_MAIL_RESIL;
+}
+if (defined("MAIN_MAIL_VALID"))
+{
+ $conf->adherent->email_valid=MAIN_MAIL_VALID;
+}
+if (defined("MAIN_MAIL_EDIT"))
+{
+ $conf->adherent->email_edit=MAIN_MAIL_EDIT;
+}
+if (defined("MAIN_MAIL_NEW"))
+{
+ $conf->adherent->email_new=MAIN_MAIL_NEW;
+}
/*
*/
if(!isset($application_lang))
diff --git a/htdocs/public/adherents/new.php b/htdocs/public/adherents/new.php
index 57f6d3e1e8f..8032ef1f0b0 100644
--- a/htdocs/public/adherents/new.php
+++ b/htdocs/public/adherents/new.php
@@ -102,9 +102,9 @@ if ($HTTP_POST_VARS["action"] == 'add')
$adh->cotisation(mktime(12, 0 , 0, $remonth, $reday, $reyear), $cotisation);
}
// Envoi d'un Email de confirmation au nouvel adherent
- $mesg=preg_replace("/%INFO%/","Prenom : $prenom\nNom : $nom\nSociete = $societe\nAdresse = $adresse\nCode Postal : $cp\nVille : $ville\nPays : $pays\nEmail : $email\nLogin : $login\nPassword : $pass1\nNote : $note\n\nServeur : http://$SERVER_NAME/public/adherents/",$conf->adherent->email_new);
- //$mesg="Merci de votre inscription. Votre adhesion devrait etre rapidement validee.\nVoici le rappel des coordonnees que vous avez rentrees (toute information erronee entrainera la non validation de votre inscription) :\n\nPrenom : $prenom\nNom : $nom\nSociete = $societe\nAdresse = $adresse\nCode Postal : $cp\nVille : $ville\nPays : $pays\nEmail : $email\nLogin : $login\nPassword : $pass\nNote : $note\n\nVous pouvez a tout moment, grace a votre login et mot de passe, modifier vos coordonnees a l'adresse suivante :\nhttp://$SERVER_NAME/adherents/private/edit.php\n\n";
- mail($email,"Votre adhesion sur http://$SERVER_NAME/",$mesg);
+ //$mesg=preg_replace("/%INFO%/","Prenom : $prenom\nNom : $nom\nSociete = $societe\nAdresse = $adresse\nCode Postal : $cp\nVille : $ville\nPays : $pays\nEmail : $email\nLogin : $login\nPassword : $pass1\nNote : $note\n\nServeur : http://$SERVER_NAME/public/adherents/",$conf->adherent->email_new);
+ //mail($email,"Votre adhesion sur http://$SERVER_NAME/",$mesg);
+ $adh->send_an_email($email,$conf->adherent->email_new,'Vos coordonnees sur %SERVEUR%');
Header("Location: new.php?action=added");
}
}
diff --git a/htdocs/public/adherents/priv_edit.php b/htdocs/public/adherents/priv_edit.php
index feadab5c0cc..4938092b9db 100644
--- a/htdocs/public/adherents/priv_edit.php
+++ b/htdocs/public/adherents/priv_edit.php
@@ -109,9 +109,9 @@ if ($action == 'update')
}
if ($adh->update($user->id) )
{
- $mesg=preg_replace("/%INFO%/","Prenom : $prenom\nNom : $nom\nSociete = $societe\nAdresse = $adresse\nCode Postal : $cp\nVille : $ville\nPays : $pays\nEmail : $email\nLogin : $login\nPassword : $pass\nNote : $note\n\nServeur : http://$SERVER_NAME/public/adherents/",$conf->adherent->email_edit);
- mail($email,"Vos coordonnees sur http://$SERVER_NAME/",$mesg);
-
+ //$mesg=preg_replace("/%INFO%/","Prenom : $prenom\nNom : $nom\nSociete = $societe\nAdresse = $adresse\nCode Postal : $cp\nVille : $ville\nPays : $pays\nEmail : $email\nLogin : $login\nPassword : $pass\nNote : $note\n\nServeur : http://$SERVER_NAME/public/adherents/",$conf->adherent->email_edit);
+ //mail($email,"Vos coordonnees sur http://$SERVER_NAME/",$mesg);
+ $adh->send_an_email($email,$conf->adherent->email_edit,'Vos coordonnees sur %SERVEUR%');
//Header("Location: fiche.php?rowid=$adh->id&action=edit");
Header("Location: $PHP_SELF");
}
diff --git a/htdocs/user/fiche.php3 b/htdocs/user/fiche.php3
index 9522d97325a..e18504f60bf 100644
--- a/htdocs/user/fiche.php3
+++ b/htdocs/user/fiche.php3
@@ -57,30 +57,31 @@ if ($HTTP_POST_VARS["action"] == 'add' && $user->admin)
}
}
-if ($action == 'update' && $user->admin)
+if ($_POST["action"] == 'update' && $user->admin)
{
$edituser = new User($db, $id);
$edituser->fetch();
- $edituser->nom = $nom;
- $edituser->note = $HTTP_POST_VARS["note"];
- $edituser->prenom = $prenom;
- $edituser->login = $login;
- $edituser->email = $email;
- $edituser->admin = $HTTP_POST_VARS["admin"];
- $edituser->webcal_login = $HTTP_POST_VARS["webcal_login"];
- if (isset($HTTP_POST_VARS["module_compta"]) && $HTTP_POST_VARS["module_compta"] ==1){
+ $edituser->nom = $_POST["nom"];
+ $edituser->note = $_POST["note"];
+ $edituser->prenom = $_POST["prenom"];
+ $edituser->login = $_POST["login"];
+ $edituser->email = $_POST["email"];
+ $edituser->admin = $_POST["admin"];
+ $edituser->webcal_login = $_POST["webcal_login"];
+ if (isset($_POST["module_compta"]) && $_POST["module_compta"] ==1){
$edituser->compta = 1;
}else{
$edituser->compta = 0;
}
- if (isset($HTTP_POST_VARS["module_comm"]) && $HTTP_POST_VARS["module_comm"] ==1){
+ if (isset($_POST["module_comm"]) && $_POST["module_comm"] ==1){
$edituser->comm = 1;
}else{
$edituser->comm = 0;
}
- if (! $edituser->update($id, $user))
+ // if (! $edituser->update($id, $user))
+ if (! $edituser->update())
{
print $edituser->error();
}
|