Bienvenue sur PostGIS.fr

Bienvenue sur PostGIS.fr , le site de la communauté des utilisateurs francophones de PostGIS.

PostGIS ajoute le support d'objets géographique à la base de données PostgreSQL. En effet, PostGIS "spatialise" le serverur PostgreSQL, ce qui permet de l'utiliser comme une base de données SIG.

Maintenu à jour, en fonction de nos disponibilités et des diverses sorties des outils que nous testons, nous vous proposons l'ensemble de nos travaux publiés en langue française.

source: trunk/workshop-routing-foss4g/web/ext/src/ext-core/examples/jsonp/jsonp.js @ 76

Revision 76, 2.3 KB checked in by djay, 12 years ago (diff)

Ajout du répertoire web

  • Property svn:executable set to *
Line 
1/*!
2 * Ext JS Library 3.4.0
3 * Copyright(c) 2006-2011 Sencha Inc.
4 * licensing@sencha.com
5 * http://www.sencha.com/license
6 */
7Ext.ns('Ext.ux');
8
9Ext.ux.JSONP = (function(){
10    var _queue = [],
11        _current = null,
12        _nextRequest = function() {
13            _current = null;
14            if(_queue.length) {
15                _current = _queue.shift();
16                        _current.script.src = _current.url + '?' + _current.params;
17                        document.getElementsByTagName('head')[0].appendChild(_current.script);
18            }
19        };
20
21    return {
22        request: function(url, o) {
23            if(!url) {
24                return;
25            }
26            var me = this;
27
28            o.params = o.params || {};
29            if(o.callbackKey) {
30                o.params[o.callbackKey] = 'Ext.ux.JSONP.callback';
31            }
32            var params = Ext.urlEncode(o.params);
33
34            var script = document.createElement('script');
35                        script.type = 'text/javascript';
36
37            if(o.isRawJSON) {
38                if(Ext.isIE) {
39                    Ext.fly(script).on('readystatechange', function() {
40                        if(script.readyState == 'complete') {
41                            var data = script.innerHTML;
42                            if(data.length) {
43                                me.callback(Ext.decode(data));
44                            }
45                        }
46                    });
47                }
48                else {
49                     Ext.fly(script).on('load', function() {
50                        var data = script.innerHTML;
51                        if(data.length) {
52                            me.callback(Ext.decode(data));
53                        }
54                    });
55                }
56            }
57
58            _queue.push({
59                url: url,
60                script: script,
61                callback: o.callback || function(){},
62                scope: o.scope || window,
63                params: params || null
64            });
65
66            if(!_current) {
67                _nextRequest();
68            }
69        },
70
71        callback: function(json) {
72            _current.callback.apply(_current.scope, [json]);
73            Ext.fly(_current.script).removeAllListeners();
74            document.getElementsByTagName('head')[0].removeChild(_current.script);
75            _nextRequest();
76        }
77    }
78})();
Note: See TracBrowser for help on using the repository browser.