var feecount = 0;

function getPlatinum(){
	document.getElementById('package').value = 'platinum';
	this.start.submit();
	return true;
}

function enUpgrade(){
	toggleDisabled(document.getElementById("upgradediv"));
	toggleButton(document.getElementById("upgradebtn"));
	
	if(!document.getElementById("upgradediv").getElementsByTagName("input")[0].disabled){
		window.scrollTo(0,1224);
	}
	return false;
}

function disableSpecialty(){
	//toggleDisabledSpecialty(document.getElementById("tbl_specialty_room"));
	var tbl = document.getElementById("tbl_specialty_room");
	
	for(var z=0; z<tbl.childNodes.length;z++){
		if(tbl.childNodes[z].nodeName=="TBODY"){
			var tblnodes = tbl.childNodes[z].childNodes;
		}
	}

	for(var x = 0;x<tblnodes.length;x++){

		if(tblnodes[x].nodeName=="TR"){
			var tblinnernodes = tblnodes[x].childNodes;
			for(var xi=0;xi<tblinnernodes.length;xi++){
				if(tblinnernodes[xi].nodeName=="TD"){
					var tblinner_innernodes = tblinnernodes[xi].childNodes;
					for(var xii=0;xii<tblinner_innernodes.length;xii++){
						if(tblinner_innernodes[xii].nodeName=="INPUT"){
							if(tblinner_innernodes[xii].id!="specialtyNA"){
								tblinner_innernodes[xii].disabled = tblinner_innernodes[xii].disabled ? false : true;

								if (tblinner_innernodes[xii].type=="text"){
									tblinner_innernodes[xii].value="";
								}else if (tblinner_innernodes[xii].type=="checkbox"){
									if (tblinner_innernodes[xii].checked)
										tblinner_innernodes[xii].checked = false;
								}								
							}
						}
					}
				}
			}			
		}
	}
		
	if (document.getElementById("addmoreSpecialty").style.display=="none")
		document.getElementById("addmoreSpecialty").style.display="block";
	else
		document.getElementById("addmoreSpecialty").style.display = "none";
			
	return false;
}

/* added 03.11.09 */
function toggleDisabledSpecialty(el) {
	try {

		if (el!="specialtyNA"){
			
			el.disabled = el.disabled ? false : true;
			
			if (el.type=="text"){
				el.value="";
			}else if (el.type=="checkbox"){
				if (el.checked)
					el.checked = false;
			}
		}
	
	}catch(E){}
	
	if (el.childNodes && el.childNodes.length > 0){
		for (var x = 0; x < el.childNodes.length; x++){

			var el2 = el.childNodes[x].nodeValue;
			//alert(el2);
			//toggleDisabledSpecialty(el.childNodes[x]);
			
		}
	}
}

/** original code
function toggleDisabledSpecialty(el) {
	try {

		if (el.name!="specialtyNA" && el.id!="specialtyNA"){
			
			el.disabled = el.disabled ? false : true;
			
			if (el.type=="text"){
				el.value="";
			}else if (el.type=="checkbox"){
				if (el.checked)
					el.checked = false;
			}
		}
	
	}catch(E){}
	
	if (el.childNodes && el.childNodes.length > 0) {
		for (var x = 0; x < el.childNodes.length; x++) {
			toggleDisabledSpecialty(el.childNodes[x]);			
		}
	}
}
*/

function toggleDisabled(el) {
	try {
		el.disabled = el.disabled ? false : true;
	}catch(E){}
	
	if (el.childNodes && el.childNodes.length > 0) {
		for (var x = 0; x < el.childNodes.length; x++) {
			toggleDisabled(el.childNodes[x]);
		}
	}
}

function toggleButton(el) {

	var browserName=navigator.appName;
	if (browserName=="Netscape"){ 
		if ( el.style.MozOpacity == '' || el.style.MozOpacity == null ) {
			el.style.MozOpacity = 0.5;
		} else {
			el.style.MozOpacity = '';
		}
	} else {
		if ( el.style.filter == '' || el.style.filter == null ) {
			el.style.filter = 'alpha(opacity=50)';
		} else {
			el.style.filter = '';
		}
	}	
}

function addEvent(obj, evType, fn){ 
 if (obj.addEventListener){ 
   obj.addEventListener(evType, fn, false); 
   return true; 
 } else if (obj.attachEvent){ 
   var r = obj.attachEvent("on"+evType, fn); 
   return r; 
 } else { 
   return false; 
 } 
}

function maddrow(pfx,id){
	var tbl = document.getElementById(id);
	var lastrow = tbl.rows.length;
	var row = tbl.insertRow(lastrow);
	if(lastrow%2){
		bg = 'white';
		ws = 'white_space';
	}else{	
		bg = 'blue';
		ws = '';				
	}
	topleft = (ws)? ws : bg+'_top_left';
	topright = (ws)? ws : bg+'_top_right';
	botleft = (ws)? ws : bg+'_bottom_left';
	botright = (ws)? ws : bg+'_bottom_right';
	
	rowcontent = '<td>';
	rowcontent +='<table cellpadding="0" cellspacing="0" border="0" width="100%">';
	rowcontent +=	'<tr>';
	rowcontent +=		'<td class="'+bg+'_bg" width="9" height="9"><div class="'+topleft+'"></div></td><td class="'+bg+'_bg"></td><td class="'+bg+'_bg" width="9" height="9"><div class="'+topright+'"></div></td>';
	rowcontent +=	'</tr>';
	rowcontent +=	'<tr>';
	rowcontent +=		'<td class="'+bg+'_bg"></td>';
	rowcontent +=		'<td class="'+bg+'_bg">';
	rowcontent +=		'<table cellpadding="0" cellspacing="0" border="0" width="100%">';
	rowcontent +=			'<tr>';
	rowcontent +=				'<td><input id="'+pfx+'cb'+lastrow+'" type="checkbox" name="'+pfx+'others[]" checked="checked" value="'+lastrow+'" class="'+pfx+'other" /> <input style="border:1px #d8d5d5 solid;" type="text" size="40" name="'+pfx+'otxt'+lastrow+'" value="" /></td>';
	rowcontent +=				'<td class="ta35p"><!-- <input style="border:1px #d8d5d5 solid;" type="text" name="'+pfx+'osel'+lastrow+'" value="" /> --></td>';
	rowcontent +=			'</tr>';
	rowcontent +=		'</table>';
	rowcontent +=		'</td>';
	rowcontent +=		'<td class="'+bg+'_bg"></td>';
	rowcontent +=	'</tr>';
	rowcontent +=	'<tr>';
	rowcontent +=		'<td class="'+bg+'_bg" width="9" height="9"><div class="'+botleft+'"></div></td><td class="'+bg+'_bg"></td><td class="'+bg+'_bg" width="9" height="9"><div class="'+botright+'"></div></td>';
	rowcontent +=	'</tr>';
	rowcontent +='</table>';
	rowcontent +='</td>';
	row.innerHTML = rowcontent;
}

function mdelrow(tbl,pfx){
	var checkedObjArray = new Array();
	var cCount = 0;

	var tbl = document.getElementById(tbl);
	for (var i=0; i<tbl.tBodies[0].rows.length; i++) {

		if (tbl.tBodies[0].rows[i] && tbl.tBodies[0].rows[i].getElementsByTagName("input")[0].checked && tbl.tBodies[0].rows[i].getElementsByTagName("input")[0].getAttribute('type') == 'checkbox'){
			checkedObjArray[cCount] = tbl.tBodies[0].rows[i];
			cCount++;
		}
	}
	
	if (checkedObjArray.length > 0) {
		var rIndex = checkedObjArray[0].sectionRowIndex;
		deleteRows(checkedObjArray);
	}
}

function deleteRows(rowObjArray)
{
	for (var i=0; i<rowObjArray.length; i++) {
		var rIndex = rowObjArray[i].sectionRowIndex;
		rowObjArray[i].parentNode.deleteRow(rIndex);
	}
}

function addmis(id){
	var tbl = document.getElementById(id);
	var lastrow = tbl.rows.length;
	var row = tbl.insertRow(lastrow);
	feecount++;
	rowcontent = '<td><input type="text" name="other_fee_txt[]" value=""></td>';
	rowcontent +='<td>&nbsp;</td>';
	rowcontent +='<td><input type="text" size="20" name="other_fee_price[]" /></td>';
	rowcontent +='<td>&nbsp;</td>';
	row.innerHTML = rowcontent;
}

function addacc(id,type){
	var tbl = document.getElementById(id);
	var lastrow = tbl.rows.length;
	var row = tbl.insertRow(lastrow);
	acco = 'other_'+type+'_room';
	rowcontent = '<td><input type="checkbox" checked="checked" name="'+type+'c[]" value="'+eval(type+'count')+'" /> <input type="text" name="other_'+type+eval(type+'count')+'" value=""></td>';
	rowcontent +='<td>&nbsp;</td>';
	rowcontent +='<td>&nbsp;</td>';
	rowcontent +='<td>&nbsp;</td>';
	row.innerHTML = rowcontent;
	eval(type+'count++;');
}

function checkNow(obj, pfx, id){
	var tbl = document.getElementById(id);
	var num = tbl.rows.length;
	if(obj.checked){
		checkAll(pfx, num);
	}else{
		uncheckAll(pfx, num)
	}
}

function checkAll(pfx, num){
	for (i = 1; i < num; i++)
		document.getElementById(pfx+'cb'+i).checked = true ;
}

function uncheckAll(pfx, num){
	for (i = 1; i < num; i++)
		document.getElementById(pfx+'cb'+i).checked = false ;
}

function chkScroll(obj){
	var terms_service = document.getElementById('terms_service').scrollTop;
	var privacy_policy = document.getElementById('privacy_policy').scrollTop;
	var client_service = document.getElementById('client_service').scrollTop;
	
	if(navigator.appName=='Microsoft Internet Explorer'){
		var wterms = document.getElementById('wrap_terms').offsetHeight-320;
		var wprivacy = document.getElementById('wrap_privacy').offsetHeight-320;
		var wcservice = document.getElementById('wrap_client_service').offsetHeight-320;		
	}else{
		var wterms = document.getElementById('wrap_terms').offsetHeight-320;
		var wprivacy = document.getElementById('wrap_privacy').offsetHeight-320;
		var wcservice = document.getElementById('wrap_client_service').offsetHeight-320;		
	}
	
	if(wterms > terms_service){
		alert('Please scroll all the way down to the bottom to ensure that you have read our "Terms of Service"');
		return false;
	}
	if(!obj.elements['fac_terms'].checked){
		alert("Please agree to the Terms of Service.");
		obj.elements['fac_terms'].focus();
		return false;
	}
	
	if(wprivacy > privacy_policy){
		alert('Please scroll all the way down to the bottom to ensure that you have read our "Privacy Policy"');
		return false;
	}
	if(!obj.elements['fac_privacy'].checked){
		alert("Please agree to the Privacy Policy.");
		obj.elements['fac_privacy'].focus();
		return false;
	}
	
	if(wcservice > client_service){
		alert('Please scroll all the way down to the bottom to ensure that you have read our "Client Service Agreement"');
		return false;
	}
	if(!obj.elements['client_service'].checked){
		alert("Please agree to the Client Services Agreement.");
		obj.elements['client_service'].focus();
		return false;
	}
	if(!validate_csa()){
		alert('Please agree to the terms of the "Client Services Agreement" by completing the corresponding form beneath it.');
		return false;
	}
	
	// Check if scroll bar has been scrolled down to the bottom
}

function validate_fac_frm(obj){
	if(obj.elements['fac_name'].value == ""){
		alert("Please enter the name of your facility.");
		obj.elements['fac_name'].focus();
		return false;
	}
	if(obj.elements['fac_type'].value == ""){
		alert("Please select the type of your facility.");
		obj.elements['fac_type'].focus();
		return false;
	}
	if(!is_number(obj.elements['fac_cost_txt'].value, "double") && document.getElementById('idcote').checked){
		alert("Please enter a valid amount for the cost.");
		obj.elements['fac_cost_txt'].focus();
		return false;
	}
	if(obj.elements['fac_cost_range'] || is_number(obj.elements['fac_cost_txt'])){
		if(!is_number(obj.elements['fac_cost_txt'].value, "double") && document.getElementById('idcote').checked){
			alert("Please enter a valid amount for the cost.");
			obj.elements['fac_cost_txt'].focus();
			return false;
		}
		if(obj.elements['fac_cost_range'].value == "" && document.getElementById('idcore').checked){
			alert("Please select a range for the cost.");
			obj.elements['fac_cost_range'].focus();
			return false;
		}
	}
	if(!is_number(obj.elements['fac_capacity'].value, "int")){
		alert("Please enter a valid number for the capacity of your facility.");
		obj.elements['fac_capacity'].focus();
		return false;
	}
	if(obj.elements['fac_address1'].value == ""){
		alert("Please enter your street address.");
		obj.elements['fac_address1'].focus();
		return false;
	}
	if(obj.elements['fac_city'].value == ""){
		alert("Please select your city.");
		obj.elements['fac_city'].focus();
		return false;
	}
	if(obj.elements['fac_state'].value == ""){
		alert("Please select your state.");
		obj.elements['fac_state'].focus();
		return false;
	}
	if(!is_number(obj.elements['fac_zip'].value, "zip")){
		alert("Please enter a valid ZIP code.");
		obj.elements['fac_zip'].focus();
		return false;
	}
	if(!validate_email(obj.elements['fac_email'])){
		alert("Please enter a valid email address.");
		obj.elements['fac_email'].focus();
		return false;
	}
	if(obj.elements['fac_phone'].value == ""){
		alert("Please enter your phone number.");
		obj.elements['fac_phone'].focus();
		return false;
	}
	if(obj.elements['fac_contactname'].value == ""){
		alert("Please enter the name of the facility's contact person.");
		obj.elements['fac_contactname'].focus();
		return false;
	}
	if(obj.elements['fac_user'].value == ""){
		alert("Please enter your account username.");
		obj.elements['fac_user'].focus();
		return false;
	}
	if(obj.elements['fac_pass'].value == ""){
		alert("Please enter your account password.");
		obj.elements['fac_pass'].focus();
		return false;
	}
	if(obj.elements['fac_pass'].value != obj.elements['fac_vpass'].value){
		alert("Password verification did not match.");
		obj.elements['fac_pass'].focus();
		return false;
	}
	if(obj.elements['description'].value == ""){
		alert("Please enter a description of your facility.");
		obj.elements['description'].focus();
		return false;
	}
}

function validate_email(field){
	with (field){
		apos=value.indexOf("@");
		dotpos=value.lastIndexOf(".");
		if (apos<1||dotpos-apos<2){
			return false;
		}else{
			return true;
		}
	}
}

function is_number(str, flag){
	if(str.length==0){
		return false;
	}
	numdecs = 0;
	for(i = 0; i < str.length; i++){
		mychar = str.charAt(i);
		if ((mychar >= "0" && mychar <= "9") || mychar == "." ){
			if (mychar == "."){
				numdecs++;
			}
		}
		else{
			return false;
		}
	}
	if(numdecs > 1 && flag == "double"){
		return false;
	}else if(numdecs > 0 && flag == "int"){
		return false;
	}else if(flag == "zip" && str.length != 5 && numdecs > 0){
		return false;
	}
	return true;
}

function goBack(step){
	document.getElementById('reg_action').value = step;
	return true;
}

function togEnDis(obj){	
	//Checking if select field is enabled
	if (document.getElementById(obj).disabled == false){
		document.getElementById(obj).disabled = true
		document.getElementById(obj).value = ''
		return true;
	}
	//Checking if select field is disabled
	if (document.getElementById(obj).disabled == true){
		document.getElementById(obj).disabled = false		
		return true;
	}	
}

function selSec(obj){	
	if(obj=='deposit'){
		document.getElementById('rent').disabled = true;
		document.getElementById('rent_ref').disabled = true;
		document.getElementById('rent').value = "";
		document.getElementById('rent_ref').checked = false;
		document.getElementById('deposit').disabled = false;
		document.getElementById('deposit_ref').disabled = false;
	}
	if(obj=='rent'){
		document.getElementById('deposit').disabled = true
		document.getElementById('deposit_ref').disabled = true
		document.getElementById('deposit').value = ""
		document.getElementById('deposit_ref').checked = false
		document.getElementById('rent').disabled = false
		document.getElementById('rent_ref').disabled = false
	}	
}

function selCost(obj){	
	if(obj=='fac_cost_range'){
		document.getElementById('fac_cost_txt').style.display = 'none';	
		document.getElementById('fac_cost_range').style.display = 'block';
		document.getElementById('cost_input').value='';		
	}
	if(obj=='fac_cost_txt'){
		document.getElementById('fac_cost_range').style.display = 'none';
		document.getElementById('fac_cost_txt').style.display = 'block';
		document.getElementById('cost_field').value='';
	}	
}

function freeze(){
	if(!document.getElementById('otherlang').checked) document.getElementById('other_lang').disabled = true;
	if(!document.getElementById('otherreim').checked) document.getElementById('other_reim').disabled = true;
	/*
	if(!document.getElementById('rentrad').checked){
		document.getElementById('rent').value = "";
		document.getElementById('rent').disabled = true;
		document.getElementById('rent_ref').disabled = true;
	}
	if(!document.getElementById('deporad').checked){
		document.getElementById('deposit').value = "";
		document.getElementById('deposit').disabled = true;
		document.getElementById('deposit_ref').disabled = true;
	}
	*/
}

var tval = "";
function checkWordLen(obj){
	var wordLimit = 100; // Maximum word length	
	var len = obj.value.split(/[\s]+/);
	var wordLeft = wordLimit - len.length;
	if(len[len.length-1] == "") wordLeft += 1;
	document.getElementById('wordcount').innerHTML = wordLeft+ ' words left';
	if((wordLimit - len.length) == 0) tval = obj.value;
	if(len.length > wordLimit){
		//alert("You cannot put more than "+wordLimit+" words in the description.");
		//obj.oldValue = obj.value!=obj.oldValue?obj.value:obj.oldValue;
		//obj.value = obj.oldValue?obj.oldValue:"";
		obj.value = tval;
		document.getElementById('wordcount').innerHTML = '0 words left';
		return false;
	}
	return true;
}

function checkForDollarSign(objectID){
	var iChars = "$";
	var amount= "";

	for (var i = 0; i < document.getElementById(objectID).value.length; i++) 
	{
		if (is_number(document.getElementById(objectID).value.charAt(i),"double"))
		{
			amount = amount.concat(document.getElementById(objectID).value.charAt(i));
		}
		else
		{
			alert ("Enter a valid amount.");
		}
 	}
	document.getElementById(objectID).value = amount;
}
//daniel 20090306
//added script for required facility room cost fields
function checkRequiredField(thisForm)
{
	if (trim(thisForm.elements['standard_price'].value," ") == "")
	{
		alert ("You are required to fill out the Standard Room Cost field.");
		thisForm.elements['standard_price'].focus;
		return false;
	}
	
	if (!thisForm.elements['specialtyNA'].checked)
	{
	
		if (trim(thisForm.elements['spec_price'].value," ") == "")
		{
			alert ("You are required to fill out the Specialty Room Cost field.");
			thisForm.elements['spec_price'].focus;
			return false;			
		}
	}
}

/**
*
*  Javascript trim, ltrim, rtrim
*  http://www.webtoolkit.info/
*
**/

function trim(str, chars) {
	return ltrim(rtrim(str, chars), chars);
}
 
function ltrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}
 
function rtrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

/**
	[03.09.09] ariel
*/
function clearForm(oForm) { 

  var elements = oForm.elements;     
  oForm.reset();

  for(i=0; i<elements.length; i++) {
	field_type = elements[i].type.toLowerCase();
		switch(field_type) {	
			case "text": 
			case "password": 
			case "textarea":
				//case "hidden":				
				elements[i].value = ""; 
				break;        
			case "radio":
			case "checkbox":
				if (elements[i].checked) {
					elements[i].checked = false; 
				}
				break;
			case "select-one":
			case "select-multi":
						elements[i].selectedIndex = -1;
				break;
			default: 
				break;
		}
    }
	
  return false;
}

