Changeset 5946 in spip-zone


Ignore:
Timestamp:
Oct 6, 2006, 3:46:49 PM (13 years ago)
Author:
cedric@…
Message:

generalisation de l'API de forms pour la personalisation des emails

Location:
_plugins_/_stable_
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/_stable_/ecard/envoi_ecard.html

    r5548 r5946  
    1 <?php
    2 
    3 $renvoyer_image = false;
    4 
    5 
    6 if ($mel_confirm == 'oui' AND ($id_reponse = intval($id_reponse))
    7                 && (isset($id_article)) && ($id_article = intval($id_article)) ) {
    8         $query = "SELECT * FROM spip_reponses WHERE id_reponse=$id_reponse";
    9         $result = spip_query($query);
    10         if ($row = spip_fetch_array($result)) {
    11                 $id_form = $row['id_form'];
    12                 // D'abord verifier que l'URL est legitime, donc que la demande a bien
    13                 // ete generee par SPIP
    14                 if (verifier_action_auteur("forms confirme reponse $id_reponse", $hash)) {
    15                         include_spip('ecard_filtres');
    16                         generer_mail_ecard_formulaire($id_form, $id_reponse, $id_article);
    17                 }
    18         }
    19         $renvoyer_image = true;
    20 }
    21 
    22 if ($renvoyer_image) {
    23         $image = "47494638396118001800800000ffffff00000021f90401000000002c0000000018001800000216848fa9cbed0fa39cb4da8bb3debcfb0f86e248965301003b";
    24         $image = pack("H*", $image);
    25         $size = strlen($image);
    26        
    27         Header("Content-Type: image/gif");
    28         Header("Content-Length: ".$size);
    29         Header("Cache-Control: no-cache,no-store");
    30         Header("Pragma: no-cache");
    31         Header("Connection: close");
    32        
    33         echo $image;
    34 }
    35 
    36 
    37 ?>
     1[(#HTTP_HEADER{Content-Type: image/gif})][(#INCLURE{fond=valide_form}{mel_confirm}{id_reponse}{hash}{id_article}{modele=form_reponse_email_ecard})]
  • _plugins_/_stable_/ecard/modeles/form_ecard.html

    r4776 r5946  
    11<BOUCLE_f(FORMS){id_form}>
    2 #FORMS{'envoi_ecard','ecard:avis_message_confirmation'}
     2<BOUCLE_a(ARTICLES){id_article=#ENV{id_article}}>
     3#FORMS{'envoi_ecard','ecard:avis_message_confirmation','Merci !'}
     4</BOUCLE_a>
    35</BOUCLE_f>
  • _plugins_/_stable_/ecard/plugin.xml

    r5548 r5946  
    1616        Envoi d'e-card a partir d'un formulaire de forms
    1717_ Necessite le plugin forms
    18 _ Ce plugin illustre le mecanisme de personalisation des squelettes de formulaire : un formulaire d'ecard s'insere par le raccourci <formxx|ecard> qui declenche l'appel au formulaire personalis&eacute; modele_form_ecard.html
     18_ Ce plugin illustre le mecanisme de personalisation des squelettes de formulaire : un formulaire d'ecard s'insere par le raccourci <code><formxx|ecard></code> qui declenche l'appel au formulaire personalis&eacute; modele_form_ecard.html
    1919        </description>
    2020        <prefix>
  • _plugins_/_stable_/forms/1_9_1/inc/forms.php

    r5901 r5946  
    253253        }
    254254
    255         function Forms_generer_mail_reponse_formulaire($id_form, $id_reponse, $modele_mail = 'form_reponse_email'){
     255        function Forms_generer_mail_reponse_formulaire($id_form, $id_reponse, $env){
     256                if (!is_array($env)) $env=array();
     257                $modele_mail = 'form_reponse_email';
     258                if (isset($env['modele']))
     259                        $modele_mail = $env['modele'];
    256260                $result = spip_query("SELECT * FROM spip_forms WHERE id_form=$id_form");
    257261                if ($row = spip_fetch_array($result)) {
     
    259263                        if ($f = find_in_path(($m = "$modele-$id_form").".html"))
    260264                                $modele = $m;
    261                         $corps_mail = recuperer_fond($modele,array('id_reponse'=>$id_reponse));
    262                         $corps_mail_admin = recuperer_fond($modele,array('id_reponse'=>$id_reponse,'mail_admin'=>'oui'));
     265                        $corps_mail = recuperer_fond($modele,array_merge($env,array('id_reponse'=>$id_reponse)));
     266                        $corps_mail_admin = recuperer_fond($modele,array_merge($env,array('id_reponse'=>$id_reponse,'mail_admin'=>'oui')));
    263267                        $champconfirm = $row['champconfirm'];
    264268                        $email = unserialize($row['email']);
  • _plugins_/_stable_/forms/1_9_1/valide_form.html

    r5858 r5946  
    5656                        // ete generee par SPIP
    5757                        if (verifier_action_auteur("forms confirme reponse $id_reponse", $hash)) {
    58                                 $modele = '[(#ENV{modele,''}|texte_script)]';
    59                                 if ($modele)
    60                                         Forms_generer_mail_reponse_formulaire($id_form, $id_reponse, $modele);
    61                                 else
    62                                         Forms_generer_mail_reponse_formulaire($id_form, $id_reponse);
     58                                $env = unserialize('[(#ENV|texte_script)]');
     59                                Forms_generer_mail_reponse_formulaire($id_form, $id_reponse, $env);
    6360                        }
    6461                }
Note: See TracChangeset for help on using the changeset viewer.