Skip to content
Extraits de code Groupes Projets
Valider 74b7fa6b rédigé par esj's avatar esj
Parcourir les fichiers

oubli de l'action sur les langues

parent 70a14626
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -243,7 +243,7 @@ function lang_dselect ($rien='') { ...@@ -243,7 +243,7 @@ function lang_dselect ($rien='') {
// - 'var_lang' = langue de l'article, espace public // - 'var_lang' = langue de l'article, espace public
// - 'changer_lang' = langue de l'article, espace prive // - 'changer_lang' = langue de l'article, espace prive
// //
function menu_langues($nom_select = 'var_lang', $default = '', $texte = '', $herit = '') { function menu_langues($nom_select = 'var_lang', $default = '', $texte = '', $herit = '', $lien='') {
global $couleur_foncee, $couleur_claire, $connect_id_auteur; global $couleur_foncee, $couleur_claire, $connect_id_auteur;
include_ecrire('inc_filtres.php3'); include_ecrire('inc_filtres.php3');
...@@ -253,7 +253,7 @@ function menu_langues($nom_select = 'var_lang', $default = '', $texte = '', $her ...@@ -253,7 +253,7 @@ function menu_langues($nom_select = 'var_lang', $default = '', $texte = '', $her
if (!$couleur_foncee) $couleur_foncee = '#044476'; if (!$couleur_foncee) $couleur_foncee = '#044476';
$lien = $GLOBALS['clean_link']; if (!$lien) $lien = $GLOBALS['clean_link'];
if ($nom_select == 'changer_lang') { if ($nom_select == 'changer_lang') {
$lien->delvar('changer_lang'); $lien->delvar('changer_lang');
......
...@@ -8,13 +8,13 @@ include_ecrire ("inc_abstract_sql.php3"); ...@@ -8,13 +8,13 @@ include_ecrire ("inc_abstract_sql.php3");
function naviguer_dist($action) function naviguer_dist($action)
{ {
global $id_parent, $id_rubrique, $nouv_mot, $spip_display, $connect_statut, $supp_mot, $champs_extra, $cherche_mot, $descriptif, $texte, $titre; global $id_parent, $id_rubrique, $nouv_mot, $spip_display, $connect_statut, $supp_mot, $champs_extra, $cherche_mot, $descriptif, $texte, $titre, $changer_lang;
$flag_editable = ($connect_statut == '0minirezo' AND (acces_rubrique($id_parent) OR acces_rubrique($id_rubrique))); // id_parent necessaire en cas de creation de sous-rubrique $flag_editable = ($connect_statut == '0minirezo' AND (acces_rubrique($id_parent) OR acces_rubrique($id_rubrique))); // id_parent necessaire en cas de creation de sous-rubrique
// si action vide, simple visite // si action vide, simple visite
if ($flag_editable AND $action) if ($flag_editable AND $action)
$id_rubrique = maj_naviguer($action, $id_rubrique, $id_parent, $titre, $texte, $descriptif, $flag_editable); $id_rubrique = maj_naviguer($action, $id_rubrique, $id_parent, $titre, $texte, $descriptif, $flag_editable, $changer_lang);
// //
// recuperer les infos sur cette rubrique // recuperer les infos sur cette rubrique
...@@ -220,7 +220,8 @@ if ($id_rubrique>0 AND lire_meta('multi_rubriques') == 'oui' AND (lire_meta('mul ...@@ -220,7 +220,8 @@ if ($id_rubrique>0 AND lire_meta('multi_rubriques') == 'oui' AND (lire_meta('mul
echo debut_block_invisible('languesrubrique'); echo debut_block_invisible('languesrubrique');
echo "<div class='verdana2' align='center'>"; echo "<div class='verdana2' align='center'>";
echo menu_langues('changer_lang', $langue_rubrique, '', $langue_parent); $link = new Link("naviguer.php3?action=coloniser&id_rubrique=$id_rubrique");
echo menu_langues('changer_lang', $langue_rubrique, '', $langue_parent, $link);
echo "</div>\n"; echo "</div>\n";
echo fin_block(); echo fin_block();
...@@ -373,7 +374,7 @@ if ($relief) { ...@@ -373,7 +374,7 @@ if ($relief) {
supprimer_naviguer($id_rubrique, $id_parent, $ze_logo, $flag_editable); supprimer_naviguer($id_rubrique, $id_parent, $ze_logo, $flag_editable);
} }
function maj_naviguer($action, $id_rubrique, $id_parent, $titre, $texte, $descriptif, $flag_editable) function maj_naviguer($action, $id_rubrique, $id_parent, $titre, $texte, $descriptif, $flag_editable, $changer_lang)
{ {
if ($action == 'supprimer') { if ($action == 'supprimer') {
spip_query("DELETE FROM spip_rubriques WHERE id_rubrique=$id_rubrique"); spip_query("DELETE FROM spip_rubriques WHERE id_rubrique=$id_rubrique");
...@@ -382,6 +383,24 @@ function maj_naviguer($action, $id_rubrique, $id_parent, $titre, $texte, $descri ...@@ -382,6 +383,24 @@ function maj_naviguer($action, $id_rubrique, $id_parent, $titre, $texte, $descri
$_POST['id_rubrique'] = $id_rubrique; $_POST['id_rubrique'] = $id_rubrique;
$GLOBALS['clean_link'] = new Link(); $GLOBALS['clean_link'] = new Link();
} }
elseif ($action == 'coloniser') {
if ($changer_lang
AND $id_rubrique>0
AND lire_meta('multi_rubriques') == 'oui'
AND (lire_meta('multi_secteurs') == 'non' OR $id_parent == 0)) {
if ($changer_lang != "herit")
spip_query("UPDATE spip_rubriques SET lang='".addslashes($changer_lang)."', langue_choisie='oui' WHERE id_rubrique=$id_rubrique");
else {
if ($id_parent == 0)
$langue_parent = lire_meta('langue_site');
else {
$row = spip_fetch_array(spip_query("SELECT lang FROM spip_rubriques WHERE id_rubrique=$id_parent"));
$langue_parent = $row['lang'];
}
spip_query("UPDATE spip_rubriques SET lang='".addslashes($langue_parent)."', langue_choisie='non' WHERE id_rubrique=$id_rubrique");
}
}
}
// pour le cas 'calculer_rubriques' (retour de spip_image), // pour le cas 'calculer_rubriques' (retour de spip_image),
// i.e. document/logo ajoute/supprime/tourne // i.e. document/logo ajoute/supprime/tourne
// suffit seulement de faire le calculer_rubriques() final // suffit seulement de faire le calculer_rubriques() final
...@@ -426,32 +445,12 @@ WHERE id_rubrique=$id_rubrique"); ...@@ -426,32 +445,12 @@ WHERE id_rubrique=$id_rubrique");
// toute action entraine ceci: // toute action entraine ceci:
calculer_rubriques(); calculer_rubriques();
calculer_langues_rubriques();
// invalider et reindexer
if ($GLOBALS['invalider_caches']) { if ($GLOBALS['invalider_caches']) {
include_ecrire ("inc_invalideur.php3"); include_ecrire ("inc_invalideur.php3");
suivre_invalideur("id='id_rubrique/$id_rubrique'"); suivre_invalideur("id='id_rubrique/$id_rubrique'");
} }
//
// Appliquer le changement de langue
//
if ($GLOBALS['changer_lang']
AND $id_rubrique>0
AND lire_meta('multi_rubriques') == 'oui'
AND (lire_meta('multi_secteurs') == 'non' OR $id_parent == 0)) {
if ($changer_lang != "herit")
spip_query("UPDATE spip_rubriques SET lang='".addslashes($changer_lang)."', langue_choisie='oui' WHERE id_rubrique=$id_rubrique");
else {
if ($id_parent == 0)
$langue_parent = lire_meta('langue_site');
else {
$row = spip_fetch_array(spip_query("SELECT lang FROM spip_rubriques WHERE id_rubrique=$id_parent"));
$langue_parent = $row['lang'];
}
spip_query("UPDATE spip_rubriques SET lang='".addslashes($langue_parent)."', langue_choisie='non' WHERE id_rubrique=$id_rubrique");
}
}
calculer_langues_rubriques();
return $id_rubrique; return $id_rubrique;
} }
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter