Changeset 58722 in spip-zone


Ignore:
Timestamp:
Feb 20, 2012, 12:55:07 PM (8 years ago)
Author:
jean-marc.viglino@…
Message:

[MAJ] Mise a jour de l'appel au service Geoportail

Location:
_plugins_/spip_geoportail
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/spip_geoportail/geoportail_final.php

    r58110 r58722  
    2020        $engine=
    2121'<script>jQuery.geoportail.hash = "'.$action.'";</script>
    22 <script language=javascript>jQuery(document).ready(     function() { jQuery.geoportail.initMap("'._DIR_PLUGIN_GEOPORTAIL.'"); });</script>
     22<script language=javascript>jQuery(document).ready(     function() { loadAPI(); });</script>
    2323
    2424<!-- API Geoportail -->
     
    3434    // ]]></script>
    3535   
    36 <script src="http://api.ign.fr/geoportail/api?v=1.2-e&key='.$GLOBALS['meta']['geoportail_key'].'&includeEngine=false"></script>
    37 
    38 
    3936<!-- OpenLayers styles : -->
    4037<link id="__OpenLayersCss__" rel="stylesheet" type="text/css" href="http://api.ign.fr/geoportail/api/js/1.2/theme/default/style.css"/>
  • _plugins_/spip_geoportail/geoportail_insert_head.html

    r58260 r58722  
     1<script type="text/javascript">
     2        if (window.__Geoportal$timer===undefined) {
     3            var __Geoportal$timer= null;
     4        }
     5
     6        function checkApiLoading(retryClbk,clss) {
     7            if (__Geoportal$timer!=null) {
     8                //clearTimeout: annule le minuteur "__Geoportal$timer" avant sa fin
     9                window.clearTimeout(__Geoportal$timer);
     10                __Geoportal$timer= null;
     11            }
     12   
     13            /**
     14             * Il se peut que l'init soit execute avant que l'API ne soit chargee
     15             * Ajout d'un code temporisateur qui attend 300 ms avant de relancer l'init
     16             */
     17            var f;
     18            for (var i=0, l= clss.length; i<l; i++) {
     19                try {
     20                    f= eval(clss[i]);
     21                } catch (e) {
     22                    f= undefined;
     23                }
     24                if (typeof(f)==='undefined') {
     25                    __Geoportal$timer= window.setTimeout(retryClbk, 300);
     26                    return false;
     27                }
     28            }
     29            return true;
     30        }
     31
     32        function loadAPI() {
     33            // on attend que les classes soient chargées
     34            if (checkApiLoading(loadAPI,['OpenLayers','Geoportal','Geoportal.Viewer','Geoportal.Viewer.Default'])===false) {
     35                return;
     36            }
     37
     38            // on charge la configuration de la clef API, puis on charge l'application
     39            Geoportal.GeoRMHandler.getConfig(['<?php echo ($GLOBALS['meta']['geoportail_key']); ?>'], null, null, {
     40                onContractsComplete: function(){ jQuery.geoportail.initMap();}
     41            });
     42        }
     43</script>
     44
    145<!--_GEOPORTAIL_HEADER_-->
    246[<link rel="stylesheet" href="(#CHEMIN{css/jqdialog.css})" type="text/css"  />]
Note: See TracChangeset for help on using the changeset viewer.