function initPage(page) {
	if (page == 'index') {
	}
}

document.getElementsByClassName = function(cl) {
	var retnode = [];
	var myclass = new RegExp('\\b'+cl+'\\b');
	var elem = this.getElementsByTagName('*');
	for (var i = 0; i < elem.length; i++) {
		var classes = elem[i].className;
		if (myclass.test(classes)) {
			retnode.push(elem[i]);
		}
	}
	return retnode;
}; 

function isblank(s) {
	for (var i = 0; i < s.length; i++) {
		var c = s.charAt(i);
		if ((c != ' ') && (c != '\n') && (c != '\t'))
			return(false);
	}
	return(true);
}

function domainVerify(dform) {
	var d, part, parts, names, pattern;
	for (var i = 0; i < dform.length; i++) {
		d = dform.elements[i];
		if (d.name == 'domainname') {
			if ((d.value == null) || (d.value == '') || isblank(d.value)) {
				alert('Please enter the domain name you are interested in.');
				return(false);
			}
			parts = d.value.split(".");
			part = parts.pop();
			pattern = /^(com|net|org|biz|info|us)\s*$/i;
			if ((part == null) || (part == '') || isblank(part) || (pattern.test(part) == false)) {
				alert(part + ': Enter names that end only in .com, .net, .org, .biz, .info, or .us.');
				return(false);
			}
			part = parts.pop();
			pattern = /^[\-]|[^a-zA-Z0-9\-]|.{64,}|[\-]$/;
			if ((part == null) || (part == '') || isblank(part) || pattern.test(part)) {
				alert(part + ': Only letters, numbers and hyphens are allowed in a domain name. No more than 63 characters.');
				return(false);
			}
		}
		if (d.name == 'multinames') {
			if ((d.value == null) || (d.value == '') || isblank(d.value)) {
				alert('Please enter the domain name you are interested in.');
				return(false);
			}
			names = d.value.split("\n");
			while (names.length) {
				name = names.pop();
				if ((name == null) || (name == '') || isblank(name)) {
					continue;
				}
				parts = name.split(".");
				part = parts.pop();
				pattern = /^(com|net|org|biz|info|us)\s*$/i;
				if ((part == null) || (part == '') || isblank(part) || (pattern.test(part) == false)) {
					alert(part + ': Enter names that end only in .com, .net, .org, .biz, .info, or .us.');
					return(false);
				}
				part = parts.pop();
				pattern = /^[\-]|[^a-zA-Z0-9\-]|.{64,}|[\-]$/;
				if ((part == null) || (part == '') || isblank(part) || pattern.test(part)) {
					alert(part + ': Only letters, numbers and hyphens are allowed in a domain name. No more than 63 characters.');
					return(false);
				}
			}
		}
		if (d.name == 'ipaddress') {
			if ((d.value == null) || (d.value == '') || isblank(d.value)) {
				alert('Please enter an IP address.');
				return(false);
			}
			parts = d.value.split(".");
			if (parts.length != 4) {
				alert(part + ': There must be 4 numbers separated by dots.');
				return(false);
			}
			pattern = /[^0-9]|.{4,}/;
			for (var j = 0; j < parts.length; j++) {
				part = parts[j];
				if ((part == null) || (part == '') || isblank(part) || pattern.test(part) || (part > 255)) {
					alert(part + ': Only numbers, 255 or less, separated by dots, are allowed.');
					return(false);
				}
			}
		}
		if (d.name == 'servername') {
			if ((d.value == null) || (d.value == '') || isblank(d.value)) {
				alert('Please enter DNS name server. (such as ns.nameserver.com)');
				return(false);
			}
			parts = d.value.split(".");
			part = parts.pop();
			pattern = /^(com|net|org|biz|info|us|tv|uk|in|de|es|name)\s*$/i;
			if ((part == null) || (part == '') || isblank(part) || (pattern.test(part) == false)) {
				alert(part + ': Sorry, we do not recognize your top level domain.');
				return(false);
			}
			pattern = /^[\-]|[^a-zA-Z0-9\-]|.{64,}|[\-]$/;
			for (var j = 0; j < parts.length; j++) {
				part = parts[j];
				if ((part == null) || (part == '') || isblank(part) || pattern.test(part)) {
					alert(part + ': Only letters, numbers and hyphens are allowed in a domain name. No more than 63 characters.');
					return(false);
				}
			}
		}
	}
	waitResponse();
	return(true);
}

function quoteVerify(contact) {
	var string1, string2;
	if (document.all) {
		string1 = "document.all['";
		string2 = "']";
	} else if (document.getElementById) {
		string1 = "document.getElementById('";
		string2 = "')";
	}

	var q;
	var errors = false;
	for (var i = 0; i < contact.length; i++) {
		q = contact.elements[i];
		if (q.name == 'fullname') {
			var elem = eval(string1 + "rqdname" + string2);
			if ((q.value == null) || (q.value == '') || isblank(q.value)) {
				elem.style.color = 'red';
				errors = true;
			} else {
				elem.style.color = 'black';
			}
		} else if (q.name == 'description') {
			var elem = eval(string1 + "rqddesc" + string2);
			if ((q.value == null) || (q.value == '') || isblank(q.value) || (q.value == 'Enter a summary of your project.')) {
				elem.style.color = 'red';
				errors = true;
			} else {
				elem.style.color = 'black';
			}
		} else if (q.name == 'email') {
			var elem = eval(string1 + "rqdemail" + string2);
			if ((q.value == null) || (q.value == '') || isblank(q.value)) {
				elem.style.color = 'red';
				errors = true;
			} else {
				elem.style.color = 'black';
			}
		} else if (q.name == 'mv_captcha_guess') {
			var elem = eval(string1 + "rqdcode" + string2);
			if ((q.value == null) || (q.value == '') || isblank(q.value)) {
				elem.style.color = 'red';
				errors = true;
			} else {
				elem.style.color = 'black';
			}
		}
	}

	if (errors) {
		var elem = eval(string1 + "quoteerror" + string2);
		elem.style.display = "inline";
		elem.style.visibility = "visible";
		return(false);
	}
}

function hostingVerify(hostform) {
	var h;
	for (var i = 0; i < hostform.length; i++) {
		h = hostform.elements[i];
		if (h.name == 'mv_sku') {
			if ((h.value == null) || (h.value == '') || isblank(h.value)) {
				alert('Please select either a monthly or annual hosting package.');
				return(false);
			}
		}
	}
	return(true);
}

function releaseVerify() {
	var msg = "\nAre you absolutely sure you want to GIVE UP OWNERSHIP of this domain name? Click Ok to end your ownership.\n\n" +
				"Click CANCEL to abort this action and RETAIN OWNERSHIP of your domain name."
	return confirm(msg);
}

function removeNSVerify() {
	var msg = "\nAre you sure you want to DELETE this nameserver? Click Ok to delete the nameserver.\n\n" +
				"Click CANCEL to abort this action and KEEP this nameserver."
	return confirm(msg);
}

function waitResponse() {
	var string1, string2;
	if (document.all) {
		string1 = "document.all['";
		string2 = "']";
	} else if (document.getElementById) {
		string1 = "document.getElementById('";
		string2 = "')";
	}

	var waitbg = eval(string1 + "waitrespbg" + string2);
	var wait = eval(string1 + "waitresp" + string2);

	waitbg.style.visibility = "visible";
	waitbg.style.display = "inline";

	var h = 0;
	var w = 0;
	if(document.documentElement && document.documentElement.clientHeight) {
		//IE 6+ in 'standards compliant mode'
		h = document.documentElement.clientHeight;
		w = document.documentElement.clientWidth;
	} else if(document.body && document.body.clientHeight) {
		//IE 4 compatible
		h = document.body.clientHeight;
		w = document.body.clientWidth;
	} else if( typeof( window.innerHeight ) == 'number' ) {
		//Non-IE
		h = window.innerHeight;
		w = window.innerWidth;
	}
	if (navigator.appName == 'Microsoft Internet Explorer') {
		wait.style.top = document.body.scrollTop + 200 + 'px';
	} else {
		wait.style.top = (h / 2) - 32 + 'px';
	}
	wait.style.left = (w / 2) - 100 + 'px';
	wait.style.visibility = "visible";
	wait.style.display = "inline";
}

//var browser=navigator.appName;
//var b_version=navigator.appVersion;
//var version=parseFloat(b_version);
//if ((browser=="Netscape"||browser=="Microsoft Internet Explorer") && (version>=4))

function clearWait() {
	var string1, string2;
	if (document.all) {
		string1 = "document.all['";
		string2 = "']";
	} else if (document.getElementById) {
		string1 = "document.getElementById('";
		string2 = "')";
	}

	var waitbg = eval(string1 + "waitrespbg" + string2);
	var wait = eval(string1 + "waitresp" + string2);

	waitbg.style.visibility = "hidden";
	waitbg.style.display = "none";
	wait.style.visibility = "hidden";
	wait.style.display = "none";
}

function main_menu_link (idx) {
    if ( main_browserType() == "other" )
        return;

    var l = main_lines[ idx ];

    if (l == undefined) {
        alert("Bad idx=" + idx + ", no line there.");
        return;
    }

    var mouseo = '';

    if (main_submenu_flat) {
        var out = '<td id="' + l[0] + 'left"';
    } else {
        var out = '<tr><td id="' + l[0] + 'left"';
    }

    if (l[main_MV_CHILDREN] > 0) {
        baseid = l[0];
        mouseo_beg = ' onMouseOver="main_mousein(this,';
        mouseo_beg += l[main_MV_LEVEL] + ',';
        mouseo_end = ')"';
        out += mouseo_beg + l[0] + mouseo_end;
    }

    out += '>';

    if (main_submenu_image_left && l[main_MV_CHILDREN] > 0) {
        if (main_submenu_image_left.substr(0,1) == '<')
            out += main_submenu_image_left;
        else
            out += '<img src="' + main_submenu_image_left + '" border="0">';
    }
    out += '</td><td><div';
    
    if (l[main_MV_CHILDREN] > 0) {
        out += ' id="' + l[0] + '"' + mouseo_beg + "''" + mouseo_end;
    } else {
        out += ' id="' + l[0] + '" onMouseOver="main_menuClear(' + l[main_MV_LEVEL] + ')"';
    }
    out += '>';

    var tstyle = main_link_style;
    var tclass = main_link_class;
    var ttarget = main_link_target;
    var tprepend = main_link_prepend;
    if (l[main_PAGE]) {
        out = out + '<a href="' + tprepend + l[ main_PAGE ] + '"';
        if (tclass)
            out = out + ' class="' + tclass + '"';
        if (tstyle)
            out = out + ' style="' + tstyle + '"';
        if (ttarget)
            out = out + ' target="' + ttarget + '"';
        if (l[main_DESCRIPTION])
            out = out + ' title="' + l[ main_DESCRIPTION ] + '"';
        out = out + '>';
        out = out + l[ main_NAME ] + '</a>';
    } else if (l[main_FORM]) {
        out = out + '<div style="width:' + l[main_FORM] + 'px;"></div>';
    } else {
        out = out + l[ main_NAME ];
    }

    out += '</div></td><td id="' + l[0] + 'right"';

    if (l[main_MV_CHILDREN] > 0) {
        out += mouseo_beg + l[0] + mouseo_end;
    }

    out += '>';
    if (main_submenu_image_right && l[main_MV_CHILDREN] > 0) {
        if (main_submenu_image_right.substr(0,1) == '<')
            out += main_submenu_image_right;
        else
            out += '<img src="' + main_submenu_image_right + '" border="0">';
    }
    if (main_submenu_flat) {
        out += '</td>';
    } else {
        out += '</td></tr>';
    }

    return out;
}

function main_mousein (obj,level,otherid) {
    if ( main_browserType() == "other" )
        return;

    if (otherid != '' && otherid != undefined)
        obj = document.getElementById(otherid);

    if (level == undefined)
        level = 0;
    level++;

    var divname = main_mydiv + level;

    var basediv = document.getElementById( main_base_div );

    var fod = document.getElementById( divname );
    if (fod == undefined) {
        return;
    }

    var idx = -1;
    var digid = obj.id;
    var clearmenu = 1;
    digid = digid.replace(/^main_/, '');
    if (digid == main_prev_id) {
        clearmenu = 0;
    }
    main_prev_id = digid;
    for (var j = 0; j < main_lines.length; j++) {
        if (main_lines[j][0] == digid) {
            idx = j;
            break;
        }
    }

    if (idx < 0) {
        return;
    }

    clearTimeout( main_timeoutCode );
    main_timeoutCode = -1;

    var html = '<table cellpadding="0" cellspacing="0" border="0">';

    if (main_submenu_flat) {
        html += '<tr>';
    }

    var l = main_lines[idx];
    var currentlevel = l[main_MV_LEVEL];
    if (currentlevel == undefined)
        currentlevel = 0;

    if (main_submenu_flat) {
        if (l[main_MV_CHILDREN] < 1) {
            fod.style.display = 'none';
            main_menuClear(currentlevel);
        }
    } else if (clearmenu) {
        fod.style.display = 'none';
        main_menuClear(currentlevel);
    }

    if (l[main_MV_CHILDREN] < 1)
        return;

    var x = main_getRightX( obj, currentlevel, basediv );
    var y = main_getTopX( obj, currentlevel, basediv );
    var menu = fod.style;
    if (main_anchor_right) {
        menu.right = x + "px";
    } else {
        menu.left = x + "px";
    }
    menu.top = y + "px";
    menu.display = 'block';

    var i;
    for ( i = idx + 1; ; i++ ) {
        var l = main_lines[i];
        if (l == undefined || l[main_MV_LEVEL] < level)
            break;
        if (l[main_MV_LEVEL] == level)
            html += main_menu_link(i);
    }
    if (main_submenu_flat) {
        html += '</tr>';
    }
    html += '</table>';
    fod.innerHTML = html;
}

function main_getRightX( obj, level, baseobj )
{
    if ( main_browserType() == "other" )
        return;
    var pos = 0;
    var n = 0;
    var x = obj;
    while (x != baseobj) {
        x = x.offsetParent;
        n += x.offsetLeft;
    }

    if (main_submenu_flat) {
        pos = main_horiz_off;
    } else if (main_anchor_down != 1 || level > 0) {
        pos = n + obj.offsetWidth + 10;
    } else {
        pos = n + obj.offsetLeft;
    }
    return pos;
}

function main_getTopX( obj, level, baseobj )
{
    if ( main_browserType() == "other" )
        return;

    var pos = 0;
    var n = 0;
    var x = obj;
    while (x.offsetParent != baseobj) {
        x = x.offsetParent;
        n += x.offsetTop;
    }
    if (main_anchor_down && level == 0) {
        pos = n + obj.offsetParent.offsetHeight;
    } else {
        pos = n + obj.offsetTop;
    }
    return pos;
}

function main_mouseout( obj, level )
{
    if ( main_browserType() == "other" )
        return;

    if (level == undefined)
        level = 0;
    level++;

    main_timeoutCode = setTimeout( "main_menuClear();", main_cleartime_ms );
}

function main_menuClear(level)
{
    if ( main_browserType() == "other" )
        return;

    if (level == undefined)
        level = 0;
    level++;
    for ( var i = level; i <= main_last_level; i++) {
        var thisdiv = main_mydiv + i;
        var fod = document.getElementById( thisdiv );
        if (fod != undefined)
            fod.style.display = 'none';
    }
    clearTimeout( main_timeoutCode );
    main_timeoutCode = -1;
}

function main_menuBusy()
{
    if ( main_browserType() == "other" )
        return;

    clearTimeout( main_timeoutCode );
    main_timeoutCode = -1;
}

var main_clientType = "unknown";

function main_browserType()
{
    if ( main_clientType != "unknown"  )
        return main_clientType;

    main_clientType = "other";
    if (document.all) {
        if ( document.getElementById )
            main_clientType = "ie";
    } else if (document.layers) {
    } else if (document.getElementById) {
        main_clientType = "ns6";
    } else {
    }

    return main_clientType;
}

