source: spip-zone/_plugins_/_dev_/sms/exec/envoi_sms.php @ 7774

Last change on this file since 7774 was 7774, checked in by bertrand@…, 13 years ago

Tuyaux raccordes , sms2email semble vouloir marcher , apparemment clickatell aime pas le post (a voir). On va tester live , maintenant :)

File size: 2.9 KB
Line 
1<?php
2/*
3 * Envoi de sms
4 *
5 * Auteur : bertrand@toggg.com
6 * © 2006 - Distribue sous licence LGPL
7 *
8 */
9
10function exec_envoi_sms_dist()
11{
12        $champs = array('prestataire', 'user', 'password', 'api_id',
13                                        'text', 'from', 'to', 'id');
14        foreach ($champs as $champ) {
15            $contexte[$champ] = _request($champ);
16    }
17        $result = $message = null;
18        if (_request('envoi')) {
19                $securiser_action = charger_fonction('securiser_action', 'inc');
20                $securiser_action();
21                $resultat = transmet_prestataire($contexte);
22                $message = $resultat ? _L('erreur') . ':<br />'. $resultat
23                                                        : _L('envoi_correct_pour') . ' ' . $contexte['to'];
24        }
25        include_spip("inc/texte");
26        envoi_sms_debut_page($message);
27
28        echo envoi_sms_fond($contexte);
29       
30        envoi_sms_fin_page();
31                       
32}
33
34/*
35 Vérifier les parametre et faire la requete d'envoi du sms
36        $contexte est un tableau (nom=>valeur) qui sera enrichi
37        Retourne '' si tou s'est bien passé , message d'erreur sinon
38*/
39function transmet_prestataire(&$contexte)
40{
41        include_spip('inc/sms');
42        $contexte['resultat'] = '';
43//      $contexte['resultat'] = print_r($contexte, true);
44
45    $sender =& Net_SMS::factory($contexte['prestataire'],
46                         array( 'user' => $contexte['user'],
47                                                                'password' => $contexte['password'],
48                                                                'api_id' => $contexte['api_id'] ));
49    if (c_pear::isError($sender))   {
50                $contexte['resultat'] = _L('factory SMS failed') . '<br />' .
51                        print_r($sender, true);
52                return $contexte['resultat'];
53    }
54        //send message and return result
55        $msg = array('to'=>$contexte['to'],
56                     'from'=>$contexte['from'],
57                                 'id'=>$contexte['id'],
58                                 'text'=>$contexte['text']);
59        $e = $sender->send($msg);
60    if (c_pear::isError($e))   {
61                $contexte['resultat'] = _L('transmission_loupee') .
62                   '<br />' . print_r($msg, true) .
63                   '<br />' . print_r($e, true);
64    }
65        return $contexte['resultat'];
66}
67
68/*
69 Fabriquer les balises des champs d'apres un modele fonds/envoi_sms.html
70        $contexte est un tableau (nom=>valeur) qui sera enrichi puis passe à recuperer_fond
71*/
72function envoi_sms_fond($contexte = array())
73{
74    $contexte['lang'] = $GLOBALS['spip_lang'];
75    $contexte['arg'] = 'envoi_sms-0.1.0';
76    $contexte['hash'] =  calculer_action_auteur('-' . $contexte['arg']);
77
78    include_spip('public/assembler');
79    return recuperer_fond('fonds/envoi_sms', $contexte);
80}
81
82function envoi_sms_debut_page($message = '')
83{
84        include_spip('inc/presentation');
85
86        $commencer_page = charger_fonction('commencer_page', 'inc');
87        echo $commencer_page(_L('Envoi de SMS'), 'sms', 'envoi_sms');
88       
89        debut_gauche();
90       
91        debut_boite_info();
92        echo propre(_L('Vous pouvez envoyer des SMS depuis cette page'));
93        fin_boite_info();
94       
95        if ($message) {
96                debut_boite_info();
97                echo propre($message);
98                fin_boite_info();
99        }
100       
101        debut_droite();
102       
103        gros_titre(_L("Envoi de SMS"));
104       
105       
106        debut_cadre_trait_couleur('','','',_L("Parametres d'envoi"));
107
108}
109
110function envoi_sms_fin_page()
111{
112        fin_cadre_trait_couleur();
113       
114        echo fin_page();
115}
116?>
Note: See TracBrowser for help on using the repository browser.