equal
deleted
inserted
replaced
|
1 /** |
|
2 * JSONP.js |
|
3 * |
|
4 * Copyright, Moxiecode Systems AB |
|
5 * Released under LGPL License. |
|
6 * |
|
7 * License: http://www.tinymce.com/license |
|
8 * Contributing: http://www.tinymce.com/contributing |
|
9 */ |
|
10 |
|
11 define("tinymce/util/JSONP", [ |
|
12 "tinymce/dom/DOMUtils" |
|
13 ], function(DOMUtils) { |
|
14 return { |
|
15 callbacks: {}, |
|
16 count: 0, |
|
17 |
|
18 send: function(settings) { |
|
19 var self = this, dom = DOMUtils.DOM, count = settings.count !== undefined ? settings.count : self.count; |
|
20 var id = 'tinymce_jsonp_' + count; |
|
21 |
|
22 self.callbacks[count] = function(json) { |
|
23 dom.remove(id); |
|
24 delete self.callbacks[count]; |
|
25 |
|
26 settings.callback(json); |
|
27 }; |
|
28 |
|
29 dom.add(dom.doc.body, 'script', { |
|
30 id: id, |
|
31 src: settings.url, |
|
32 type: 'text/javascript' |
|
33 }); |
|
34 |
|
35 self.count++; |
|
36 } |
|
37 }; |
|
38 }); |