mirror of
https://github.com/overleaf/overleaf.git
synced 2024-12-27 12:01:55 +00:00
42 lines
1.1 KiB
JavaScript
42 lines
1.1 KiB
JavaScript
|
/*
|
||
|
* based on code from:
|
||
|
*
|
||
|
* @license RequireJS text 0.25.0 Copyright (c) 2010-2011, The Dojo Foundation All Rights Reserved.
|
||
|
* Available via the MIT or new BSD license.
|
||
|
* see: http://github.com/jrburke/requirejs for details
|
||
|
*/
|
||
|
define(function(require, exports, module) {
|
||
|
"use strict";
|
||
|
var dom = require("./dom");
|
||
|
|
||
|
exports.get = function (url, callback) {
|
||
|
var xhr = new XMLHttpRequest();
|
||
|
xhr.open('GET', url, true);
|
||
|
xhr.onreadystatechange = function () {
|
||
|
//Do not explicitly handle errors, those should be
|
||
|
//visible via console output in the browser.
|
||
|
if (xhr.readyState === 4) {
|
||
|
callback(xhr.responseText);
|
||
|
}
|
||
|
};
|
||
|
xhr.send(null);
|
||
|
};
|
||
|
|
||
|
exports.loadScript = function(path, callback) {
|
||
|
var head = dom.getDocumentHead();
|
||
|
var s = document.createElement('script');
|
||
|
|
||
|
s.src = path;
|
||
|
head.appendChild(s);
|
||
|
|
||
|
s.onload = s.onreadystatechange = function(_, isAbort) {
|
||
|
if (isAbort || !s.readyState || s.readyState == "loaded" || s.readyState == "complete") {
|
||
|
s = s.onload = s.onreadystatechange = null;
|
||
|
if (!isAbort)
|
||
|
callback();
|
||
|
}
|
||
|
};
|
||
|
};
|
||
|
|
||
|
});
|