function noAjax() { alert(GetLanguage("NO_AJAX")); } function getXhr() { if (window.XMLHttpRequest) { xhr = new XMLHttpRequest(); // Avoid a Safari Bug if (xhr.overrideMimeType) { xhr.overrideMimeType("text/xml"); } } else { if (window.ActiveXObject) { try { // Try to load object on Internet Explorer xhr = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { // Try to load object for another version of Internet Explorer xhr = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) { // The browser does not support XMLHttpRequest noAjax(); xhr = false; } } } else { // The browser does not support XMLHttpRequest noAjax(); xhr = false; } } return xhr; } function getObject(Id) { if (document.getElementById) return document.getElementById(Id); if (document.layers) return document.layers[Id]; if (document.all) return document.all[Id]; return null; } var xhr = null; var needNetwork = false; var needBrand = false; var needModel = false; var needProvider = false; var needKBH = false; var needMEP = false; var needPRD = false; var needPIN = false; var needType = false; var needLocks = 0; var allowOther = false; var SMS = false; function ajaxSetTool(ToolID) { getObject("trBrand").style.display = "none"; getObject("trModel").style.display = "none"; getObject("trModelOther").style.display = "none"; getObject("trCountry").style.display = "none"; getObject("trNetwork").style.display = "none"; getObject("trProvider").style.display = "none"; getObject("trKBH").style.display = "none"; getObject("trMEP").style.display = "none"; getObject("trPRD").style.display = "none"; getObject("trPIN").style.display = "none"; getObject("trType").style.display = "none"; getObject("trLock").style.display = "none"; getObject("trSMS").style.display = "none"; getObject("divMessage").style.display = "none"; getObject("delayDiv").style.visibility = "hidden"; if (ToolID != "") { // Show Loading getObject("trLoading").style.visibility = "visible"; if (xhr) { if (xhr.readyState != 0) { xhr.onreadystatechange = function() {}; xhr.abort(); } } else { xhr = getXhr(); } xhr.open("GET", "../conn/tool.php?ID=" + ToolID, true); xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.responseXML) { // Needs needNetwork = (xhr.responseXML.getElementsByTagName("needNetwork" )[0].firstChild.data == "true"); needBrand = (xhr.responseXML.getElementsByTagName("needBrand" )[0].firstChild.data == "true"); needModel = (xhr.responseXML.getElementsByTagName("needModel" )[0].firstChild.data == "true"); needProvider = (xhr.responseXML.getElementsByTagName("needProvider")[0].firstChild.data == "true"); needKBH = (xhr.responseXML.getElementsByTagName("needKBH" )[0].firstChild.data == "true"); needMEP = (xhr.responseXML.getElementsByTagName("needMEP" )[0].firstChild.data == "true"); needPRD = (xhr.responseXML.getElementsByTagName("needPRD" )[0].firstChild.data == "true"); needPIN = (xhr.responseXML.getElementsByTagName("needPIN" )[0].firstChild.data == "true"); needType = (xhr.responseXML.getElementsByTagName("needType" )[0].firstChild.data == "true"); needLocks = parseInt(xhr.responseXML.getElementsByTagName("needLocks")[0].firstChild.data); allowOther = (xhr.responseXML.getElementsByTagName("allowOther" )[0].firstChild.data == "true"); SMS = (xhr.responseXML.getElementsByTagName("SMS" )[0].firstChild.data == "true"); var message = xhr.responseXML.getElementsByTagName("message")[0]; if (message.hasChildNodes()) { var messageContent = document.getElementById("messageContent"); while (messageContent.hasChildNodes()) messageContent.removeChild(messageContent.firstChild); var msg = message.firstChild.data; msg = msg.replace(new RegExp('\\{LiveHelp\\}', 'g'), ''); msg = msg.replace("\r\n", "\n"); msg = msg.replace("\r", "\n"); msg = msg.split("\n"); for (var key in msg) { messageContent.appendChild(document.createTextNode(msg[key])); if (key != msg.length - 1) messageContent.appendChild(document.createElement('br')); } messageContent.innerHTML = messageContent.innerHTML.replace(new RegExp("(http://[^\\s<]+)", "ig"), '$1'); getObject("divMessage").style.display = ""; } // Tool supports SMS ? if (SMS) { getObject("trSMS").style.display = ""; } // Get Networks if (needNetwork) { var countries = xhr.responseXML.getElementsByTagName("country"); if (countries) { for (var i=document.forms["order"].CountryID.options.length - 1; i>=0; i--) { document.forms["order"].CountryID.options[i] = null; } document.forms["order"].CountryID.options[0] = new Option("---", ""); for (var i=0; i=0; i--) { document.forms["order"].BrandID.options[i] = null; } document.forms["order"].BrandID.options[0] = new Option("---", ""); for (var i=0; i=0; i--) { document.forms["order"].ModelID.options[i] = null; } document.forms["order"].ModelID.options[0] = new Option("---", ""); for (var i=0; i 1 ? "s" : "")); } } else if (deliveryMax > deliveryMin) { delayTxt = GetLanguage("DELIVERY_TIME") + " : " + deliveryMin.toString() + " " + GetLanguage("TO") + " " + deliveryMax.toString() + " " + GetLanguage(deliveryUnit + (deliveryMax > 1 ? "s" : "")); } if (delayTxt != null) { delayDiv.appendChild(document.createTextNode(delayTxt)); delayDiv.style.visibility = "visible"; } // Hide Loading getObject("trLoading").style.visibility = "hidden"; // For help popup window.loaded = true; } } xhr.send(null); } removeMobilePhoto(); } function ajaxSetBrand(BrandID, ToolID) { if (needModel) { getObject("trModel").style.display = "none"; getObject("trModelOther").style.display = "none"; if (BrandID != "") { // Show Loading getObject("trLoading").style.visibility = "visible"; if (xhr) { if (xhr.readyState != 0) { xhr.onreadystatechange = function() {}; xhr.abort(); } } else { xhr = getXhr(); } xhr.open("GET", "../conn/brand.php?ID=" + BrandID + "&ToolID=" + ToolID, true); xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.responseXML) { var models = xhr.responseXML.getElementsByTagName("model"); if (models) { for (var i=document.forms["order"].ModelID.options.length - 1; i>=0; i--) { document.forms["order"].ModelID.options[i] = null; } document.forms["order"].ModelID.options[0] = new Option("---", ""); for (var i=0; i=0; i--) { document.forms["order"].NetworkID.options[i] = null; } document.forms["order"].NetworkID.options[0] = new Option("---", ""); for (var i=0; i 0) { var Html = ''; for (var i=0; i'; Html += ''; Html += ''; Html += ''; } Html += '
'; if (brands[i].getAttribute("logo")) Html += ''; Html += jsXmlEntities(brands[i].getAttribute("name")) + ''; var mobiles = brands[i].getElementsByTagName("mobile"); var models = new Array(); for (var j=0; j' + jsXmlEntities(mobiles[j].firstChild.data) + ''); } Html += models.join(" · "); Html += '
'; getObject("MobilesDiv").innerHTML = Html; getObject("MobilesAnchor").setAttribute("href", xhr.responseXML.getElementsByTagName("featuresurl")[0].firstChild.data); getObject("MobilesFieldset").style.display = ""; } ajaxChangeFieldState("Phone", brands.length > 0); // Show icons getObject("trIcons").style.display = ""; // Hide Loading getObject("trLoading").style.visibility = "hidden"; } } xhr.send(null); } } var fileNamePattern = null; function ajaxSetFileServer(ServerID) { getObject("trIcons").style.display = "none"; getObject("MobilesFieldset").style.display = "none"; fileNamePattern = null; if (ServerID != "") { // Show Loading getObject("trLoading").style.visibility = "visible"; if (xhr) { if (xhr.readyState != 0) { xhr.onreadystatechange = function() {}; xhr.abort(); } } else { xhr = getXhr(); } xhr.open("GET", "../conn/file.php?ServerID=" + ServerID, true); xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.responseXML) { var softwarename = xhr.responseXML.getElementsByTagName("softwarename"); var softwareurl = xhr.responseXML.getElementsByTagName("softwareurl"); var userguideurl = xhr.responseXML.getElementsByTagName("userguideurl"); if (softwarename && softwareurl && userguideurl) { if (softwareurl[0].hasChildNodes()) { getObject("Software").setAttribute("href", softwareurl[0].firstChild.data); getObject("Software").setAttribute("title", softwarename[0].hasChildNodes() ? softwarename[0].firstChild.data : ""); } ajaxChangeFieldState("Download", softwareurl[0].hasChildNodes()); if (userguideurl[0].hasChildNodes()) { getObject("UserGuide").setAttribute("href", userguideurl[0].firstChild.data); } ajaxChangeFieldState("Info", userguideurl[0].hasChildNodes()); } var fileNamePatternCI = (xhr.responseXML.getElementsByTagName("filenamepatternci")[0].firstChild.data == "true"); fileNamePattern = new RegExp(xhr.responseXML.getElementsByTagName("filenamepattern")[0].firstChild.data, fileNamePatternCI ? "i" : ""); // Show compatible mobiles var brands = xhr.responseXML.getElementsByTagName("brand"); var colors = new Array("#F4F4F6", "#FBFBFC"); var k = 0; if (brands.length > 0) { var Html = ''; for (var i=0; i'; Html += ''; Html += ''; Html += ''; } Html += '
'; if (brands[i].getAttribute("logo")) Html += ''; Html += jsXmlEntities(brands[i].getAttribute("name")) + ''; var mobiles = brands[i].getElementsByTagName("mobile"); var models = new Array(); for (var j=0; j' + jsXmlEntities(mobiles[j].firstChild.data) + ''); } Html += models.join(" · "); Html += '
'; getObject("MobilesDiv").innerHTML = Html; getObject("MobilesAnchor").setAttribute("href", xhr.responseXML.getElementsByTagName("featuresurl")[0].firstChild.data); getObject("MobilesFieldset").style.display = ""; } ajaxChangeFieldState("Phone", brands.length > 0); // Show icons getObject("trIcons").style.display = ""; // Hide Loading getObject("trLoading").style.visibility = "hidden"; } } xhr.send(null); } } var needIMEI = false; var needNumber = false; var needPhone = false; function ajaxSubmitFormCableServer() { with(document.forms["order"]) { if (jsTrim(CustomerName.value) == "") { alert(GetLanguage("ENTER_NAME")); return false; } if (! jsCheckEmail(jsTrim(Email.value))) { alert(GetLanguage("INVALID_EMAIL")); return false; } if (IMEI) { if (! jsCheckIMEI(IMEI.value)) { alert(GetLanguage("INVALID_IMEI")); return false; } } } document.getElementById("cableSubmit").disabled = true; return true; } function ajaxSubmitFormFileServer() { with(document.forms["order"]) { if (ServerID.selectedIndex <= 0) { alert(GetLanguage("SELECT_SERVER")); return false; } if (File.value == "") { alert(GetLanguage("SELECT_FILE")); return false; } if (! fileNamePattern) { // Ajax did not finish loading ... return false; } var Path = File.value.split(/[\/\\]+/); if (! fileNamePattern.test(Path[Path.length-1])) { alert(GetLanguage("INVALID_FILENAME")); return false; } } document.getElementById("fileSubmit").disabled = true; return true; } function ajaxSetFeaturesBrand(BrandID, ModelID) { getObject("Model").style.display = "none"; if (BrandID != "") { getObject("Loading").style.display = ""; if (xhr) { if (xhr.readyState != 0) { xhr.onreadystatechange = function() {}; xhr.abort(); } } else { xhr = getXhr(); } xhr.open("GET", "../conn/model.php?BrandID=" + BrandID + "&ModelID=" + ModelID, true); xhr.onreadystatechange = function() { if (xhr.readyState == 4 && xhr.responseXML) { var models = xhr.responseXML.getElementsByTagName("model"); if (models) { var Model = getObject("Model"); Model.options.length = 1; for (var i=0; i