﻿function setCookie(c_name, value, expiredays) {
    var exdate = new Date();
    exdate.setDate(exdate.getDate() + expiredays);
    document.cookie = c_name + "=" + escape(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString());
}

function getCookie(c_name) {
    if (document.cookie.length>0) {
        c_start = document.cookie.indexOf(c_name + "=");
        if (c_start != -1) {
            c_start = c_start + c_name.length + 1;
            c_end = document.cookie.indexOf(";", c_start);
            if (c_end == -1) c_end = document.cookie.length;
            return unescape(document.cookie.substring(c_start,c_end));
        }
    }
    return "";
}

function setTextArea_MaxLength() {
    var x = document.getElementsByTagName('textarea');
    var counter = document.createElement('div');
    for (var i=0;i<x.length;i++) {
        if (x[i].getAttribute('maxlength')) {
            var counterClone = counter.cloneNode(true);
            counterClone.relatedElement = x[i];
            counterClone.innerHTML = "(<span>" + x[i].getAttribute('maxlength') + "</span> Characters left)";
            x[i].parentNode.insertBefore(counterClone,x[i].nextSibling);
            x[i].relatedElement = counterClone.getElementsByTagName('span')[0];
            x[i].onkeyup = x[i].onkeydown = function() {
                if (this.value.length > this.getAttribute('maxlength')) 
                    this.value = this.value.substring(0, this.getAttribute('maxlength'));
                this.relatedElement.firstChild.nodeValue = this.getAttribute('maxlength') - this.value.length;
            };
            x[i].onkeyup();
        }
    }
}

function checkEmail(strEmail){
    var filter = /^.+@.+\..{2,3}$/;
    if (filter.test(strEmail))
        return true;
    else 
        return false
}

function trim(sString) {
    if (sString != null) {
        while (sString.substring(0,1) == ' ')
            sString = sString.substring(1, sString.length);
        while (sString.substring(sString.length-1, sString.length) == ' ')
            sString = sString.substring(0,sString.length-1);
        return sString;
    }
    else {
        return "";
    }
}

function CreateXmlHttpRequest() {
    var XmlHttp = null;
    try {
        XmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch(e) {
        try {
	        XmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
        } 
        catch(oc) {
	        XmlHttp = null;
        }
    }
    if(!XmlHttp && typeof XMLHttpRequest != "undefined") {
        XmlHttp = new XMLHttpRequest();
    }
    return XmlHttp;
}

function onlyPhoneNumbers(evt) {
    var charCode = evt.which;
    if (typeof(charCode) == "undefined") charCode = evt.keyCode;
    if ((charCode > 47 && charCode < 58) || (charCode == 32) || (charCode == 43) || (charCode == 44) || (charCode == 8) || (charCode == 0))
        return true;
    else
        return false;
}
 

function OnlyEmail(obj, evt) {
    var charCode = evt.which;
    if (typeof(charCode) == "undefined") charCode = evt.keyCode;
    if ((charCode == 0) || (charCode >= 48 && charCode <= 57) || (charCode >= 65 && charCode <= 90) || (charCode >= 97 && charCode <= 122) || (charCode == 45) || (charCode == 95) || (charCode == 8)) {
        return true; 
    }
    else if (charCode == 46) {
        if (obj.value.lastIndexOf(".") != (obj.value.length - 1))
            return true;
    }
    else if (charCode == 64) {
        if (obj.value.indexOf("@") == -1)
            return true;
    }
    return false;
}

function trim(sString) {
    if (sString != null) {
        while (sString.substring(0,1) == ' ')
            sString = sString.substring(1, sString.length);
        while (sString.substring(sString.length-1, sString.length) == ' ')
            sString = sString.substring(0,sString.length-1);
        return sString;
    }
    else {
        return "";
    }
}

function removeSpace(sString) {
    if (sString != null) {
        while (sString.indexOf(" ") != -1)
            sString = sString.replace(" ", "");
        return sString;
    }
    else {
        return "";
    }
}


function showWait(bFlag) {
    var divWait = document.getElementById("divWait");
    if (divWait == null) {
        divWait = document.createElement("div");
        divWait.id = "divWait";
        divWait.innerHTML = "<img src = \"/app_images/wait.gif\" />";
        divWait.style.position = "absolute";
        divWait.style.zIndex = 999;
        document.body.appendChild(divWait);
        divWait.style.width = divWait.childNodes[0].offsetWidth;
        divWait.style.height = divWait.childNodes[0].offsetHeight;
    }
    if (bFlag) {
        showDivCenter("divWait");
    }
    else {
        document.body.removeChild(divWait);
    }
}

function showDivCenter(divid, bFlag) { 
	var o = document.getElementById(divid); 
	var r = o.style;
	var Xwidth = r.width.replace("px", "");
	var Yheight = r.height.replace("px", "");
	
	var scrolledX, scrolledY; 
    if (self.pageYoffset) { 
		scrolledX = self.pageXoffset; 
		scrolledY = self.pageYoffset; 
	} else if (document.documentElement && document.documentElement.scrollTop) { 
		scrolledX = document.documentElement.scrollLeft; 
		scrolledY = document.documentElement.scrollTop; 
	} else if (document.body) { 
		scrolledX = document.body.scrollLeft; 
		scrolledY = document.body.scrollTop; 
	} 

	// Next, determine the coordinates of the center of browser's window 

	var centerX, centerY; 
	if (self.innerHeight) { 
		centerX = self.innerWidth; 
		centerY = self.innerHeight; 
	} else if (document.documentElement && document.documentElement.clientHeight) { 
		centerX = document.documentElement.clientWidth; 
		centerY = document.documentElement.clientHeight; 
	} else if (document.body) { 
		centerX = document.body.clientWidth; 
		centerY = document.body.clientHeight; 
	} 

	var leftoffset = scrolledX + (centerX - Xwidth) / 2; 
	var topoffset = scrolledY + (centerY - Yheight) / 2; 
		   
	r.position = 'absolute'; 
	r.top = topoffset + 'px'; 
	r.left = leftoffset + 'px'; 
	r.display = "block"; 
}
