bb1f87c7ec4fcad8de32a137cf4b24b0076db868
3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2017 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
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 \***************************************************************************/
14 * Action des changements de langue des objets éditoriaux
16 * @package SPIP\Core\Edition
19 if (!defined('_ECRIRE_INC_VERSION')) {
24 * Modifier la langue d'un objet
26 * @param string $objet
28 * @param int $id_rubrique
29 * @param string $changer_lang
30 * @param string $serveur
33 function action_instituer_langue_objet_dist($objet, $id, $id_rubrique, $changer_lang, $serveur='') {
35 $table_objet_sql = table_objet_sql($objet);
36 $id_table_objet = id_table_objet($objet);
37 $trouver_table = charger_fonction('trouver_table', 'base');
38 $desc = $trouver_table($table_objet_sql, $serveur);
41 if (isset($desc['field']['langue_choisie'])){
42 $set['langue_choisie'] = 'oui';
45 if ($changer_lang != "herit") {
46 $set['lang'] = $changer_lang;
47 sql_updateq($table_objet_sql, $set, "$id_table_objet=" . intval($id),'',$serveur);
48 include_spip('inc/rubriques'); // pour calculer_langues_rubriques et calculer_langues_utilisees
49 if ($table_objet_sql == 'spip_rubriques') {
50 calculer_langues_rubriques();
52 $langues = calculer_langues_utilisees($serveur);
53 ecrire_meta('langues_utilisees', $langues);
55 $langue_parent = sql_getfetsel("lang", "spip_rubriques", "id_rubrique=" . intval($id_rubrique));
56 if (!$langue_parent) {
57 $langue_parent = $GLOBALS['meta']['langue_site'];
59 $changer_lang = $langue_parent;
60 $set['lang'] = $changer_lang;
61 if (isset($set['langue_choisie'])){
62 $set['langue_choisie'] = 'non';
64 sql_updateq($table_objet_sql, $set, "$id_table_objet=" . intval($id),'',$serveur);
65 if ($table_objet_sql == 'spip_rubriques') {
66 include_spip('inc/rubriques');
67 calculer_langues_rubriques();