[PLUGINS] +clavettes et dependances
[lhc/web/clavette_www.git] / www / plugins / gis / formulaires / editer_gis.php
1 <?php
2
3 if (!defined('_ECRIRE_INC_VERSION')) return;
4
5 /**
6 * Formulaire de création et d'édition d'un point géolocalisé
7 */
8
9 include_spip('inc/actions');
10 include_spip('inc/editer');
11
12 /**
13 * Chargement des valeurs par défaut du formulaire
14 *
15 * @param int|string $id_gis Identifiant numérique du point ou 'new' pour un nouveau
16 * @param string $objet Le type d'objet SPIP auquel il est attaché
17 * @param int $id_objet L'id_objet de l'objet auquel il est attaché
18 * @param string $retour L'url de retour
19 * @param string $ajaxload initialiser la carte à chaque onAjaxLoad()
20 * @param array $options TODO à documenter, voir avec l'auteur de http://zone.spip.org/trac/spip-zone/changeset/53906
21 */
22 function formulaires_editer_gis_charger_dist($id_gis='new', $objet='', $id_objet='', $retour='', $ajaxload='oui', $options=''){
23 $valeurs = formulaires_editer_objet_charger('gis', $id_gis, '', '', $retour, '');
24 $valeurs['objet'] = $objet;
25 $valeurs['id_objet'] = $id_objet;
26 $valeurs['ajaxload'] = $ajaxload;
27 /* Traitement des options */
28 /* peut etre a envoyer dans une fonction generique de verification des options */
29 if (is_array($options)) {
30 if (!$valeurs['lat'] and is_numeric($options['lat']))
31 $valeurs['lat']=$options['lat'];
32 if (!$valeurs['lon'] and is_numeric($options['lon']))
33 $valeurs['lon']=$options['lon'];
34 if (!$valeurs['zoom'] and is_numeric($options['zoom']) && intval($options['zoom'])==$options['zoom'])
35 $valeurs['zoom']=$options['zoom'];
36 /* Bounding Box */
37 if (is_numeric($options['sw_lat']))
38 $valeurs['sw_lat']=$options['sw_lat'];
39 if (is_numeric($options['sw_lon']))
40 $valeurs['sw_lon']=$options['sw_lon'];
41 if (is_numeric($options['ne_lat']))
42 $valeurs['ne_lat']=$options['ne_lat'];
43 if (is_numeric($options['ne_lon']))
44 $valeurs['ne_lon']=$options['ne_lon'];
45 }
46 return $valeurs;
47 }
48
49 /**
50 * Vérification des valeurs du formulaire
51 *
52 * 4 champs sont obligatoires :
53 * -* Son titre
54 * -* Sa latitude
55 * -* Sa longitude
56 * -* Son niveau de zoom
57 *
58 * @param int|string $id_gis Identifiant numérique du point ou 'new' pour un nouveau
59 * @param string $objet Le type d'objet SPIP auquel il est attaché
60 * @param int $id_objet L'id_objet de l'objet auquel il est attaché
61 * @param string $retour L'url de retour
62 * @param string $ajaxload initialiser la carte à chaque onAjaxLoad()
63 * @param array $options ???
64 */
65 function formulaires_editer_gis_verifier_dist($id_gis='new', $objet='', $id_objet='', $retour='', $ajaxload='oui', $options=''){
66 $erreurs = formulaires_editer_objet_verifier('gis', $id_gis,array('titre','lat','lon','zoom'));
67 return $erreurs;
68 }
69
70 /**
71 * Traitement des valeurs du formulaire
72 *
73 * @param int|string $id_gis Identifiant numérique du point ou 'new' pour un nouveau
74 * @param string $objet Le type d'objet SPIP auquel il est attaché
75 * @param int $id_objet L'id_objet de l'objet auquel il est attaché
76 * @param string $retour L'url de retour
77 * @param string $ajaxload initialiser la carte à chaque onAjaxLoad()
78 * @param array $options ???
79 */
80 function formulaires_editer_gis_traiter_dist($id_gis='new', $objet='', $id_objet='', $retour='', $ajaxload='oui', $options=''){
81 if (_request('supprimer')){
82 include_spip('action/editer_gis');
83 supprimer_gis($id_gis);
84 $id_table_objet = id_table_objet($objet);
85 if ($retour)
86 $res['redirect'] = parametre_url($retour,$id_table_objet,$id_objet);
87 return $res;
88 } else {
89 return formulaires_editer_objet_traiter('gis', $id_gis, '', '', $retour, '');
90 }
91 }
92
93 ?>