|
|
|
@ -424,27 +424,30 @@ function territoire_preserver($type, $pays = '') {
|
|
|
|
|
$where_ids = array(
|
|
|
|
|
sql_in('id_territoire', array_column($territoires['liens'], 'id_territoire'))
|
|
|
|
|
);
|
|
|
|
|
$ids = sql_allfetsel($select, $from, $where_ids);
|
|
|
|
|
$territoires['ids'] = array_column($ids, 'id_territoire', 'iso_territoire');
|
|
|
|
|
|
|
|
|
|
if ($ids = sql_allfetsel($select, $from, $where_ids)) {
|
|
|
|
|
$territoires['ids'] = array_column($ids, 'id_territoire', 'iso_territoire');
|
|
|
|
|
}
|
|
|
|
|
// -- les logos
|
|
|
|
|
$where_ids = array(
|
|
|
|
|
sql_in('id_territoire', array_column($territoires['logos'], 'id_objet'))
|
|
|
|
|
);
|
|
|
|
|
$ids = sql_allfetsel($select, $from, $where_ids);
|
|
|
|
|
$ids = array_column($ids, 'id_territoire', 'iso_territoire');
|
|
|
|
|
$territoires['ids'] = array_merge($territoires['ids'], $ids);
|
|
|
|
|
if ($ids = sql_allfetsel($select, $from, $where_ids)) {
|
|
|
|
|
$ids = array_column($ids, 'id_territoire', 'iso_territoire');
|
|
|
|
|
$territoires['ids'] = array_merge($territoires['ids'], $ids);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Extraction des territoires éditées.
|
|
|
|
|
// -- détermination de la liste des champs éditables.
|
|
|
|
|
$territoires['editions'] = array();
|
|
|
|
|
include_spip('base/objets');
|
|
|
|
|
$description_table = lister_tables_objets_sql($from);
|
|
|
|
|
// -- pour le select, les champs éditables sont complétés par le code ISO.
|
|
|
|
|
$select = array_merge($description_table['champs_editables'], array('iso_territoire'));
|
|
|
|
|
$where[] = 'edite=' . sql_quote('oui');
|
|
|
|
|
$editions = sql_allfetsel($select, $from, $where);
|
|
|
|
|
// -- indexer le tableau par le code iso de façon à simplifier la réintégration.
|
|
|
|
|
$territoires['editions'] = array_column($editions, null, 'iso_territoire');
|
|
|
|
|
if ($editions = sql_allfetsel($select, $from, $where)) {
|
|
|
|
|
// -- indexer le tableau par le code iso de façon à simplifier la réintégration.
|
|
|
|
|
$territoires['editions'] = array_column($editions, null, 'iso_territoire');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Permettre à d'autres plugins de compléter la sauvegarde (principalement pour les liens).
|
|
|
|
|
// -- par exemple le plugin Contours sauvegarde les liens vers les contours GIS (spip_liens_gis).
|
|
|
|
|