Browse Source
Ajout d'une option asynchrone pour le chargement des infradivisions (à consolider) Items de langue de catégorie manquants. Chargement des zones, pays et subdivisions ISO françaises (regions et départements) à l'installation.v0_spip32
12 changed files with 284 additions and 17 deletions
@ -0,0 +1,49 @@
|
||||
<?php |
||||
/** |
||||
* Ce fichier contient l'action `peupler_territoires` lancée de façon asynchrone pour peupler certains |
||||
* ensembles de territoires contenant un nombre important d'éléments. |
||||
* |
||||
* @package SPIP\TERRITOIRES |
||||
*/ |
||||
if (!defined('_ECRIRE_INC_VERSION')) return; |
||||
|
||||
|
||||
/** |
||||
* Cette action permet peupler certains ensembles de territoires contenant un nombre important d'éléments. |
||||
* Elle est appelée par l'API `territoire_peupler_asynchrone()`. |
||||
* |
||||
* Cette action est réservée aux utilisateurs pouvant utiliser le formulaire de peuplement. |
||||
* Elle ne nécessite les mêmes arguments que la fonction de peuplement. |
||||
* |
||||
* @return void |
||||
*/ |
||||
function action_peupler_territoires_dist() { |
||||
|
||||
// Securisation et autorisation. |
||||
// L'argument attendu est la page à recharger ou sinon vide pour toutes les pages. |
||||
$securiser_action = charger_fonction('securiser_action', 'inc'); |
||||
$arguments = $securiser_action(); |
||||
|
||||
// Structuration des arguments de peuplement |
||||
$arguments = explode(':', $arguments); |
||||
if ( |
||||
(count($arguments) > 1) |
||||
and ($type = $arguments[0]) |
||||
and ($pays = $arguments[1]) |
||||
) { |
||||
// Identification des options |
||||
$options = array(); |
||||
unset($arguments[0], $arguments[1]); |
||||
foreach ($arguments as $_argument) { |
||||
if ($_argument === 'force') { |
||||
$options[$_argument] = true; |
||||
} else { |
||||
$options['extras'][] = $_argument; |
||||
} |
||||
} |
||||
|
||||
// Chargement des territoires et autres extras requis par les arguments. |
||||
include_spip('inc/territoire'); |
||||
territoire_peupler($type, $pays, $options); |
||||
} |
||||
} |
@ -0,0 +1,14 @@
|
||||
[(#ENV{multiple}|oui) |
||||
[(#SET{valeur,[(#ENV*{valeur}|is_array|?{[(#ENV*{valeur})],[(#ENV*{valeur}|explode{','})]})]})] |
||||
] |
||||
#SET{pays, #ENV{type, ''}|territoire_lister_pays{#ENV{categorie, ''}}} |
||||
<select name="#ENV{nom}[(#ENV{multiple}|?{\[\]})]" id="champ_[(#ENV{nom}|saisie_nom2classe)]"[ class="(#ENV{class})"][(#ENV{multiple}|oui) multiple="multiple" size="#ENV{size,10}"][ disabled="(#ENV{disable})"]> |
||||
[(#ENV{cacher_option_intro}|ou{#ENV{multiple}}|non) |
||||
<option value="">[(#ENV{option_intro})]</option>] |
||||
<BOUCLE_categories(DATA){source table, #GET{pays}}{par valeur}> |
||||
[(#ENV{multiple}|oui) |
||||
<option value="#CLE"[(#CLE|in_array{#ENV{valeur_forcee,#GET{valeur,#ENV{defaut,#ARRAY}}}}|oui) selected="selected"]>#CLE[ - (#VALEUR|extraire_multi)]</option>] |
||||
[(#ENV{multiple}|non) |
||||
<option value="#CLE"[(#CLE|=={#ENV{valeur_forcee,#ENV{valeur,#ENV{defaut}}}}|oui) selected="selected"]>#CLE[ - (#VALEUR|extraire_multi)]</option>] |
||||
</BOUCLE_categories> |
||||
</select> |
Loading…
Reference in new issue