Browse Source

Eviter qu'un formulaire en Post ait des parametres exclusivement présents dans le champ action. Et continuer à évacuer les Update présents dans exec/articles.

spip-1.9
Committo,Ergo:sum 17 years ago
parent
commit
e2844696ab
  1. 20
      ecrire/action/instituer.php
  2. 92
      ecrire/exec/articles.php
  3. 2
      ecrire/exec/naviguer.php
  4. 4
      ecrire/inc/actions.php

20
ecrire/action/instituer.php

@ -149,7 +149,7 @@ function instituer_breve($arg) {
}
function instituer_langue($arg)
function instituer_langue_rubrique($arg)
{
$changer_lang = _request('changer_lang');
list($id_rubrique, $id_parent) = preg_split('/\W/', $arg);
@ -179,4 +179,22 @@ function instituer_langue($arg)
}
}
function instituer_langue_article($arg)
{
$changer_lang = _request('changer_lang');
if ($GLOBALS['meta']['multi_articles'] == 'oui' AND $changer_lang) {
list($id_article, $id_rubrique) = preg_split('/\W/', $arg);
if ($changer_lang != "herit")
spip_query("UPDATE spip_articles SET lang=" . spip_abstract_quote($changer_lang) . ", langue_choisie='oui' WHERE id_article=$id_article");
else {
$langue_parent = spip_fetch_array(spip_query("SELECT lang FROM spip_rubriques WHERE id_rubrique=" . $id_rubrique));
$langue_parent=$langue_parent['lang'];
spip_query("UPDATE spip_articles SET lang=" . spip_abstract_quote($langue_parent) . ", langue_choisie='non' WHERE id_article=$id_article");
include_spip('inc/lang');
calculer_langues_utilisees();
}
}
}
?>

92
ecrire/exec/articles.php

@ -192,32 +192,12 @@ if ($flag_editable) {
if ($spip_display != 4)
afficher_documents_non_inclus($id_article, "article", $flag_editable);
//
// "Demander la publication"
//
if ($flag_auteur AND $statut_article == 'prepa')
echo demande_publication($id_article);
if ($flag_auteur AND $statut_article == 'prepa') {
echo "<P>";
debut_cadre_relief();
echo "<center>",
"<B>"._T('texte_proposer_publication')."</B>",
aide ("artprop"),
"\n<form method='post' action='",
redirige_action_auteur("instituer", "article-$id_article-prop", 'articles', "id_article=$id_article"),
"'>",
"<input type='submit' class='fondo' value=\"",
_T('bouton_demande_publication'),
"\" />\n",
"</form>",
"</center>";
fin_cadre_relief();
}
echo "</div>";
echo "</div>";
fin_cadre_relief();
echo "</div>";
echo "</div>";
fin_cadre_relief();
affiche_forums_article($id_article, $id_rubrique, $titre, $debut);
@ -225,6 +205,24 @@ fin_page();
}
function demande_publication($id_article)
{
return debut_cadre_relief('',true) .
"<center>" .
"<b>" ._T('texte_proposer_publication') . "</b>" .
aide ("artprop") .
redirige_action_auteur("instituer",
"article-$id_article-prop",
'articles',
"id_article=$id_article",
("<input type='submit' class='fondo' value=\"" .
_T('bouton_demande_publication') .
"\" />\n"),
"method='post'") .
"</center>" .
fin_cadre_relief(true);
}
function boite_info_articles($id_article, $statut_article, $visites, $id_version)
{
global $connect_statut, $options, $flag_revisions;
@ -698,9 +696,9 @@ function langues_articles($id_article, $langue_article, $flag_editable, $id_rubr
$langue_article = $langue_parent;
debut_cadre_couleur();
echo "<div style='text-align: center;'>";
echo menu_langues('changer_lang', $langue_article, _T('info_multi_cet_article').' ', $langue_parent);
echo "</div>\n";
echo "<div style='text-align: center;'>",
menu_langues('changer_lang', $langue_article, _T('info_multi_cet_article').' ', $langue_parent, redirige_action_auteur('instituer', "langue_article-$id_article-$id_rubrique","articles","id_article=$id_article")),
"</div>\n";
fin_cadre_couleur();
echo fin_block();
@ -1248,12 +1246,11 @@ function affiche_forums_article($id_article, $id_rubrique, $titre, $debut, $mute
function afficher_statut_articles($id_article, $rubrique_article, $statut_article)
{
return "\n<form method='post' action='" .
redirige_action_auteur("instituer", "article-$id_article",'articles', "id_article=$id_article") .
"'>" .
return redirige_action_auteur("instituer", "article-$id_article",'articles', "id_article=$id_article",
(
debut_cadre_relief("", true) .
"\n<center>" . "<B>" ._T('texte_article_statut') ."</B>" .
"\n<SELECT NAME='statut_nouv' SIZE='1' CLASS='fondl'\n" .
"\n<center>" . "<b>" ._T('texte_article_statut') ."</b>" .
"\n<select name='statut_nouv' size='1' class='fondl'\n" .
"onChange=\"document.statut.src='" .
_DIR_IMG_PACK .
"' + puce_statut(options[selectedIndex].value);" .
@ -1264,7 +1261,7 @@ function afficher_statut_articles($id_article, $rubrique_article, $statut_articl
"<option" . mySel("poubelle", $statut_article) .
http_style_background('rayures-sup.gif') . '>' ._T('texte_statut_poubelle') ."</option>\n" .
"<option" . mySel("refuse", $statut_article) . " style='background-color: #FFA4A4'>" ._T('texte_statut_refuse') ."</option>\n" .
"</SELECT>" .
"</select>" .
" &nbsp; " .
http_img_pack("puce-".puce_statut($statut_article).'.gif', "", "border='0' NAME='statut'") .
" &nbsp;\n" .
@ -1273,8 +1270,8 @@ function afficher_statut_articles($id_article, $rubrique_article, $statut_articl
"</span>" .
aide("artstatut") .
"</center>" .
fin_cadre_relief('', true) .
"\n</form>";
fin_cadre_relief('', true)),
" method='post'");
}
//
@ -1291,24 +1288,6 @@ function trop_longs_articles($texte_plus)
return $texte_ajout;
}
function modif_langue_articles($id_article, $id_rubrique, $changer_lang)
{
// Appliquer la modification de langue
if ($GLOBALS['meta']['multi_articles'] == 'oui') {
$langue_parent = spip_fetch_array(spip_query("SELECT lang FROM spip_rubriques WHERE id_rubrique=" . $id_rubrique));
$langue_parent=$langue_parent['lang'];
if ($changer_lang) {
if ($changer_lang != "herit")
spip_query("UPDATE spip_articles SET lang=" . spip_abstract_quote($changer_lang) . ", langue_choisie='oui' WHERE id_article=$id_article");
else
spip_query("UPDATE spip_articles SET lang=" . spip_abstract_quote($langue_parent) . ", langue_choisie='non' WHERE id_article=$id_article");
calculer_langues_utilisees();
}
}
}
// Passer les images/docs en "inclus=non"
function inclus_non_articles($id_article)
@ -1427,7 +1406,7 @@ function insert_article($id_parent)
function exec_articles_dist()
{
global $ajout_auteur, $annee, $annee_redac, $avec_redac, $change_accepter_forum, $change_petition, $changer_lang, $changer_virtuel, $chapo, $cherche_auteur, $cherche_mot, $connect_id_auteur, $date, $date_redac, $debut, $heure, $heure_redac, $id_article, $id_article_bloque, $id_parent, $id_rubrique_old, $id_secteur, $id_trad_new, $jour, $jour_redac, $langue_article, $lier_trad, $minute, $minute_redac, $mois, $mois_redac, $new, $nom_select, $nouv_auteur, $nouv_mot, $supp_auteur, $supp_mot, $titre, $titre_article, $virtuel;
global $ajout_auteur, $annee, $annee_redac, $avec_redac, $change_accepter_forum, $change_petition, $changer_virtuel, $chapo, $cherche_auteur, $cherche_mot, $connect_id_auteur, $date, $date_redac, $debut, $heure, $heure_redac, $id_article, $id_article_bloque, $id_parent, $id_rubrique_old, $id_secteur, $id_trad_new, $jour, $jour_redac, $langue_article, $lier_trad, $minute, $minute_redac, $mois, $mois_redac, $new, $nom_select, $nouv_auteur, $nouv_mot, $supp_auteur, $supp_mot, $titre, $titre_article, $virtuel;
$id_parent = intval($id_parent);
@ -1482,9 +1461,6 @@ if ($jour_redac) {
spip_query("UPDATE spip_articles SET date_redac='" . format_mysql_date($annee_redac, $mois_redac, $jour_redac, $heure_redac, $minute_redac) ."' WHERE id_article=$id_article");
}
modif_langue_articles($id_article, $id_rubrique, $changer_lang);
maj_documents($id_article, 'article');
if ($changer_virtuel) {

2
ecrire/exec/naviguer.php

@ -260,7 +260,7 @@ if ($id_rubrique>0 AND $GLOBALS['meta']['multi_rubriques'] == 'oui' AND ($GLOBAL
echo debut_block_invisible('languesrubrique');
echo "<div class='verdana2' align='center'>";
echo menu_langues('changer_lang', $langue_rubrique, '', $langue_parent, redirige_action_auteur('instituer', "langue-$id_rubrique-$id_parent","naviguer","id_rubrique=$id_rubrique"), $ze_logo, "supprimer.gif");
echo menu_langues('changer_lang', $langue_rubrique, '', $langue_parent, redirige_action_auteur('instituer', "langue_rubrique-$id_rubrique-$id_parent","naviguer","id_rubrique=$id_rubrique"), $ze_logo, "supprimer.gif");
echo "</div>\n";
echo fin_block();

4
ecrire/inc/actions.php

@ -68,9 +68,9 @@ function generer_action_auteur($action, $arg, $redirect="", $mode=false, $att=''
"\n\t</div>\n</form>\n";
}
function redirige_action_auteur($action, $arg, $ret, $gra)
function redirige_action_auteur($action, $arg, $ret, $gra, $mode=false, $atts='')
{
return generer_action_auteur($action, $arg, generer_url_ecrire($ret, $gra, true, _DIR_RESTREINT_ABS));
return generer_action_auteur($action, $arg, generer_url_ecrire($ret, $gra, true, _DIR_RESTREINT_ABS), $mode, $atts);
}

Loading…
Cancel
Save