﻿function isInt(str) {
    //var re = new RegExp("^[\d]+$");
    //return str.match(re);    
    if(parseInt(str)) {
        return true;
    } 
    return false;    
}

function isFloat(str) {
    if(parseFloat(str)) {
        return true;
    } 
    return false;    
}

function popup(url, width, height, hide, params) {
    if(!params) {
        params = 'channelmode=no,directories=no,toolbar=no,location=no,status=yes,menubar=no,scrollbars=no,resizable=no';
    }
    var popup = window.open(url,'popup','width=' + width + ',height=' + height + ',' + params);
	if(hide) {
	    popup.moveTo(-window.screen.availWidth, -window.screen.availHeight);	    
	    return;
	}
	popup.moveTo((window.screen.availWidth - width) / 2, (window.screen.availHeight - height) / 2);
	popup.focus();
}

function loading() {
    return '<div style="text-align: center; margin-top: 30px; color: #666"><img src="/App_Themes/Default/Images/loading.gif" alt="" /><br/>Loading...</div>';
}

function ajaxLoad(url, containerId, condition) {
	new Ajax(url, {
        method: 'get',
        onRequest: function() {
            try {
		        if(condition != 'a' && condition != 'h') {                
                    $(containerId).innerHTML = loading();            
                }
            } catch(e) {}
        },
        onComplete: function() {
            switch(condition) { 
                case 'h': // populating a hidden field
                    $(containerId).value = this.response.text;
		            break;
	            case 'a': // if condition is append
		            $(containerId).innerHTML += this.response.text;
		            break;
		        default:
		            $(containerId).innerHTML = this.response.text;
		            break;
	        }
        }
    }).request();		
}

function bookmarkMe(url, name) {
    try {
        window.external.AddFavorite(url,name);
    } 
    catch(e) { 
        var temp = "CTRL";
        if(isMac()) {
            temp = "CMD";
        }
        alert("Press " + temp + "-D to Bookmark this Page");
    } 
}

function isMac() {
    version = navigator.appVersion;
    if(version.toLowerCase().indexOf("mac") != -1) {
        return true;
    }    
    return false;
}

function isIE() {
	if(navigator.userAgent.indexOf("MSIE") != -1) {		
		return true; // if browser is IE
	}
	return false; // if browser is not IE
}

function isIE7() {
	if(navigator.userAgent.indexOf("MSIE 7") != -1) {		
		return true; // if browser is IE
	}
	return false; // if browser is not IE
}

function isIE6() {
	if(navigator.userAgent.indexOf("MSIE 6") != -1) {		
		return true; // if browser is IE
	}
	return false; // if browser is not IE
}

function isFF() {
    if(navigator.userAgent.indexOf("Firefox") != -1) {
        return true; // if browser is Firefox
	}
	return false; // if browser is not Firefox
}

function isSafari() {
    if(navigator.userAgent.indexOf("Safari") != -1) {
        return true; // if browser is Safari
	}
	return false; // if browser is not Safari
}

function isOpera() {
    if(navigator.userAgent.indexOf("Opera") != -1) {
        return true; // if browser is Opera
	}
	return false; // if browser is not Opera
}

function isEnterPress(e) {
    var key = e.keyCode || e.which;
    if(key == 13) {
        return true;
    }
    return false;
}

function urlEncode(str) {
    return str.replace(/\+/g, '%2B').replace(/\"/g,'%22').replace(/\'/g, '%27');
}

function trim(str) {
    return str.replace(/^\s+|\s+$/g,"");
}

function writeEmail(name, domain, ext) {
    var at = "@";
    var dot = ".";
    var email = name + at + domain + dot + ext;
    document.write('<a href="mailto:' + email + '" title="' + email + '">' + email + '<\/a>');
}

function writeEmailName(email, domain, ext, name) {
    var at = "@";
    var dot = ".";
    var email = email + at + domain + dot + ext;
    document.write('<a href="mailto:' + email + '" title="' + name + '">' + name + '<\/a>');
}

function capitalizeFirstLetter(str) {
    var newStr = "";
    str = str.split(" ");
    for(var i=0; i<str.length; i++) {
        newStr += str[i].substring(0,1).toUpperCase() + str[i].substring(1,str[i].length) + " ";
    }
    return newStr;
}

function toggleLrgImg(id,show) {
    var lrgId = id + "lrg";
    var src = document.getElementById(lrgId).src;
    if(src.indexOf(".jpg") == -1 && src.indexOf(".gif") == -1 && src.indexOf(".png") == -1 && src.indexOf(".bmp") == -1) {
        return;
    }
	
	var width = document.getElementById(id).width + 5 + "px";		
	document.getElementById(lrgId).style.display = "none";
	if(show) {
		document.getElementById(lrgId).style.display = "block";
		// if browser is not IE
		if(!isIE()) {
			document.getElementById(lrgId).style.marginLeft = width;
		}
	}
}

function lightup(id, opacity){            
    var speed = 5;
    var obj = document.getElementById(id);    
    if(!Browser()) {
        obj.style.MozOpacity = opacity/100;
    }
    else {
        obj.filters.alpha.opacity = opacity;
    }
    if(opacity < 100) {       
        setTimeout("lightup('" + id + "', " + (opacity + speed) + ")", 1);
    }
}

function isValidEmail(email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;   
   if(!reg.test(email)) {
      return false;
   }
   return true;
}

function moneyFilter(key, textbox, allowMinus) {			
	// if delete key is press, reset textbox
	if(key == 46) {
	    textbox.value = '';
        return;
	}
	
	var dFilterNum = textbox.value;
	var period = 0;
	if(dFilterNum.indexOf(".") != -1) {
        period++;
	}
	var minus = 0;
	if(dFilterNum.indexOf("-") != -1) {
        minus++;
	}
	if(key == 9) {
        return true;
    }
	else if(key == 8 && textbox.value.length != 0) {
		if(dFilterNum.indexOf(".") == (dFilterNum.length-1)) {
			period--;
		}
		dFilterNum = dFilterNum.substring(0,dFilterNum.length-1);		
	}
	if(dFilterNum.indexOf(".") != -1 && (dFilterNum.length - dFilterNum.indexOf(".")) == 3) {
		return false;
	}	
 	else if((key > 47 && key < 58) || (key > 95 && key < 106) || key == 110  || key == 190 || key == 109 || key == 189) {
		switch(key) {
            case 96:
                dFilterNum += 0;
                break;
            case 97:
                dFilterNum += 1;
                break;
            case 98:
                dFilterNum += 2;
                break;
            case 99:
                dFilterNum += 3;
                break;
            case 100:
                dFilterNum += 4;
                break;
            case 101:
                dFilterNum += 5;
                break;
            case 102:
                dFilterNum += 6;
                break;
            case 103:
                dFilterNum += 7;
                break;
            case 104:
                dFilterNum += 8;
                break;
            case 105:
                dFilterNum += 9;
                break;
            case 109:
            case 189:
                if(minus == 0 && allowMinus) {
                    if(dFilterNum.indexOf("$") != -1) {
	                    if(dFilterNum.length == 1) {
	                        dFilterNum += '-';
	                    }	                    
	                }    
	                else {
	                    if(dFilterNum.length == 0) {
	                        dFilterNum += '-';
	                    }
	                }                
                }
                break;
			case 110:
			case 190:
				if(period == 0) {
					dFilterNum += ".";
				}				
				break;
            default:
                dFilterNum += String.fromCharCode(key);
                break;
		}
	}    
    setTimeout(function() {
        textbox.value = dFilterNum;
    },1);
    return false;
}

function formatCurrency(num) {
    num = num.toString().replace(/\$|\,/g,'');
    if(isNaN(num)) {
        num = "0";
    }
    sign = (num == (num = Math.abs(num)));
    num = Math.floor(num * 100 + 0.50000000001);
    cents = num % 100;
    num = Math.floor(num / 100).toString();
    if(cents < 10) {
        cents = "0" + cents;
    }
    for(var i=0; i<Math.floor((num.length - (1 + i)) / 3); i++) {
        num = num.substring(0,num.length - (4 * i + 3)) + ',' + num.substring(num.length - (4 * i + 3));
    }
    return(((sign) ? '' : '-') + '$' + num + '.' + cents);
}

function formatPercentage(num) {
    num = num.toString().replace(/\$|\,/g,'');
    if(isNaN(num)) {
        num = "0";
    }    
    num *= 100;
    return num + "%";
}

function writeSwf(file,id,width,height,version,bgcolor,loop) {
    var html = 
        '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" ' +
        'codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=' + version + ',0,0,0" ' +
        'width="' + width + '" height="' + height + '" id="top" align="middle">' +
        '<param name="allowScriptAccess" value="sameDomain" />' +
        '<param name="movie" value="' + file + '" />' +
        '<param name="quality" value="high" />' +
        '<param name="wmode" value="transparent" />' +
		'<param name="scale" value="noscale" />' +
	    '<param name="loop" value="' + loop + '" />' +
        '<param name="bgcolor" value="' + bgcolor + '" />' +
        '<embed src="' + file + '" quality="high" wmode="transparent" bgcolor="' + bgcolor + '" ' +
        'width="' + width + '" height="' + height + '" name="top" align="middle" allowScriptAccess="sameDomain" ' +
        'type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />' +
        '</object>';
    document.getElementById(id).innerHTML = html;
}

// add text to field and position cursor at the end
function setCaretToEnd(el) {
    if(el.createTextRange) {
        var v = el.value;
        var r = el.createTextRange();
        r.moveStart('character', v.length);
        r.select();
    }
}
function insertAtEnd(el, txt) {
    el.value += txt;
    setCaretToEnd(el);
}

function swap(id) {
    id = id.replace("ddlRank","hidSwap");
    document.getElementById(id).value = true;
}

function checkMe(chk,id) {
    if(isNaN(id)) {
        id = '';
    }
    var ids = document.getElementById("ctl00_ContentPlaceHolder1_hidIds" + id).value;
    ids = ids.replace("|" + chk.value + "|","");
    ids = ids.replace(",,",",");
    if(ids.indexOf(",") == 0) {
        ids = ids.substring(1,ids.length);
    }
    if(ids.lastIndexOf(",") == 0) {
        ids = "";
    }
    if(chk.checked) {
        ids += "|" + chk.value + "|,";
    }
    document.getElementById("ctl00_ContentPlaceHolder1_hidIds").value = ids;
}

function checkEmAll(all,id) {
    if(isNaN(id)) {
        id = '';
    }
    var chk = document.getElementsByName("chk" + id);
    for(var i=0; i<chk.length; i++) {
        chk[i].checked = false;
        if(all.checked) {
            chk[i].checked = true;            
        }
        checkMe(chk[i]);
    }
}

function clickLink(link) {
    // *********************************
    // FF/NN accept programmed events,
    // but default action will be taken only
    // from hardvare device input:
    if (document.createEvent) { // FF model
        var customClick = document.createEvent('MouseEvents');
        customClick.initEvent('click',0,0);
        link.dispatchEvent(customClick);
        // The old good click() is removed from link methods:
        try {link.click();} catch(e){}
    }
    // *********************************
    // IE accepts programmed events,
    // but default action will be taken only
    // from hardvare device input (like FF/NN):
    else if (document.createEventObject) { // IE model
        var customClick = document.createEventObject();
        link.fireEvent('onclick', customClick);
        // The old good click() was simply forgotten
        // by the brave IE team and allows to bypass security:
        link.click(); // equals to a hardware click
    }
}

function goTo(url) {
    ajaxLoad(url,"content","");
}

try {
    window.addEvent('domready', function() {    
        // makes so when there is an error on a form the validation won't scroll the page to the top
        //window.scrollTo = function(){};
        
        
        // home page sponsors
        setTimeout(function() {
            try {
                $('logos').style.display = 'block';
                new gallery($('logos'));

            } catch(e) {}
            try {

                $('sponsors1').style.display = 'block';
                new gallery($('sponsors1'));
                $('sponsors1').style.display = 'block';
                new gallery($('sponsors2'));
            } catch(e) {}
        },0);        
        
        // add the display comments to input, select, checkbox, radio, and textarea fields on focus and blur events
        $$("input").each(function(el) {	
		    el.addEvent('focus', function(e) {
		        showInfo(this.id);
		    });
        });   
        $$("select").each(function(el) {	
		    el.addEvent('focus', function(e) {
		        showInfo(this.id);
		    });
        }); 
        $$("textarea").each(function(el) {	
		    el.addEvent('focus', function(e) {
		        showInfo(this.id);
		    });
        });        
        $$("input").each(function(el) {	
		    el.addEvent('blur', function(e) {
		        hideInfo(this.id);
		        showEmailError(this.id,this.value);
		    });
        });
        $$("select").each(function(el) {	
		    el.addEvent('blur', function(e) {
		        hideInfo(this.id);
		    });
        });
        $$("textarea").each(function(el) {	
		    el.addEvent('blur', function(e) {
		        hideInfo(this.id);
		    });
        });
    });
} catch(e) {}

function showInfo(id) {
    try {
        try {
            if(document.getElementById(id + "_alert").style.display == "none") {
                document.getElementById(id + "_info").style.display = "block";
            }            
        } 
        catch(e) {
            document.getElementById(id + "_info").style.display = "block";            
        }
        if(id.indexOf("txtFax") != -1) {
            document.getElementById("ctl00_ContentPlaceHolder1_txtEmail_alert").style.display = "none";
        }
    } catch(e) {}
}

function hideInfo(id) {
    try {
        document.getElementById(id + "_info").style.display = "none";        
    } catch(e) {}
}

function isValidEmail(str) {
    if(str == "") {
        return true;        
    }
    var re = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[\\w]$";
    var regex = new RegExp(re);
    return regex.test(str);
}

function showEmailError(id, str) {
    try {
        if(!isValidEmail(str)) {
            document.getElementById(id + "_alert").style.display = "block";
        }
        else {
            document.getElementById(id + "_alert").style.display = "none";
        }
    } catch(e) {}
}

function checkMaxLength(el, max) {
    if(el.value.length > max) {
        el.value = el.value.substring(0, max);
    }
    document.getElementById('charsRemaining').innerHTML = max - el.value.length;
}

var state = 'Collapse';

function loadCtl(ctl) {
    var slide = new Fx.Slide(ctl + '-content');
    var el = $(ctl + '-toggle');
    
    el.addEvent('click', function(e){
        e = new Event(e);
        slide.toggle();
        if(ctl == 'home') {
            var visibility = 'hidden';
            if($(ctl + '-content').getElementsByTagName('iframe')[0].style.visibility == 'hidden') {
                visibility = 'visible';
            }
            setTimeout(function() {
                $(ctl + '-content').getElementsByTagName('iframe')[0].style.visibility = visibility;                
            },300);
        }
        e.stop();	   
                
        if(el.title == 'Collapse') {
            el.title = 'Expand';
            el.innerHTML = '<img src="/App_Themes/Default/Images/rollDown.gif" alt="" width="15" height="15" />';
            el.className = el.className.replace('btnCollapse','btnExpand');
        }     
        else {
            el.title = 'Collapse';
            el.innerHTML = '<img src="/App_Themes/Default/Images/rollUp.gif" alt="" width="15" height="15" />';
            el.className = el.className.replace('btnExpand','btnCollapse');
        }
    });
}

function isNew(txt,id,viewed) {    
    id += 2;
    if(id < 10) {
        id = '0' + id;
    }
    var el = document.getElementById(txt + id + '_Button2');
    if(!viewed) {        
        el.parentNode.parentNode.className = 'new';
    }
    else {
        el.parentNode.parentNode.className = parseInt(id) % 2 == 0 ? '' : 'altRow';
    }
}

function activateLead(chk,id,type) {
    if(!confirm('Are you sure?')) {
        chk.checked = chk.checked ? false : true;
        return;
    }
    var viewed = false;
    if(chk.checked) {
        viewed = true;
    }    

    var txt = 'ctl00_ContentPlaceHolder1_gdv' + type + 'ToAgentList_ctl';
    
    var url = 'ActivateLead.aspx?id=' + chk.value + '&viewed=' + viewed + '&type=' + type;
    new Ajax(url, {
        method: 'get',
        onComplete: function() {
            isNew(txt,id,viewed);
        }
    }).request();
}

function regectLead(chk,id,type) {
    if(!confirm('Are you sure?')) {
        chk.checked = false;
        return;
    }
    
    id += 2;
    if(id < 10) {
        id = '0' + id;
    }
    
    var txt = 'ctl00_ContentPlaceHolder1_gdv' + type + 'ToAgentList_ctl';
    var el = document.getElementById(txt + id + '_Button2');    
    
    var url = 'RejectLead.aspx?id=' + chk.value + '&type=' + type;
    new Ajax(url, {
        method: 'get',
        onComplete: function() {
            el.parentNode.parentNode.parentNode.removeChild(el.parentNode.parentNode);    
        }
    }).request();
}

function changeLeadAgent(ddl, type) {
    var id = ddl.id.replace('ctl00_ContentPlaceHolder1_gdv' + type + 'List_ctl', '');
    id = id.replace('_ddlAgentId', '');
    var agentId = document.getElementById('hidAgentId' + id);
    if(!confirm('Are you sure?')) {
        for(var i=0; i<ddl.length; i++) {
            if(ddl[i].value == agentId.value) {
                ddl[i].selected = true;
                break;
            }
        }
        return;
    }
    var url = 'ChangeLeadToAgent.aspx?id=' + document.getElementById('hid' + type + 'Id' + id).value + '&userId=' + ddl.value + '&type=' + type;
    document.getElementById('iframe').src = url;
    agentId.value = ddl.value;
}

function deleteHomeImage(view) {
    if(!confirm('Are you sure?')) {
        return;
    }
    var url = 'DeleteImage.aspx?view=' + view;
    new Ajax(url, {
        method: 'get',
        onComplete: function() {
            $('noimg' + view).style.display = 'block';
            $('hasimg' + view).style.display = 'none';
            $('hasimg' + view).rel = '';
            $('delete' + view).style.visibility = 'hidden';
        }
    }).request();
}

function showPasswordBox(el, real) {
    if(real) {
        if(el.value == 'Password') { 
            $(el.id.replace('Fake','')).style.display = 'inline'; 
            $(el.id.replace('Fake','')).focus(); 
            el.style.display = 'none' 
        }
    }
    else {
        if(el.value == '') { 
            $(el.id + 'Fake').style.display = 'inline'; 
            el.style.display = 'none' 
        }
    }
}

function scrollBottom() {
    var x, y;
    // Firefox         
    if(window.innerHeight && window.scrollMaxY) { 
        x = window.innerWidth + window.scrollMaxX;
        y = window.innerHeight + window.scrollMaxY;                
    } 
    // all but Explorer Mac         
    else if(document.body.scrollHeight > document.body.offsetHeight) { 
        x = document.body.scrollWidth;
        y = document.body.scrollHeight;         
    } 
    // works in Explorer 6 Strict, Mozilla (not FF) and Safari         
    else { 
        x = document.body.offsetWidth;       
        y = document.body.offsetHeight;         
    }
    window.addEvent('domready', function() {
        window.scroll(x,y);
    });
}

function highlight(step) {
    var speed = 3000;
    var el = null;
    
    switch(step) {
        case 0:
            el = $('btnFlashQuote');
            break;
        case 1:
            el = $('btnFlashAgent');
            break;
        case 2:
            el = $('btnFlashClaim');
            break;
        case 4:
            el = $('btnFlashNumbers');
            break;
        case 5:
            el = $('btnFlashWeather');
            break;
        case 6:
            el = $('btnFlashHelp');
            break;
    }
    
    if(el) {
        var play = setInterval(function() {
            if(el.style.visibility == 'hidden') {
                el.style.visibility = 'visible';
            }
            else {
                el.style.visibility = 'hidden';                
            }
        },250);
        setTimeout(function() {            
            clearInterval(play);
            el.style.visibility = 'hidden';
        },speed);    
    }
}

function doNothing() {}

function submitMe(el) {
    var input = el.parentNode.getElementsByTagName('input');
    for(var i=0; i<input.length; i++) {
        if(input[i].type == 'submit') {
            input[i].click();
        }
    }
}

// admin event creation
function showLocation(chk) {
    var tr = document.getElementsByTagName('tr');
    for(var i=0; i<tr.length; i++) {
        if(tr[i].className == 'location') {
            tr[i].style.display = 'none'; 
            if(chk.checked) {
                tr[i].style.display = ''; 
            }
        }
    }
}

var dateCount = 0;
var dateTitles, dateFields, dateQty;

function addDate(date, startTime, endTime) {
    dateTitles = document.getElementById('dateTitles');
    dateFields = document.getElementById('dateFields');
    dateQty = document.getElementById('ctl00_ContentPlaceHolder1_hidDateQty');
    
    document.getElementById('moreDates').style.display = '';    
    document.getElementById('removeDate').style.display = '';    
    dateTitles.innerHTML += "<div>Date:</div>";    
    var temp = "<label style='width: 320px; display: block'>";
    temp += "<input type='text' name='txtDate" + dateCount + "' class='dateField' value='" + date + "' maxlength='10' onkeydown='javascript:return dFilter (event.keyCode, this, \"##/##/####\")' onblur='if(this.value == \"//\" || this.value.length != 10) this.value=\"\"' /> ";
    temp += "<span style='cursor: pointer' onclick='displayDatePicker(\"txtDate" + dateCount + "\",this)'><img src='/App_Themes/Admin/Images/Calendar.png' alt='Select Date' width='16' height='16' /></span> ";
    temp += isIE() ? "&nbsp;&nbsp;" : "";
    temp += "From: ";
    temp += "<input type='text' id='txtStartTime" + dateCount + "' name='txtStartTime" + dateCount + "' value='" + startTime + "' class='timeField' readonly='readonly' onfocus='getTime(this.id)' /> ";
    //temp += "<div id='div_txtStartTime" + dateCount + "' style='display: none'></div> ";
    temp += "<span style='cursor: pointer' onclick='getTime(\"txtStartTime" + dateCount + "\")'><img src='/App_Themes/Admin/Images/clock.png' alt='Select Time' width='16' height='16' /></span> ";
    temp += "&nbsp;To: ";
    temp += "<input type='text' id='txtEndTime" + dateCount + "' name='txtEndTime" + dateCount + "' value='" + endTime + "' class='timeField' readonly='readonly' onfocus='getTime(this.id)' /> ";
    //temp += "<div id='div_txtEndTime" + dateCount + "' style='display: none'></div> ";
    temp += "<span style='cursor: pointer' onclick='getTime(\"txtEndTime" + dateCount + "\")'><img src='/App_Themes/Admin/Images/clock.png' alt='Select Time' width='16' height='16' /></span> ";
    temp += "</label>";
    dateFields.innerHTML += temp;
    
    dateCount++;
    
    dateQty.value = dateCount;
}

function removeDate() {
    var div = dateTitles.getElementsByTagName('div');
    dateTitles.removeChild(div[div.length-1]);
    div = dateFields.getElementsByTagName('label');
    dateFields.removeChild(div[div.length-1]);
    
    dateCount--;
    
    dateQty.value = dateCount;    
    
    if(dateCount == 0) {
        document.getElementById('moreDates').style.display = 'none';    
        document.getElementById('removeDate').style.display = 'none';    
    }
}

// admin search members
function ajaxload(url, containerid, condition) {
	try { // Browser object detection
		xmlhttp = window.XMLHttpRequest?new XMLHttpRequest():
		new ActiveXObject("Microsoft.XMLHTTP");		
	}
	catch (e){alert(e.description)} // browser doesn't support ajax. handle however you want
	xmlhttp.onreadystatechange = function(){statuschanged(containerid,condition)}; // every time ready status changes, statuschanged() function executes
	xmlhttp.open("GET", url, true); // Usage: open(HTTP method, url, and asynchronous = true or false)
	xmlhttp.send(null); // send the request.
}

function statuschanged(containerid, condition){
	if((xmlhttp.readyState == 4) && (xmlhttp.status == 200)) { // readyState codes: 0=Uninitialised 1=Loading 2=Loaded 3=Interactive 4=Completed; status code: 200=OK		
		if(xmlhttp.responseText != "") {
			if(condition == "h") { // populating a hidden field
				document.getElementById(containerid).value = xmlhttp.responseText; // xmlhttp.responseText object contains the text of 'url'		
			}
			else if(condition == "a") { // if condition is append
				document.getElementById(containerid).innerHTML += xmlhttp.responseText; // xmlhttp.responseText object contains the text of 'url'		
			}
			else {							
				document.getElementById(containerid).innerHTML = xmlhttp.responseText; // xmlhttp.responseText object contains the text of 'url'		
			}			
		}
	}
	else { // else, readyState is not yet Completed and status is not yet OK, so here we display loading text
		if(condition != 'a' && condition != 'h') {
		    document.getElementById(containerid).innerHTML = loading();
		}
	}
}

function searchMembers(rdo) {
    var url = 'MemberSearch.aspx?keyword=' + escape(document.getElementById('keyword').value);
    if(rdo) {
        url += '&rdo=true';
    }
    ajaxLoad(url,'memberSearchResults');
}

var memberIds;

function selectMember(chk,ctl) {
    memberIds = document.getElementById('ctl00_ContentPlaceHolder1_' + ctl + 'hidMemberIds');        
    
    if(chk.checked) {
        found = true;
        // check that the user is not already on the list
        try {
            var temp = document.getElementById('member' + chk.value).innerHTML;
        } 
        catch(e) {
            found = false;
        }
        if(found) {
            return; // if it reached this point means the above line didn't break and the user was already in the list                        
        }
            
        var url = 'Member.aspx?id=' + chk.value;
        var type = 'a';
        if(chk.type == 'radio') {
            type = '';
            memberIds.value = '|' + chk.value + '|';
        }
        else {
            memberIds.value += '|' + chk.value + '|';        
        }
        ajaxLoad(url,'selectedMembers',type);
    }
    else {
        removeMember(chk.value);
    }
}

function removeMember(id,ctl) {
    memberIds = document.getElementById('ctl00_ContentPlaceHolder1_' + ctl + 'hidMemberIds');
    
    try {
        var el = document.getElementById('member' + id);
        el.parentNode.removeChild(el);
        
        try {
            document.getElementById('chk' + id).checked = false;
        } catch(e) {}

        memberIds.value = memberIds.value.replace('|' + id + '|','');
    } catch(e) {}
}

function setMainMember(chk,ctl) {    
    var mainMemberIds = document.getElementById('ctl00_ContentPlaceHolder1_' + ctl + 'hidMainMemberId');    
    if(chk.checked) {
        if (mainMemberIds.value.length > 0 ){
            alert('Cannot select more than one Chairman. Please unselect the current Chairman to add new one.');
            chk.checked = false;
            return false;
        }
        mainMemberIds.value += '|' + chk.value + '|';            
    }
    else {
        mainMemberIds.value = mainMemberIds.value.replace('|' + chk.value + '|','');        
    }
}

function setMemberAsCoach(chk,ctl) {    
    var mainMemberIds = document.getElementById('ctl00_ContentPlaceHolder1_' + ctl + 'hidCoachMemberId');    
    //alert(mainMemberIds.value);
    if(chk.checked) {

        mainMemberIds.value += '|' + chk.value + '|';
    }
    else {
        mainMemberIds.value = mainMemberIds.value.replace('|' + chk.value + '|',''); 
    }
}
// end admin search members

// admin nav
function bredcrumb(boxId, linkId) {
    var div = document.getElementById('nav' + boxId);        
    var a = div.getElementsByTagName('a');
    var span = div.getElementsByTagName('span');
    var hide = false;
    for(var i=0; i<a.length; i++) {
        if(hide) {
            a[i].style.display = 'none';
            span[i].style.display = 'none';
        }
        if(a[i].id == linkId + boxId) {
            hide = true;
            a[i].style.display = 'none';
        }
    }
    document.getElementById(linkId + boxId + 's').style.display = 'inline';
}
// end admin nav

function showPayment(type) {
    $$('.cc').each(function(el) {	
        el.style.display = 'none';
    });
    $$('.ck').each(function(el) {	
        el.style.display = 'none';
    });
    /*$$('.' + (type == 1 ? 'cc' : 'ck')).each(function(el) {	
        el.style.display = 'block';
    });*/    
    switch(type) {
        case '1':
            $$('.cc').each(function(el) {	
                el.style.display = 'block';
            });
            break;
        case '2':
            $$('.ck').each(function(el) {	
                el.style.display = 'block';
            });
            break;
    }
}

function calculateEventTotal(el) {
    var total = parseFloat($('ctl00_ContentPlaceHolder1_hidPrice').value);
    var input = $('eventForm').getElementsByTagName('input');
    for(var i=0; i<input.length; i++) {
        if(input[i].type == 'radio' || input[i].type == 'checkbox') {
            if(input[i].checked) {
                try {
                    total += parseFloat($('p' + input[i].value).value);
                } 
                catch(e) {}
            }
        }
    }
    $('ctl00_ContentPlaceHolder1_hidTotal').value = total;
    if(total == 0) {
        $('total').innerHTML = 'Free';
    }
    else {
        $('total').innerHTML = formatCurrency(total);
    }
}

function repopulateAnswers(name, value) {
    var el = document.getElementsByName(name)[0];
    switch(el.type) {
        case 'radio':
        case 'checkbox':
            var answers = ',' + value + ',';
            var input = document.getElementsByName(name);
            for(var i=0; i<input.length; i++) {
                if(answers.indexOf(',' + input[i].value + ',') != -1) {
                    input[i].checked = true;                    
                    calculateEventTotal($('chk' + value));
                }
            }
            break;
        default:
            el.value = value;
            break;
    }
}

var userId = 0;

function changeUser(id, firstName, lastName, email, password, accessIds) {
    userId = id;
    $('ctl00_ContentPlaceHolder1_Member_Users_hidUserId').value = id;
    $('ctl00_ContentPlaceHolder1_Member_Users_txtFirstName').value = firstName;
    $('ctl00_ContentPlaceHolder1_Member_Users_txtLastName').value = lastName;
    $('ctl00_ContentPlaceHolder1_Member_Users_txtEmail').value = email;
    $('ctl00_ContentPlaceHolder1_Member_Users_txtPassword').value = password;
    
    var accessId = accessIds.split(',');
    
    var el = $('accessIds').getElementsByTagName('input');
    for(var i=0; i<el.length; i++) {
        var chk = $('ctl00_ContentPlaceHolder1_Member_Users_cblAccess_' + el[i].id.replace('hidAccess',''));
        chk.checked = false;
        for(var j=0; j<accessId.length; j++) {            
            if(el[i].value == accessId[j]) {
                chk.checked = true;
            }
        }
    }
}

function deleteUser(id, el) {
    if(!confirm('Are you sure')) {
        return;
    }
    
    var url = 'DeleteUser.aspx?id=' + id;
    new Ajax(url, {
        method: 'get',
        onComplete: function() {
            el.parentNode.parentNode.removeChild(el.parentNode);
            if(userId == id) {
                changeUser(0,'','','','','');
            }
        }
    }).request();		
}

function approveEventSignUp(chk, id) {
    var url = 'ApproveEventSignUp.aspx?id=' + id + '&approved=' + chk.checked;
    new Ajax(url, { method: 'get' }).request();
}

function acitivateMe(type, chk) {
    if(!confirm('Are you sure')) {
        chk.checked = !chk.checked;
        return;
    }
    
    var url = 'ActivateMe.aspx?id=' + chk.value + '&active=' + chk.checked + '&type=' + type;
    new Ajax(url, { method: 'get' }).request();
}

function approveMe(type, chk) {
    if(!confirm('Are you sure')) {
        chk.checked = !chk.checked;
        return;
    }
    
    var url = 'ApproveMe.aspx?id=' + chk.value + '&approve=' + chk.checked + '&type=' + type;
    new Ajax(url, { 
        method: 'get',
        onComplete: function() {
            chk.parentNode.parentNode.parentNode.removeChild(chk.parentNode.parentNode);
        }
    }).request();
}

function mainEvent(chk) {
    if(!confirm('Are you sure')) {
        chk.checked = !chk.checked;
        return;
    }
    
    var url = 'MainEvent.aspx?id=' + chk.value + '&main=' + chk.checked;
    new Ajax(url, { method: 'get' }).request();
}

function mainNews(chk) {
    if(!confirm('Are you sure')) {
        chk.checked = !chk.checked;
        return;
    }
    
    var url = 'MainNews.aspx?id=' + chk.value + '&main=' + chk.checked;
    new Ajax(url, { method: 'get' }).request();
}

function closeEvent(chk) {
    if(!confirm('Are you sure')) {
        chk.checked = !chk.checked;
        return;
    }
    
    var url = 'CloseEvent.aspx?id=' + chk.value + '&close=' + chk.checked;
    new Ajax(url, { method: 'get' }).request();
}

var maxCategories = 0;
var countCategories = 0;
function checkMaxCategories(chk) {    
    if(chk.checked) {
        countCategories++;
    }
    else {
        countCategories--;
    }
    if(countCategories > maxCategories) {
        alert('You have selected the maximum of ' + maxCategories + ' categories!');
        chk.checked = false;
        countCategories--;
    }
}

function approveMember(chk) {
    if(!confirm('Are you sure')) {
        chk.checked = !chk.checked;
        return;
    }
    
    var url = 'ApproveMember.aspx?id=' + chk.value;
    new Ajax(url, { 
        method: 'get',
        onComplete: function() {
            chk.parentNode.parentNode.parentNode.removeChild(chk.parentNode.parentNode);
        }
    }).request();
}

var questionCount = 0;
var answerCount = new Array();
answerCount[0] = 0;
function setAnswerType(type, questionNumber) {    
    var div = document.getElementById('divAnswers' + questionNumber);
    var lnk = document.getElementById('lnkAddAnswer' + questionNumber);

    switch(type) {
        case 'checkbox':
        case 'radio':
            if(div.innerHTML == '') {
                addAnswer(questionNumber);
                div.style.display = '';
                lnk.style.display = '';
            }
            return;
            break;        
    }        
    
    div.innerHTML = '';
    div.style.display = 'none';
    lnk.style.display = 'none';
    answerCount[questionNumber] = document.getElementById('hidAnswerQty' + questionNumber).value = 0;    
}

function addAnswer(questionNumber) {
    var div = document.createElement('div');    
    var input = document.createElement('input');
    input.type = 'text';
    input.name = input.id = 'txtAnswer' + questionNumber + '_' + answerCount[questionNumber];    
    div.appendChild(input);
    var span = document.createElement('span');
    span.innerHTML = '&nbsp;Price:&nbsp;';
    div.appendChild(span);
    input = document.createElement('input');
    input.type = 'text';
    input.name = input.id = 'txtAnswerPrice' + questionNumber + '_' + answerCount[questionNumber];
    input.className = 'txtPrice';
    input.onfocus = function() { if(this.value == '') insertAtEnd(this,'$') };
    input.onblur = function() { if(this.value == '$') this.value = '' };
    input.onkeydown = function() { return moneyFilter(event.keyCode, this, true) };
    div.appendChild(input);
    var a = document.createElement('a');    
    a.innerHTML = 'Delete This Answer';
    a.href = 'javascript:doNothing()';
    a.onclick = function() { removeAnswer(this,questionNumber) };
    div.appendChild(a);
    div.appendChild(document.createElement('br'));
    var divAnswers = document.getElementById('divAnswers' + questionNumber);
    divAnswers.appendChild(div);
    
    answerCount[questionNumber]++;    
    document.getElementById('hidAnswerQty' + questionNumber).value = answerCount[questionNumber];
}

function removeAnswer(el, questionNumber) {
    el.parentNode.parentNode.removeChild(el.parentNode);
    answerCount[questionNumber]--;    
    document.getElementById('hidAnswerQty' + questionNumber).value = answerCount[questionNumber];
}

function addQuestion() {
    questionCount++;
    answerCount[questionCount] = 0;

    var tbl = document.getElementById('tbl');
    var trs = tbl.getElementsByTagName('tr');
    
    var tr = document.createElement('tr');
    tr.className = 'question' + questionCount;
    var td = document.createElement('td');
    td.className = 'requiredField';
    td.innerHTML = '&nbsp;';
    tr.appendChild(td);
    td = document.createElement('td');
    td.innerHTML = 'Question:';
    tr.appendChild(td);
    td = document.createElement('td');
    var input = document.createElement('input');
    input.type = 'text';
    input.name = input.id = 'txtQuestion' + questionCount;
    td.appendChild(input);    
    input = document.createElement('input');
    input.type = 'checkbox';
    input.name = input.id = 'chkRequired' + questionCount;
    input.value = true;
    input.style.width = 'auto';
    td.appendChild(input);
    var lbl = document.createElement('label');
    lbl.innerHTML = 'Required';            
    td.appendChild(lbl);    
    var a = document.createElement('a');
    a.href = 'javascript:removeQuestion(' + questionCount + ')';    
    a.title = a.innerHTML = 'Remove This Question';
    td.appendChild(a);
    tr.appendChild(td);
    tbl.insertBefore(tr,trs[trs.length-1]);
    
    tr = document.createElement('tr');
    tr.className = 'question' + questionCount;
    var td = document.createElement('td');
    td.className = 'requiredField';
    td.innerHTML = '&nbsp;';
    tr.appendChild(td);
    td = document.createElement('td');
    td.innerHTML = 'AnswerType:';
    tr.appendChild(td);
    td = document.createElement('td');
    td.appendChild(ddlAnswerType(questionCount));
    
    a = document.createElement('a');
    a.id = 'lnkAddAnswer' + questionCount;
    a.style.display = 'none';
    a.href = 'javascript:addAnswer(' + questionCount + ')';
    a.title = a.innerHTML = 'Add Another Answer';
    td.appendChild(a);
    var input = document.createElement('input');
    input.type = 'hidden';
    input.id = input.name = 'hidAnswerQty' + questionCount;
    input.value = 0;
    td.appendChild(input);
    var div = document.createElement('div');
    div.id = 'divAnswers' + questionCount;
    td.appendChild(div);

    tr.appendChild(td);
    tbl.insertBefore(tr,trs[trs.length-1]);
    
    document.getElementById('hidQuestionQty').value = questionCount;
}

function ddlAnswerType(questionNumber) {
    var value = new Array('text','checkbox','radio','textarea');
    var text = new Array('Text Field','Multiple Answers','Single Answer','Text Area');
    var select = document.createElement('select');
    select.name = select.id = "ddlAnswerType" + questionNumber;
    select.onchange = function() { setAnswerType(this.value,questionNumber) };
    //select.options[select.options.length] = new Option('Select',''); 
    for(var i=0; i<value.length; i++) {
        select.options[select.options.length] = new Option(text[i],value[i]); 
    }    
    return select;
}

function removeQuestion(questionNumber) {
    var tr = document.getElementsByTagName('tr');
    for(var i=0; i<tr.length; i++) {
        if(tr[i].className == 'question' + questionNumber) {
            tr[i].parentNode.removeChild(tr[i+1]);
            tr[i].parentNode.removeChild(tr[i]);
        }
    }
        
    questionCount--;    
    
    document.getElementById('hidQuestionQty').value = questionCount;    
}

function selectAnswerType(questionNumber, value) {
    var ddl = $('ddlAnswerType' + questionNumber);
    for(var i=0; i<ddl.length; i++) {
        if(ddl[i].value == value) {
            ddl[i].selected = true;
        }
    }
}

function setDefaultAccess(id, userRoleId) {    
    var url = 'DefaultAccess.aspx?id=' + id + '&userRoleId=' + userRoleId;
    new Ajax(url, {method: 'get'}).request();
}

function changePrice(id) {

   
    var total = $('ctl00_ContentPlaceHolder1_hidPrice').value;
    
    $('ctl00_ContentPlaceHolder1_hidTotal').value = total;
    $('total').innerHTML = formatCurrency(total);
    if($('ctl00_ContentPlaceHolder1_chkLuncheons').checked) {
        addLuncheons($('ctl00_ContentPlaceHolder1_chkLuncheons'));
    }
    var rdo = $('ctl00_ContentPlaceHolder1_rblVoluntary').getElementsByTagName('input');
    for(var i=0; i<rdo.length; i++) {
        if(rdo[i].checked) {
            changeVoluntary(rdo[i]);
            $('oldOther').value = 0;
            addOther($('ctl00_ContentPlaceHolder1_txtVoluntary').value);
        }
    }
}

function addLuncheons(chk) {    

    var total = parseFloat($('ctl00_ContentPlaceHolder1_hidTotal').value);
    
    var price = parseFloat($('ctl00_ContentPlaceHolder1_hidLuncheons').value);
    if(chk.checked) {
        total += price;
    }
    else {
        total -= price;
    }    
    $('ctl00_ContentPlaceHolder1_hidTotal').value = total;
    $('total').innerHTML = formatCurrency(total);
}

function changeVoluntary(rdo) {

    $('ctl00_ContentPlaceHolder1_txtVoluntary').style.display = 'none';
    var total = parseFloat($('ctl00_ContentPlaceHolder1_hidPrice').value);
    
    if($('ctl00_ContentPlaceHolder1_chkLuncheons').checked) {
        total += parseFloat($('ctl00_ContentPlaceHolder1_hidLuncheons').value);
    }
    
    if(rdo.value == 'Other') {
        $('ctl00_ContentPlaceHolder1_txtVoluntary').style.display = 'inline';
        $('ctl00_ContentPlaceHolder1_hidTotal').value = total;
        $('total').innerHTML = formatCurrency(total);
        return;
    }   
    
    $('ctl00_ContentPlaceHolder1_txtVoluntary').value = $('oldOther').value = ''; 
    total += parseFloat(rdo.value);
    $('ctl00_ContentPlaceHolder1_hidTotal').value = total;
    $('total').innerHTML = formatCurrency(total);
}

function addOther(other) {
    var oldOther = parseFloat($('oldOther').value);
    if(!isFloat(oldOther)) {
        oldOther = 0;
    }    
    var total = parseFloat($('ctl00_ContentPlaceHolder1_hidTotal').value) - oldOther;
    other = other.replace('$','').replace(',','');
    if(!isFloat(other)) {
        other = 0;
    }
    total += parseFloat(other);
    $('oldOther').value = other;
    $('ctl00_ContentPlaceHolder1_hidTotal').value = total;
    $('total').innerHTML = formatCurrency(total);
}

function approveRenewal(id) {
    if(confirm('Are you sure?')) {
        var url = 'ApproveRenewal.aspx?id=' + id;
        new Ajax(url, { 
            method: 'get',
            onComplete: function() {
                $('lnk' + id).style.display = 'none';
                $('lbl' + id).style.display = 'inline';
                $('date' + id).innerHTML = this.response.text;
            }
        }).request();        
    }
}

function generateReviewInvoice() {

    var grandTotal = $('ctl00_ContentPlaceHolder1_hidTotal').value;
    var lunchPayment = $('ctl00_ContentPlaceHolder1_chkLuncheons').checked;
    
    var finalString = "";
    var cceTotal = 0;    
    
    if ($('ctl00_ContentPlaceHolder1_rblVoluntary_0').checked)
    {
        cceTotal = 25;
    }
    
    if ($('ctl00_ContentPlaceHolder1_rblVoluntary_1').checked)
    {
        cceTotal = $('ctl00_ContentPlaceHolder1_txtVoluntary').value.replace('$','');
    }    
    
    var toURL = "/UpdateSystem/PreviewInvoice.aspx?id=" + $("ctl00_ContentPlaceHolder1_hdnEncodedId").value + "&p=1&g=" + escape(grandTotal) +
        "&l=" + escape(lunchPayment) + 
        "&cceTotal=" + escape(cceTotal);

    var popup = window.open(toURL);        
  

}