﻿var lastWhois = "";
var lastTld = "";

var icon1 = new Image(10, 10);
var icon2 = new Image(16, 16);
icon1.src = "/assets/graphics/progress.gif"
icon2.src = "/assets/graphics/progress_circle.gif"

function getDomain() {
	var result = document.forms[0].domain.value;
	result = result.replace("www.", "");
	eval("var domain_tld = /\.(?:" + tldArray.join("|") + ")$/gi;");
	var domain_rule = /[^a-züöçñßéáåæø0-9\-]/gi;

	var match = false;
	if (domain_tld.test(result)) {
		result = result.replace(domain_tld, "");
		match = true;
	}
	if (domain_rule.test(result)) {
		if (!match) result = result.replace(".", "-");
		result = result.replace(domain_rule, "");
		document.forms[0].domain.value = result;
	}
	return result;
}
function BeginProcess() {
	lastWhois = "";
	lastTld = "";

	resetResults();
	var d = getDomain();
	for (var i = 0; i <= tldArray.length; i++) {
		UpdateProgress(d, tldArray[i], "", "", true)
    }
    UpdateProgress(d, "xxx", "", "", true);
	var c = document.getElementById("availbility");
	if (!c) {
		c = document.createElement("iframe");
		c.id = "availbility";
		c.style.display = "none";
		document.body.appendChild(c)
	}
	c.src = "/AvailbilityStatus.aspx?domain=" + escape(document.forms[0].domain.value.toLowerCase());  // + "&nc=" + escape(Math.random())
}
function UpdateProgress(a, b, c, d, e) {
    if (b == "xxx") {
        var xxx = $('#xxx');
        if (c == "Free") {
            var status = 'free';
            var test = 'Ledig'
            $('.status tr.active input').removeAttr("disabled");
        }
        else if( c == "Registered" ){
            var status = 'registered';
            var test = 'Optaget';
        }
        else {
            var status = '';
            var test = '-';
            $('.status tr.active input').attr("disabled", true);
        }
        xxx.find('#xxxstatus').removeClass("free registered").addClass(status).html(test);
        $()
        $('#domainReg').attr("action", "/DomainReg.aspx/?domain=" + a);
    }
    else {
        var d = getDomain();
        var f = document.getElementById(b);
        if (f) {
            a = a.toLowerCase().replace(" ", "");

            var oddEven = (f.className.indexOf("odd") != -1 ? "odd" : "even");
            var domStatus = (document.forms[0].domain.value.toString().toLowerCase() == (a + "." + b).toString().toLowerCase()) ? formatString("{0} {1}", c.toString().toLowerCase(), "match") : c.toString().toLowerCase();
            f.className = formatString("{0} {1}", oddEven, domStatus);

            f.cells[0].innerHTML = "<input type=\"checkbox\" name=\"domain\"  value=\"" + a + "." + b + "\" disabled=\"disabled\" />";
            f.cells[1].innerHTML = c == "Registered" ? "<a href=\"http://" + a + "." + b + "\" target=\"_blank\">" + a + "." + b + "</a>" : a + "." + b;
            if (e) {
                f.cells[2].innerHTML = "<img src=\"/assets/graphics/progress.gif\" style=\"vertical-align: middle;\" />"
            } else {
                var g = "";
                var e = "-";
                switch (c) {
                    case "Free":
                        g = "Ledig";
                        f.cells[0].innerHTML = "<input type=\"checkbox\" name=\"domain\" value=\"" + a + "." + b + "\" />";
                        break;
                    case "Registered":
                        g = "Optaget";
                        e = "<a href=\"javascript:getWhois('" + a + "', '" + b + "');\">Se ejer</a>"
                        break;
                    case "Error":
                        g = "<acronym title=\"" + d + "\">Ikke testet</acronym>";
                        break;
                    case "ErrorLength":
                        g = "<a href=\"javascript:getTldInfo('" + b + "');\" title=\"" + d + "\">Ugyldig længde</a>";
                        break;
                    case "ErrorWord":
                        g = "<a href=\"javascript:getTldInfo('" + b + "');\" title=\"" + d + "\">Ugyldigt ord</a>";
                        break;
                    default:
                        g = "<acronym title=\"" + d + "\">-</acronym>";
                        break
                }
                f.cells[2].innerHTML = g
                f.cells[6].innerHTML = e;
            }
            rowHilight();
        }
    }
}
function UpdateComplete() {
	
}
function getXmlHttp() {
	var xmlhttp = (window.XMLHttpRequest || window.ActiveXObject);
	if (window.XMLHttpRequest) {
		xmlhttp = new XMLHttpRequest();
	} else if (window.ActiveXObject) {
		xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	}
	return xmlhttp;
}
function getWhois(rootDomain, tld) {
	resetResults();
	lastTld = "";

	var xml = getXmlHttp();
	var div = document.getElementById(tld + "-result");
	if (div && xml) {
		if (lastWhois != tld) {
			lastWhois = tld;
			div.className = "result whois";
			div.innerHTML = formatString("<div><iframe src=\"/whois.aspx?domain={0}.{1}\" frameborder=\"0\" width=\"100%\" height=\"200\"></iframe></div>", escape(rootDomain), escape(tld));
		} else {
			lastWhois = "";
			div.className = "result";
			div.innerHTML = "";
		}
	}
}
function getTldInfo(tld) {
	resetResults();
	lastWhois = "";

	var xml = getXmlHttp();
	var div = document.getElementById(tld + "-result");
	if (div && xml) {
		if (lastTld != tld) {
			lastTld = tld;
			div.className = "result tld";
			div.innerHTML = formatString("<div><iframe src=\"/tld.aspx?tld={0}\" frameborder=\"0\" width=\"100%\" height=\"200\"></iframe></div>", escape(tld));
		} else {
			lastTld = "";
			div.className = "result";
			div.innerHTML = "";
		}
	}
}
function resetResults(skip) {
	for (var i = 0; i <= tldArray.length; i++) {
		var div = document.getElementById(tldArray[i] + "-result");
		if (div) {
			div.className = "result";
			div.innerHTML = "";
		}
	}
}
