// @source https://github.com/NyaaPantsu/nyaa/tree/dev/public/js
// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
var Query = {
Failed:0,
MaxFail: 10,
Get: function(url, renderer, callback) {
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.responseType = 'json';
xhr.onload = function(e) {
if (this.status == 200) {
Query.Failed = 0;
renderer(this.response);
if (callback != undefined) callback(this.response);
} else {
console.log("Error when refresh")
Query.Failed++;
console.log("Attempt to refresh "+Query.Failed+"...");
if ((Query.MaxFail == -1) || (Query.Failed < Query.MaxFail)) Query.Get(url, renderer, callback);
else console.error("Too many attempts, stopping...")
}
};
xhr.send();
},
Post: function(url, postArgs, callback) {
xhr.open('POST', url, true);
xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
if ((Query.MaxFail == -1) || (Query.Failed < Query.MaxFail)) Query.Post(url, postArgs, callback);
xhr.send(postArgs);
// @license-end