From 76c3b6476aeed4f53108d6710526acf607122689 Mon Sep 17 00:00:00 2001 From: Cerdic <cedric@yterium.com> Date: Tue, 5 Oct 2010 18:23:11 +0000 Subject: [PATCH] #FORMULAIRE_VIRTUALISER_ARTICLE, donc pour virtualiser en CVT et en passant par editer_article pour la mise a jour en base (donc pipelines etc...) --- .gitattributes | 6 +-- ecrire/action/virtualiser.php | 36 ----------------- ecrire/exec/articles.php | 21 ++-------- ecrire/exec/virtualiser.php | 37 ----------------- ecrire/inc/virtualiser.php | 36 ----------------- prive/editer/dater.html | 7 ---- prive/editer/virtualiser.html | 3 ++ prive/formulaires/virtualiser_article.html | 25 ++++++++++++ prive/formulaires/virtualiser_article.php | 46 ++++++++++++++++++++++ 9 files changed, 80 insertions(+), 137 deletions(-) delete mode 100644 ecrire/action/virtualiser.php delete mode 100644 ecrire/exec/virtualiser.php delete mode 100644 ecrire/inc/virtualiser.php create mode 100644 prive/editer/virtualiser.html create mode 100644 prive/formulaires/virtualiser_article.html create mode 100644 prive/formulaires/virtualiser_article.php diff --git a/.gitattributes b/.gitattributes index 97f870ec93..d301283fb4 100644 --- a/.gitattributes +++ b/.gitattributes @@ -40,7 +40,6 @@ ecrire/action/supprimer_traduction.php -text ecrire/action/tester.php -text ecrire/action/tester_taille.php -text ecrire/action/tourner.php -text -ecrire/action/virtualiser.php -text ecrire/auth/sha256.inc.php -text ecrire/balise/configurer_metas.php -text ecrire/balise/formulaire_.php -text @@ -131,7 +130,6 @@ ecrire/exec/synchro.php -text ecrire/exec/tourner.php -text ecrire/exec/upgrade.php -text ecrire/exec/valider_xml.php -text -ecrire/exec/virtualiser.php -text ecrire/genie/maintenance.php -text ecrire/genie/mise_a_jour.php -text ecrire/inc/actions.php -text @@ -212,7 +210,6 @@ ecrire/inc/traduire.php -text ecrire/inc/utils.php -text ecrire/inc/vieilles_defs.php -text ecrire/inc/vignette.php -text -ecrire/inc/virtualiser.php -text ecrire/inc/xml.php -text ecrire/install/etape_.php -text ecrire/install/etape_1.php -text @@ -336,6 +333,7 @@ prive/editer/auteur.html -text prive/editer/dater.html -text prive/editer/logo.html -text prive/editer/rubrique.html -text +prive/editer/virtualiser.html -text prive/formulaires/configurer_annonces.html -text prive/formulaires/configurer_annonces.php -text prive/formulaires/configurer_articles.html -text @@ -393,6 +391,8 @@ prive/formulaires/recherche_ecrire.html -text prive/formulaires/recherche_ecrire.php -text prive/formulaires/selecteur_groupe_mot.html -text prive/formulaires/selecteur_groupe_mot_fonctions.php -text +prive/formulaires/virtualiser_article.html -text +prive/formulaires/virtualiser_article.php -text prive/ical_prive.html -text prive/images/admin-12.gif -text prive/images/administration-24.gif -text diff --git a/ecrire/action/virtualiser.php b/ecrire/action/virtualiser.php deleted file mode 100644 index d1328806a4..0000000000 --- a/ecrire/action/virtualiser.php +++ /dev/null @@ -1,36 +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/filtres'); - -// http://doc.spip.org/@action_virtualiser_dist -function action_virtualiser_dist() { - - $securiser_action = charger_fonction('securiser_action', 'inc'); - $arg = $securiser_action(); - $url = _request('virtuel'); - - if (!preg_match(",^\W*(\d+)$,", $arg, $r)) { - spip_log("action_virtualiser_dist $arg $url pas compris"); - } else action_virtualiser_post($r, $url); -} - -// http://doc.spip.org/@action_virtualiser_post -function action_virtualiser_post($r, $url) -{ - $url = preg_replace(",^ *https?://$,i", "", rtrim($url)); - if ($url) $url = corriger_caracteres("=$url"); - sql_updateq('spip_articles', array('chapo'=> $url, 'date_modif' => date('Y-m-d H:i:s')), "id_article=" . $r[1]); -} -?> diff --git a/ecrire/exec/articles.php b/ecrire/exec/articles.php index eef813105b..9f12f2683f 100644 --- a/ecrire/exec/articles.php +++ b/ecrire/exec/articles.php @@ -227,24 +227,9 @@ function boites_de_config_articles($id_article) } // http://doc.spip.org/@boite_article_virtuel -function boite_article_virtuel($id_article, $virtuel) -{ - if (!$virtuel - AND $GLOBALS['meta']['articles_redirection'] != 'oui') - return ''; - - $invite = '<b>' - ._T('bouton_redirection') - . '</b>' - . aide ("artvirt"); - - $virtualiser = charger_fonction('virtualiser', 'inc'); - - return cadre_depliable("site-24.png", - $invite, - $virtuel, - $virtualiser($id_article, $virtuel, "articles", "id_article=$id_article"), - 'redirection'); +function boite_article_virtuel($id_article, $virtuel){ + return + recuperer_fond('prive/editer/virtualiser',array('id_article'=>$id_article)); } // http://doc.spip.org/@bouton_modifier_articles diff --git a/ecrire/exec/virtualiser.php b/ecrire/exec/virtualiser.php deleted file mode 100644 index c5c739a061..0000000000 --- a/ecrire/exec/virtualiser.php +++ /dev/null @@ -1,37 +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; - -// http://doc.spip.org/@exec_virtualiser_dist -function exec_virtualiser_dist() -{ - $id_article = intval(_request('id_article')); - - if (!autoriser('modifier', 'article', $id_article)) { - include_spip('inc/minipres'); - echo minipres(); - } else { - include_spip('inc/actions'); - $r = sql_fetsel("chapo", "spip_articles", "id_article=$id_article"); - - $virtuel = $r['chapo']; - - if (substr($virtuel, 0, 1) == '=') { - $virtuel = substr($virtuel, 1); - } - - $virtualiser = charger_fonction('virtualiser', 'inc'); - ajax_retour($virtualiser($id_article, $virtuel, "articles", "id_article=$id_article")); - } -} -?> diff --git a/ecrire/inc/virtualiser.php b/ecrire/inc/virtualiser.php deleted file mode 100644 index 22d8f0b00a..0000000000 --- a/ecrire/inc/virtualiser.php +++ /dev/null @@ -1,36 +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/actions'); - -// http://doc.spip.org/@inc_virtualiser_dist -function inc_virtualiser_dist($id_article, $virtuel, $script, $args){ - global $spip_lang_right; - - $res = "<input type='text' name='virtuel' id ='virtuel$id_article' class='formo spip_xx-small' value='" - . ($virtuel ? "" : "http://") - . $virtuel - . "' size='40' /><br />\n" - . "<span class='verdana1 spip_x-small'>(<label for='virtuel$id_article'><b>" - . _T('texte_article_virtuel') - . (!$virtuel ? '' : " $virtuel") - . " :</b></label> " - . _T('texte_reference_mais_redirige') - . ")</span><br />"; - - $res = ajax_action_post('virtualiser', $id_article, $script, $args, $res, _T('bouton_changer'), " class='fondo spip_xx-small' style='float: $spip_lang_right'") - . "<br class='nettoyeur' />"; - - return ajax_action_greffe("virtualiser", $id_article, $res); -} -?> diff --git a/prive/editer/dater.html b/prive/editer/dater.html index 6c9daa3341..b3e3d76f2a 100644 --- a/prive/editer/dater.html +++ b/prive/editer/dater.html @@ -1,10 +1,3 @@ -[(#REM) - - Squelette - (c) 2009 xxx - Distribue sous licence GPL - -] <div class="ajax"> #FORMULAIRE_DATER{#ENV{objet},#ENV{id_objet}} </div> \ No newline at end of file diff --git a/prive/editer/virtualiser.html b/prive/editer/virtualiser.html new file mode 100644 index 0000000000..abf7c06ee3 --- /dev/null +++ b/prive/editer/virtualiser.html @@ -0,0 +1,3 @@ +<div class="ajax"> + #FORMULAIRE_VIRTUALISER_ARTICLE{#ENV{id_article}} +</div> \ No newline at end of file diff --git a/prive/formulaires/virtualiser_article.html b/prive/formulaires/virtualiser_article.html new file mode 100644 index 0000000000..47acea94b7 --- /dev/null +++ b/prive/formulaires/virtualiser_article.html @@ -0,0 +1,25 @@ +<div class="formulaire_spip formulaire_#FORM formulaire_#FORM-#ENV{id}" id="formulaire_#FORM-#ENV{id}"> + [<h3 class="titrem">[(#CHEMIN_IMAGE{site-24.png}|balise_img{'','cadre-icone'})]<:texte_article_virtuel:><br />(#ENV**{_afficher_url}|PtoBR)</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}) + <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,virtuel}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}} + <li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]"> + <label for="#GET{name}-#ENV{id}"><:bouton_redirection:> #AIDER{artvirt}</label>[ + <span class='erreur_message'>(#GET{erreurs})</span> + ]<input type="text" class="text" name="#GET{name}" id="#GET{name}-#ENV{id}" value="#ENV{#GET{name},'http://'}" + onkeypress="jQuery(this).parents('ul').siblings('.boutons:hidden').show('fast');"/> + <p class="explication"><:texte_reference_mais_redirige:></p> + </li> + </ul> + [(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ] + <!--extra--> + <p class='boutons' style="display:none;"><span class='image_loading'> </span><input type='submit' class='submit' value='<:bouton_changer:>' /></p> + </div></form> + ] +</div> \ No newline at end of file diff --git a/prive/formulaires/virtualiser_article.php b/prive/formulaires/virtualiser_article.php new file mode 100644 index 0000000000..013cd49238 --- /dev/null +++ b/prive/formulaires/virtualiser_article.php @@ -0,0 +1,46 @@ +<?php + +/***************************************************************************\ + * SPIP, Systeme de publication pour l'internet * + * * + * Copyright (c) 2001-2009 * + * 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_virtualiser_article_charger_dist($id_article,$retour=''){ + + $row = sql_fetsel('id_article,chapo','spip_articles','id_article='.intval($id_article)); + if (!$row['id_article']) + return false; + + $virtuel = (strncmp($row["chapo"],'=',1)!==0) ? '' : chapo_redirige(substr($row["chapo"], 1)); + + if (!$virtuel + AND $GLOBALS['meta']['articles_redirection'] != 'oui') + return false; + + + $valeurs = array( + 'virtuel'=>$virtuel, + 'id'=>$id_article, + '_afficher_url' => ($virtuel?propre("[->$virtuel]"):''), + ); + return $valeurs; +} + +function formulaires_virtualiser_article_traiter_dist($id_article,$retour=''){ + + $url = preg_replace(",^\s*https?://$,i", "", rtrim(_request('virtuel'))); + if ($url) $url = corriger_caracteres("=$url"); + + include_spip('action/editer_article'); + articles_set($id_article, array('chapo'=>$url)); + + return array('message_ok'=>'','editable'=>true); +} +?> \ No newline at end of file -- GitLab