1 | <?php |
---|
2 | |
---|
3 | /***************************************************************************\ |
---|
4 | * SPIP, Systeme de publication pour l'internet * |
---|
5 | * * |
---|
6 | * Copyright (c) 2001-2015 * |
---|
7 | * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James * |
---|
8 | * * |
---|
9 | * Ce programme est un logiciel libre distribue sous licence GNU/GPL. * |
---|
10 | * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * |
---|
11 | \***************************************************************************/ |
---|
12 | |
---|
13 | |
---|
14 | if (!defined('_ECRIRE_INC_VERSION')) { |
---|
15 | return; |
---|
16 | } |
---|
17 | |
---|
18 | function formulaires_ecrire_auteur_charger_dist($id_auteur, $id_article, $mail) { |
---|
19 | include_spip('inc/texte'); |
---|
20 | $puce = definir_puce(); |
---|
21 | $valeurs = array( |
---|
22 | 'sujet_message_auteur' => '', |
---|
23 | 'texte_message_auteur' => '', |
---|
24 | 'email_message_auteur' => isset($GLOBALS['visiteur_session']['email']) ? $GLOBALS['visiteur_session']['email'] : '', |
---|
25 | 'nobot' => '', |
---|
26 | ); |
---|
27 | |
---|
28 | // id du formulaire (pour en avoir plusieurs sur une meme page) |
---|
29 | $valeurs['id'] = ($id_auteur ? '_' . $id_auteur : '_ar' . $id_article); |
---|
30 | // passer l'id_auteur au squelette |
---|
31 | $valeurs['id_auteur'] = $id_auteur; |
---|
32 | $valeurs['id_article'] = $id_article; |
---|
33 | |
---|
34 | return $valeurs; |
---|
35 | } |
---|
36 | |
---|
37 | function formulaires_ecrire_auteur_verifier_dist($id_auteur, $id_article, $mail) { |
---|
38 | $erreurs = array(); |
---|
39 | include_spip('inc/filtres'); |
---|
40 | |
---|
41 | if (!$adres = _request('email_message_auteur')) { |
---|
42 | $erreurs['email_message_auteur'] = _T("info_obligatoire"); |
---|
43 | } elseif (!email_valide($adres)) { |
---|
44 | $erreurs['email_message_auteur'] = _T('form_prop_indiquer_email'); |
---|
45 | } else { |
---|
46 | include_spip('inc/session'); |
---|
47 | session_set('email', $adres); |
---|
48 | } |
---|
49 | |
---|
50 | if (!$sujet = _request('sujet_message_auteur')) { |
---|
51 | $erreurs['sujet_message_auteur'] = _T("info_obligatoire"); |
---|
52 | } elseif (!(strlen($sujet) > 3)) { |
---|
53 | $erreurs['sujet_message_auteur'] = _T('forum:forum_attention_trois_caracteres'); |
---|
54 | } |
---|
55 | |
---|
56 | if (!$texte = _request('texte_message_auteur')) { |
---|
57 | $erreurs['texte_message_auteur'] = _T("info_obligatoire"); |
---|
58 | } elseif (!(strlen($texte) > 10)) { |
---|
59 | $erreurs['texte_message_auteur'] = _T('forum:forum_attention_dix_caracteres'); |
---|
60 | } |
---|
61 | |
---|
62 | if (_request('nobot')) { |
---|
63 | $erreurs['message_erreur'] = _T('pass_rien_a_faire_ici'); |
---|
64 | } |
---|
65 | |
---|
66 | if (!_request('confirmer') and !count($erreurs)) { |
---|
67 | $erreurs['previsu'] = ' '; |
---|
68 | $erreurs['message_erreur'] = ''; |
---|
69 | } |
---|
70 | |
---|
71 | return $erreurs; |
---|
72 | } |
---|
73 | |
---|
74 | function formulaires_ecrire_auteur_traiter_dist($id_auteur, $id_article, $mail) { |
---|
75 | |
---|
76 | $adres = _request('email_message_auteur'); |
---|
77 | $sujet = _request('sujet_message_auteur'); |
---|
78 | |
---|
79 | $sujet = "[" . supprimer_tags(extraire_multi($GLOBALS['meta']['nom_site'])) . "] " |
---|
80 | . _T('info_message_2') . " " |
---|
81 | . $sujet; |
---|
82 | $texte = _request('texte_message_auteur'); |
---|
83 | |
---|
84 | $texte .= "\n\n-- " . _T('envoi_via_le_site') . " " . supprimer_tags(extraire_multi($GLOBALS['meta']['nom_site'])) . " (" . $GLOBALS['meta']['adresse_site'] . "/) --\n"; |
---|
85 | $envoyer_mail = charger_fonction('envoyer_mail', 'inc'); |
---|
86 | |
---|
87 | if ($envoyer_mail($mail, $sujet, $texte, $adres, |
---|
88 | "X-Originating-IP: " . $GLOBALS['ip'])) { |
---|
89 | $message = _T('form_prop_message_envoye'); |
---|
90 | |
---|
91 | return array('message_ok' => $message); |
---|
92 | } else { |
---|
93 | $message = _T('pass_erreur_probleme_technique'); |
---|
94 | |
---|
95 | return array('message_erreur' => $message); |
---|
96 | } |
---|
97 | } |
---|