Skip to content
Extraits de code Groupes Projets
Valider 8be2f259 rédigé par real3t@gmail.com's avatar real3t@gmail.com
Parcourir les fichiers

Surcharge de l'inscription permettant de choisir la ou les listes auxquelles...

Surcharge de l'inscription permettant de choisir la ou les listes auxquelles on veut s'inscrire (à améliorer)
parent f2d22ac7
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -211,6 +211,8 @@ formulaires/inc-login_forum.html -text
formulaires/inc-select-categories.html -text
formulaires/inc/config_couleurs.html -text
formulaires/inc/config_couleurs_fonctions.php -text
formulaires/newsletter_subscribe.html -text
formulaires/newsletter_subscribe.php -text
formulaires/recherche.html -text
/forum.html -text
/identifiants.html -text
......
<div class='formulaire_spip formulaire_newsletter formulaire_[(#FORM)] ajax'>
[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV**{message_ok})</p>]
[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
[(#ENV{editable})
<form method='post' action='#ENV{action}'><div>
#ACTION_FORMULAIRE{#ENV{action}}
<ul>
#SET{fl,mailsubscriber}
#SET{name,session_email}#SET{obli,'obligatoire'}#SET{defaut,''}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
<li class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
<label for="#GET{name}"><:newsletter:label_email_subscribe:></label>[
<span class='erreur_message'>(#GET{erreurs})</span>
]<input type="email" name="#GET{name}" class="email text" value="#ENV*{#GET{name}}" id="#GET{name}" [(#HTML5|et{#GET{obli}})required='required']/>
</li>
#SET{name,listes}#SET{obli,'obligatoire'}#SET{defaut,''}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
<li class="editer editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
<label>[(#GET{fl}|concat{':label_',#GET{name}}|_T)]</label>[
<span class='erreur_message'>(#GET{erreurs})</span>
]
<INCLURE{fond=formulaires/inc-check-subscribinglists,name=#GET{name},choix_listes=#ENV{_listes_dispo},status=open,env} />
</li>
</ul>
[(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ]
<!--extra-->
<p class="boutons"><input type="submit" class="submit" value="<:newsletter:bouton_subscribe|attribut_html:>" /></p>
</div></form>
]
</div>
<?php
/**
* Plugin mailsubscribers
* (c) 2012 Cédric Morin
* Licence GNU/GPL v3
*/
if (!defined('_ECRIRE_INC_VERSION')) return;
$GLOBALS['formulaires_no_spam'][] = 'newsletter_subscribe';
include_spip('inc/mailsubscribers');
/**
* Declarer les champs postes et y integrer les valeurs par defaut
*/
function formulaires_newsletter_subscribe_charger_dist($listes=''){
$valeurs = array(
'session_email' => ''
);
$valeurs['listes'] = explode(',',$listes);
$valeurs['_listes_dispo'] = mailsubscribers_listes();
if (isset($GLOBALS['visiteur_session']['email']))
$valeurs['session_email'] = $GLOBALS['visiteur_session']['email'];
elseif (isset($GLOBALS['visiteur_session']['session_email']))
$valeurs['session_email'] = $GLOBALS['visiteur_session']['session_email'];
return $valeurs;
}
/**
* Verifier les champs postes et signaler d'eventuelles erreurs
*/
function formulaires_newsletter_subscribe_verifier_dist(){
$listes = _request('listes');
if ($listes AND is_array($listes))
set_request('listes',implode(',',$listes));
if (!$listes)
$listes = array();
$erreurs = array();
if (!$email = _request('session_email')){
$erreurs['session_email'] = _T('info_obligatoire');
}
else {
// verifier que l'email est valide
if (!email_valide($email))
$erreurs['session_email'] = _T('info_email_invalide');
}
if (count($erreurs))
set_request('listes',$listes);
return $erreurs;
}
/**
* Traiter les champs postes
*/
function formulaires_newsletter_subscribe_traiter_dist(){
// langue par defaut lors de l'inscription : la langue courante dans la page
$options = array('lang'=>$GLOBALS['spip_lang']);
$email = _request('session_email');
$listes = _request('listes');
if ($listes AND is_string($listes))
$listes = explode(',',$listes);
if ($listes AND is_array($listes) AND count($listes))
$options['listes'] = $listes;
$res = array(
'editable'=>true
);
$newsletter_subscribe = charger_fonction("subscribe","newsletter");
if ($newsletter_subscribe($email,$options)){
if (lire_config('mailsubscribers/double_optin',0))
$res['message_ok'] = _T('newsletter:subscribe_message_ok_confirm',array('email'=>"<b>$email</b>"));
else
$res['message_ok'] = _T('newsletter:subscribe_message_ok',array('email'=>"<b>$email</b>"));
}
else
$res['message_erreur'] = _T('mailsubscriber:erreur_technique_subscribe');
set_request('email');
return $res;
}
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter