From dc2f1b210eb0be014c6e185c2df1bfe67bdd0493 Mon Sep 17 00:00:00 2001 From: Cerdic <cedric@yterium.com> Date: Sun, 26 Sep 2010 23:02:29 +0000 Subject: [PATCH] #FORMULAIRE_CONFIGURER_ANNONCES remplace configuration/annonce --- .gitattributes | 3 +- ecrire/configuration/annonces.php | 125 ------------------ prive/formulaires/configurer_annonces.html | 101 ++++++++++++++ prive/formulaires/configurer_annonces.php | 82 ++++++++++++ .../contenu/page-configurer_interactions.html | 10 +- 5 files changed, 188 insertions(+), 133 deletions(-) delete mode 100644 ecrire/configuration/annonces.php create mode 100644 prive/formulaires/configurer_annonces.html create mode 100644 prive/formulaires/configurer_annonces.php diff --git a/.gitattributes b/.gitattributes index d129741713..53cd8688ea 100644 --- a/.gitattributes +++ b/.gitattributes @@ -74,7 +74,6 @@ ecrire/charsets/iso-8859-9.php -text ecrire/charsets/mathml.php -text ecrire/charsets/translit.php -text ecrire/charsets/translitcomplexe.php -text -ecrire/configuration/annonces.php -text ecrire/configuration/avertisseur.php -text ecrire/configuration/index.php -text ecrire/configuration/moderniseur_html.php -text @@ -356,6 +355,8 @@ prive/editer/auteur.html -text prive/editer/breve.html -text prive/editer/logo.html -text prive/editer/rubrique.html -text +prive/formulaires/configurer_annonces.html -text +prive/formulaires/configurer_annonces.php -text prive/formulaires/configurer_articles.html -text prive/formulaires/configurer_articles.php -text prive/formulaires/configurer_breves.html -text diff --git a/ecrire/configuration/annonces.php b/ecrire/configuration/annonces.php deleted file mode 100644 index 42c75c59ad..0000000000 --- a/ecrire/configuration/annonces.php +++ /dev/null @@ -1,125 +0,0 @@ -<?php - -/***************************************************************************\ - * SPIP, Systeme de publication pour l'internet * - * * - * Copyright (c) 2001-2010 * - * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James * - * * - * Ce programme est un logiciel libre distribue sous licence GNU/GPL. * - * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * -\***************************************************************************/ - -if (!defined("_ECRIRE_INC_VERSION")) return; - -include_spip('inc/presentation'); -include_spip('inc/config'); - -function configuration_annonces_dist() -{ - global $spip_lang_left; - - $res = "<table border='0' cellspacing='1' cellpadding='3' width=\"100%\">" - . "\n<tr><td class='verdana2'>" - . "<blockquote><p><i>"._T('info_hebergeur_desactiver_envoi_email')."</i></p></blockquote>" - . "</td></tr></table>"; - - // - // Suivi editorial (articles proposes & publies) - // - - $suivi_edito=$GLOBALS['meta']["suivi_edito"]; - $adresse_suivi=$GLOBALS['meta']["adresse_suivi"]; - $adresse_suivi_inscription=$GLOBALS['meta']["adresse_suivi_inscription"]; - - $res .= "<br />\n" - . debut_cadre_relief("", true, "", _T('info_suivi_activite')) - . "<table border='0' cellspacing='1' cellpadding='3' width=\"100%\">"; - - $res .= "\n<tr><td class='verdana2'>" - . _T('info_facilite_suivi_activite') - . "</td></tr></table>"; - - - $res .= "<table border='0' cellspacing='1' cellpadding='3' width=\"100%\">" - . "\n<tr><td style='text-align: $spip_lang_left' class='verdana2'>"; - - $res .= bouton_radio("suivi_edito", "oui", _T('bouton_radio_envoi_annonces_adresse'), $suivi_edito == "oui", "changeVisible(this.checked, 'config-edito', 'block', 'none');"); - - - if ($suivi_edito == "oui") $style = "display: block;"; - else $style = "display: none;"; - - $res .= "<div id='config-edito' style='$style'>" - . "\n<div style='text-align: center;'><input type='text' name='adresse_suivi' id='adresse_suivi' value='$adresse_suivi' size='30' class='fondl' /></div>" - . "\n<blockquote class='spip'><p>"; - - if (!$adresse_suivi) $adresse_suivi = "mailing@monsite.net"; - - $res .= "<label for='adresse_suivi_inscription'>"._T('info_config_suivi', array('adresse_suivi' => $adresse_suivi))."</label>" - . "<br />\n<input type='text' name='adresse_suivi_inscription' id='adresse_suivi_inscription' value='$adresse_suivi_inscription' size='50' class='fondl' />" - . "</p></blockquote>" - . "</div>" - . "<br />\n" - . bouton_radio("suivi_edito", "non", _T('bouton_radio_non_envoi_annonces_editoriales'), $suivi_edito == "non", "changeVisible(this.checked, 'config-edito', 'none', 'block');") - . "</td></tr></table>\n" - . fin_cadre_relief(true); - - // - // Annonce des nouveautes - // - $quoi_de_neuf=$GLOBALS['meta']["quoi_de_neuf"]; - $adresse_neuf=$GLOBALS['meta']["adresse_neuf"]; - $jours_neuf=$GLOBALS['meta']["jours_neuf"]; - - $res .= "<br />\n" - . debut_cadre_relief("", true, "", _T('info_annonce_nouveautes')) - . "<table border='0' cellspacing='1' cellpadding='3' width=\"100%\">" - . "\n<tr><td class='verdana2'>" - . _T('info_non_envoi_annonce_dernieres_nouveautes') - . "</td></tr>" - . "\n<tr><td style='text-align: $spip_lang_left' class='verdana2'>" - . bouton_radio("quoi_de_neuf", "oui", _T('bouton_radio_envoi_liste_nouveautes'), $quoi_de_neuf == "oui", "changeVisible(this.checked, 'config-neuf', 'block', 'none');"); - - if ($quoi_de_neuf == "oui") $style = "display: block;"; - else $style = "display: none;"; - - $res .= "<div id='config-neuf' style='$style'>" - . "<ul>" - . "<li><label for='adresse_neuf'>"._T('info_adresse')."</label>" - . "\n<input type='text' name='adresse_neuf' id='adresse_neuf' value='$adresse_neuf' size='30' class='fondl' />" - . "</li><li><label for='jours_neuf'>"._T('info_tous_les')."</label>" - . "\n<input type='text' name='jours_neuf' id='jours_neuf' value='$jours_neuf' size='4' class='fondl' />\n" - . _T('info_jours') - . " \n<input type='submit' name='envoi_now' id='envoi_now' value='" - . _T('info_envoyer_maintenant') - . "' class='fondl' onclick='AjaxNamedSubmit(this)' />" - . "</li></ul>" - . "</div>"; - - $res .= "<br />\n" - . bouton_radio("quoi_de_neuf", "non", _T('info_non_envoi_liste_nouveautes'), $quoi_de_neuf == "non", "changeVisible(this.checked, 'config-neuf', 'none', 'block');"); - - $res .= "</td></tr></table>\n" - . fin_cadre_relief(true); - - $email_envoi = entites_html($GLOBALS['meta']["email_envoi"]); - $titre = _T('info_email_envoi'); - if ($email_envoi) $titre .= " : " . $email_envoi; - $res .= "<br />\n" - . debut_cadre_relief("", true, "", $titre) - . "<table border='0' cellspacing='1' cellpadding='3' width=\"100%\">" - . "\n<tr><td class='verdana2'>" - . "<label for='email_envoi'>"._T('info_email_envoi_txt')."</label>" - . " <input type='text' name='email_envoi' id='email_envoi' value=\"$email_envoi\" size='20' class='fondl' />" - . "</td></tr>" - . "\n<tr><td> </td></tr></table>" - . fin_cadre_relief(true); - - $res = debut_cadre_trait_couleur("annonce-24.png", true, "", _T('info_envoi_email_automatique').aide ("confmails")) - . ajax_action_post('configuration', 'annonces', 'config_contenu','#configurer-annonces',$res) - . fin_cadre_trait_couleur(true); - - return ajax_action_greffe('configurer-annonces', '', $res); -} -?> diff --git a/prive/formulaires/configurer_annonces.html b/prive/formulaires/configurer_annonces.html new file mode 100644 index 0000000000..0975f95c66 --- /dev/null +++ b/prive/formulaires/configurer_annonces.html @@ -0,0 +1,101 @@ +<div class="formulaire_spip formulaire_configurer formulaire_#FORM formulaire_#FORM-#ENV{id,nouveau}"> +<h3 class='titrem'><img src="#CHEMIN_IMAGE{annonce-24.png}" class="cadre-icone" /><:info_envoi_email_automatique:>#AIDER{confmails}</h3> + [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>] + [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>] + [(#ENV{editable}) + <p class="notice"><:info_hebergeur_desactiver_envoi_email:></p> + <form method='post' action='#ENV{action}' enctype='multipart/form-data'><div> + [(#REM) declarer les hidden qui declencheront le service du formulaire + parametre : url d'action ] + #ACTION_FORMULAIRE{#ENV{action}} + <ul> + #SET{name,suivi_edito}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} + <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]"> + <label><:info_suivi_activite:></label>[ + <span class='erreur_message'>(#GET{erreurs})</span> + ]<p class="explication"><:info_facilite_suivi_activite:></p> + <div class="choix"> + <input type="radio" name="#GET{name}" id="#GET{name}_non" value="non" + [(#ENV{#GET{name}}|=={oui}|non)checked="checked"] + onchange="if ($(this).attr('checked')) $('#suivi_complements').hide('fast');" + /><label for="#GET{name}_non"><:bouton_radio_non_envoi_annonces_editoriales:></label> + </div> + <div class="choix"> + <input type="radio" name="#GET{name}" id="#GET{name}_oui" value="oui" + [(#ENV{#GET{name}}|=={oui}|oui)checked="checked"] + onchange="if ($(this).attr('checked')) $('#suivi_complements').show('fast');" + /><label for="#GET{name}_oui"><:bouton_radio_envoi_annonces_adresse:></label> + </div> + <fieldset id="suivi_complements"[(#ENV{#GET{name}}|=={oui}|non)style='display:none;']> + <ul> + #SET{name,adresse_suivi}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} + <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]"> + <label for="#GET{name}"><:info_adresse:></label>[ + <span class='erreur_message'>(#GET{erreurs})</span> + ]<input type="text" class="text" name="#GET{name}" id="#GET{name}" value="#ENV*{#GET{name}}" /> + </li> + #SET{name,adresse_suivi_inscription}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} + <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]"> + #SET{adresse_suivi,#ENV{adresse_suivi}|sinon{mailing@monsite.net}} + <label for="#GET{name}">Adresse de desincription</label>[ + <span class='erreur_message'>(#GET{erreurs})</span> + ]<p class="explication"><:info_config_suivi{adresse_suivi=#GET{adresse_suivi}}:></p> + <input type="text" class="text" name="#GET{name}" id="#GET{name}" value="#ENV*{#GET{name}}" /> + </li> + </ul> + </fieldset> + </li> + + #SET{name,quoi_de_neuf}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} + <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]"> + <label><:info_annonce_nouveautes:></label>[ + <span class='erreur_message'>(#GET{erreurs})</span> + ]<p class="explication"><:info_non_envoi_annonce_dernieres_nouveautes:></p> + <div class="choix"> + <input type="radio" name="#GET{name}" id="#GET{name}_non" value="non" + [(#ENV{#GET{name}}|=={oui}|non)checked="checked"] + onchange="if ($(this).attr('checked')) $('#neuf_complements').hide('fast');" + /><label for="#GET{name}_non"><:info_non_envoi_liste_nouveautes:></label> + </div> + <div class="choix"> + <input type="radio" name="#GET{name}" id="#GET{name}_oui" value="oui" + [(#ENV{#GET{name}}|=={oui}|oui)checked="checked"] + onchange="if ($(this).attr('checked')) $('#neuf_complements').show('fast');" + /><label for="#GET{name}_oui"><:bouton_radio_envoi_liste_nouveautes:></label> + </div> + <fieldset id="neuf_complements"[(#ENV{#GET{name}}|=={oui}|non)style='display:none;']> + <ul> + #SET{name,adresse_neuf}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} + <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]"> + <label for="#GET{name}"><:info_adresse:></label>[ + <span class='erreur_message'>(#GET{erreurs})</span> + ]<input type="text" class="text" name="#GET{name}" id="#GET{name}" value="#ENV*{#GET{name}}" /> + </li> + #SET{name,jours_neuf}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} + <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]"> + #SET{adresse_suivi,#ENV{adresse_suivi}|sinon{mailing@monsite.net}} + <label for="#GET{name}"><:info_tous_les:></label>[ + <span class='erreur_message'>(#GET{erreurs})</span> + ]<input type="text" name="#GET{name}" id="#GET{name}" value="#ENV*{#GET{name}}" /> + <:info_jours:> + <input type='submit' class="submit" name='envoi_now' id='envoi_now' value='<:info_envoyer_maintenant:>' /> + </li> + </ul> + </fieldset> + </li> + + #SET{name,email_envoi}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} + <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]"> + <label for="#GET{name}"><:info_email_envoi:></label>[ + <span class='erreur_message'>(#GET{erreurs})</span> + ]<p class="explication"><:info_email_envoi_txt:></p> + <input type="text" class="text" name="#GET{name}" id="#GET{name}" value="#ENV*{#GET{name}}" /> + </li> + + </ul> + [(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ] + <!--extra--> + <p class='boutons'><span class='image_loading'> </span><input type='submit' class='submit' value='<:bouton_enregistrer:>' /></p> + </div></form> + ] +</div> \ No newline at end of file diff --git a/prive/formulaires/configurer_annonces.php b/prive/formulaires/configurer_annonces.php new file mode 100644 index 0000000000..600b4e9881 --- /dev/null +++ b/prive/formulaires/configurer_annonces.php @@ -0,0 +1,82 @@ +<?php + +/***************************************************************************\ + * SPIP, Systeme de publication pour l'internet * + * * + * Copyright (c) 2001-2010 * + * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James * + * * + * Ce programme est un logiciel libre distribue sous licence GNU/GPL. * + * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. * +\***************************************************************************/ + +if (!defined("_ECRIRE_INC_VERSION")) return; + +function formulaires_configurer_annonces_charger_dist(){ + foreach(array( + "suivi_edito", + "adresse_suivi", + "adresse_suivi_inscription", + "quoi_de_neuf", + "adresse_neuf", + "jours_neuf", + "email_envoi", + ) as $m) + $valeurs[$m] = $GLOBALS['meta'][$m]; + + return $valeurs; +} + +function formulaires_configurer_annonces_verifier_dist(){ + $erreurs = array(); + if (_request('suivi_edito')=='oui') { + if (!$email=_request('adresse_suivi')) + $erreurs['adresse_suivi'] = _T('info_obligatoire'); + else { + include_spip('inc/filtres'); + if (!email_valide($email)) + $erreurs['adresse_suivi'] = _T('form_prop_indiquer_email'); + } + } + if (_request('quoi_de_neuf')=='oui') { + if (!$email=_request('adresse_neuf')) + $erreurs['adresse_neuf'] = _T('info_obligatoire'); + else { + include_spip('inc/filtres'); + if (!email_valide($email)) + $erreurs['adresse_neuf'] = _T('form_prop_indiquer_email'); + } + if (!$email=_request('jours_neuf')) + $erreurs['jours_neuf'] = _T('info_obligatoire'); + } + return $erreurs; +} + +function formulaires_configurer_annonces_traiter_dist(){ + $res = array('editable'=>true); + foreach(array( + "suivi_edito", + "quoi_de_neuf", + ) as $m) + if (!is_null($v=_request($m))) + ecrire_meta($m, $v=='oui'?'oui':'non'); + + foreach(array( + "adresse_suivi", + "adresse_suivi_inscription", + "adresse_neuf", + "jours_neuf", + "email_envoi", + ) as $m) + if (!is_null($v=_request($m))) + ecrire_meta($m, $v); + + // provoquer l'envoi des nouveautes en supprimant le fichier lock + if (_request('envoi_now')) { + spip_unlink(_DIR_TMP . 'mail.lock'); + } + + $res['message_ok'] = _T('config_info_enregistree'); + return $res; +} + diff --git a/prive/squelettes/contenu/page-configurer_interactions.html b/prive/squelettes/contenu/page-configurer_interactions.html index 107d86eb87..b54f860bcb 100644 --- a/prive/squelettes/contenu/page-configurer_interactions.html +++ b/prive/squelettes/contenu/page-configurer_interactions.html @@ -24,13 +24,9 @@ <div class='contenu_notifications'> <h3><:titre_config_contenu_notifications:></h3> -<?php - include_spip('inc/presentation'); - $annonces = charger_fonction('annonces', 'configuration'); - $res.= ""; - $res.= $annonces(); + <div class="ajax"> + #FORMULAIRE_CONFIGURER_ANNONCES + </div> - echo $res; -?> </div> -- GitLab