var MoneyCareWidget = { login: '', request: {}, init: function(request, login) { MoneyCareWidget.login = login; MoneyCareWidget.request = request console.log(this.login); var integrationBlockMC = document.getElementById("money-care-link"); integrationBlockMC.style.position = "relative"; integrationBlockMC.addEventListener("click", MoneyCareWidget.requestMoneyCare); var elemSpan = document.createElement("span"); elemSpan.id = "loader-money-care"; elemSpan.style.position = "absolute"; elemSpan.style.display = "none"; elemSpan.style.width = "30px"; elemSpan.style.height = "30px"; elemSpan.style.left = "50%"; elemSpan.style.marginLeft = "-17px"; integrationBlockMC.appendChild(elemSpan); }, requestMoneyCare: function(event){ var protocol = 'https:'; var loader = document.getElementById("loader-money-care"); loader.style.display = "block"; loader.style.backgroundSize = "30px"; loader.style.backgroundImage = "url('" + protocol + "//im.moneycare.su/img/loader.gif')"; var requestMC = new XMLHttpRequest(); var urlMC = protocol + "//im.moneycare.su/integration/request?login=" + MoneyCareWidget.login; var params; params = JSON.stringify(MoneyCareWidget.request); requestMC.responseType = "json"; requestMC.open("POST", urlMC, true); requestMC.setRequestHeader("Content-type", "application/json"); requestMC.addEventListener("readystatechange", () => { if(requestMC.readyState === 4 && requestMC.status === 200) { if(requestMC.response){ if(requestMC.response.formUrl){ window.location.replace(requestMC.response.formUrl); }else if(requestMC.response.errors){ console.log(requestMC.response.errors); } } } }); requestMC.send(params); event.preventDefault(); } };