Changeset 67840 in spip-zone


Ignore:
Timestamp:
Nov 21, 2012, 11:52:58 AM (7 years ago)
Author:
cedric@…
Message:

Prise en charge de l'option "Proposer l'inscription à la Newsletter lors de l'inscription au site" (l'inscription repose sur l'api qui reste a implementer)

Location:
_plugins_/mailsuscribers
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/mailsuscribers/lang/mailsuscriber_fr.php

    r67831 r67840  
    3535        'label_nom' => 'Nom',
    3636        'label_optin' => 'Opt-in',
     37        'label_mailsuscriber_optin' => 'Je veux recevoir la Newsletter',
    3738
    3839        // S
  • _plugins_/mailsuscribers/mailsuscribers_pipelines.php

    r67831 r67840  
    8181
    8282}
     83
     84/**
     85 * Ajout de la coche d'optin sur le formulaire inscription
     86 *
     87 * @param array $flux
     88 * @return array
     89 */
     90function mailsuscribers_formulaire_charger($flux){
     91        if ($flux['args']['form']=="inscription"){
     92                // ici on ne lit pas la config pour aller plus vite (pas grave si on a ajoute le champ sans l'utiliser)
     93                $flux['data']['mailsuscriber_optin'] = '';
     94        }
     95        return $flux;
     96}
     97
     98/**
     99 * Ajout de la coche d'optin sur le formulaire inscription
     100 *
     101 * @param array $flux
     102 * @return array
     103 */
     104function mailsuscribers_formulaire_fond($flux){
     105        if ($flux['args']['form']=="inscription"){
     106                include_spip('inc/config');
     107                if (lire_config("mailsuscribers/proposer_signup_optin",0)){
     108                        if (($p = strpos($flux['data'],"</ul>"))!==false){
     109                                $input = recuperer_fond("formulaires/inc-optin-suscribe",$flux['args']['contexte']);
     110                                $flux['data'] = substr_replace($flux['data'],$input,$p,0);
     111                        }
     112                }
     113        }
     114        return $flux;
     115}
     116
     117/**
     118 * Ajout de la coche d'optin sur le formulaire inscription
     119 *
     120 * @param array $flux
     121 * @return array
     122 */
     123function mailsuscribers_formulaire_traiter($flux){
     124        if ($flux['args']['form']=="inscription"
     125          AND _request('mailsuscriber_optin')
     126          AND isset($flux['data']['id_auteur'])
     127                AND $id_auteur = $flux['data']['id_auteur']){
     128                // si on a poste l'optin et auteur inscrit en base
     129                // verifier quand meme que la config autorise cet optin, et que l'inscription s'est bien faite)
     130                include_spip('inc/config');
     131                if (lire_config("mailsuscribers/proposer_signup_optin",0)){
     132                        $row = sql_fetsel('nom,email','spip_auteurs','id_auteur='.intval($id_auteur));
     133                        if ($row){
     134                                // inscrire le nom et email
     135                                $newsletter_suscribe = charger_fonction('suscribe','newsletter');
     136                                $newsletter_suscribe($row['email'],array('nom'=>$row['nom']));
     137                        }
     138                }
     139        }
     140        return $flux;
     141}
     142
    83143?>
  • _plugins_/mailsuscribers/paquet.xml

    r67831 r67840  
    22        prefix="mailsuscribers"
    33        categorie="communication"
    4         version="0.1.5"
     4        version="0.1.6"
    55        etat="dev"
    66        compatibilite="[3.0.0;3.0.*]"
     
    2121        <pipeline nom="pre_edition" inclure="mailsuscribers_pipelines.php" />
    2222        <pipeline nom="optimiser_base_disparus" inclure="mailsuscribers_pipelines.php" />
     23        <pipeline nom="formulaire_charger" inclure="mailsuscribers_pipelines.php" />
     24        <pipeline nom="formulaire_fond" inclure="mailsuscribers_pipelines.php" />
     25        <pipeline nom="formulaire_traiter" inclure="mailsuscribers_pipelines.php" />
    2326
    2427        <menu nom="mailsuscribers" titre="mailsuscriber:titre_mailsuscribers" parent="menu_activite" icone="images/mailsuscriber-16.png" action="mailsuscribers" />
Note: See TracChangeset for help on using the changeset viewer.