Ignore:
Timestamp:
02/05/11 18:51:19 (9 years ago)
Author:
kent1
Message:

Et on enregistre le bouzin

Location:
plugins_spip/diogene_complements/diogene_geo
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • plugins_spip/diogene_complements/diogene_geo/diogene_geo_pipelines.php

    r4912 r4915  
    88                if($id_article OR $id_rubrique){
    99                        if(intval($id_article)){
     10                                $flux['args']['contexte']['objet'] = 'article';
     11                                $flux['args']['contexte']['id_objet'] = $id_article;
    1012                                $objet = sql_quote('article');
    1113                                $valeurs_gis = sql_fetsel("id_gis,lat,lon,zoom,titre,descriptif","spip_gis AS gis LEFT JOIN spip_gis_liens AS lien USING(id_gis)","lien.id_objet=$id_article AND lien.objet=".$objet);
    1214                        }else if(intval($id_rubrique)){
     15                                $flux['args']['contexte']['objet'] = 'rubrique';
    1316                                $objet = sql_quote('rubrique');
    1417                                $valeurs_gis = sql_fetsel("id_gis,lat,lon,zoom,titre,descriptif","spip_gis AS gis LEFT JOIN spip_gis_liens AS lien USING(id_gis)","lien.id_objet=$id_rubrique AND lien.objet=".$objet);
     
    1619                        if(is_array($valeurs_gis)){
    1720                                $valeurs_gis['gis_titre'] = $valeurs_gis['titre'];
     21                                $flux['args']['contexte']['id_objet'] = $id_rubrique;
    1822                                $valeurs_gis['gis_descriptif'] = $valeurs_gis['descriptif'];
    1923                                unset($valeurs_gis['titre']);
     
    2731}
    2832
     33/**
     34 * Insertion dans le pipeline diogene_traiter
     35 *
     36 * On crée un point ou le met à jour si on a les infos de géoloc
     37 *
     38 * @param array $flux le contexte du pipeline
     39 */
    2940function diogene_geo_diogene_traiter($flux){
    3041        if($flux['args']['action']=='modifier'){
    31                 $id_objet = $flux['args']['id_objet'];
    32                 $type = $flux['args']['type'];
    33                 $table  = $flux['args']['table'];
    34                 $id_table_objet = id_table_objet($type);
    35                 if(($lat = _request('lat')) && ($lng = _request('lon'))){
     42                if(($lat = _request('lat')) && ($lon = _request('lon'))){
     43                        include_spip('action/editer_gis');
    3644                        // On crée l'array pour l'update et pour la création des coordonnées
    37                         $zoom = _request('zoom') ? _request('zoom') : lire_config('gis/zoom');
    38 
    39                         $coords = array(
    40                                         $id_table_objet=> $id_objet,
    41                                         'lat'=> $lat,
    42                                         'lonx' => $lng,
    43                                         'zoom' => $zoom
    44                                 );
    45 
    46                         if(lire_config('gis/geocoding') == 'oui'){
    47                                 $geocoding = array(
    48                                         "pays" => _request('pays'),
    49                                         "code_pays" => _request('code_pays'),
    50                                         "region" => _request('region'),
    51                                         "ville" => _request('ville'),
    52                                         "code_postal" => _request('code_postal')
    53                                 );
    54                                 $coords = array_merge($coords,$geocoding);
     45                        $zoom = _request('zoom');
     46                        $titre = _request('gis_titre');
     47                        $descriptif = _request('gis_descriptif');
     48                        $id_gis = _request('id_gis');
     49                        $datas = array(
     50                                'titre' => $titre,
     51                                'descriptif' => $descriptif,
     52                                'lat' => $lat,
     53                                'lon' => $lon,
     54                                'zoom' => $zoom,
     55                                'titre' => $titre
     56                        );
     57                        if(!intval($id_gis)){
     58                                $id_gis = insert_gis();
    5559                        }
    56 
    57                         $coords_existantes = sql_getfetsel("id_gis","spip_gis","$id_table_objet = $id_objet");
    58                         if($coords_existantes){
    59                                 // Des coordonnées sont déjà définies pour cet article
    60                                 // => on les update
    61                                 sql_updateq("spip_gis",$coords,"id_gis = $coords_existantes");
    62                         }
    63                         else{
    64                                 // Aucune coordonnée n'est définie pour cet article
    65                                 // => on les crées
    66                                 $id_gis = sql_insertq("spip_gis",$coords);
    67                         }
     60                        revisions_gis($id_gis,$datas);
    6861                }
    6962        }
  • plugins_spip/diogene_complements/diogene_geo/formulaires/diogene_ajouter_medias_geo.html

    r4914 r4915  
    2525                                        [(#GET{geocoder}|oui)
    2626                                        function geocode(address) {
     27                                                console.log(address);
    2728                                                form_map.setCenterAndZoom(address.point, 15);
    2829                                                geocode_marker = new mxn.Marker(address.point);
     
    99100                        </li>
    100101                [(#SAISIE{hidden,id_gis})]
     102                [(#SAISIE{hidden,objet})]
     103                [(#SAISIE{hidden,id_objet})]
    101104                [(#GET{geocoder}|oui)
    102105                <li class="rechercher_adresse">
Note: See TracChangeset for help on using the changeset viewer.