/*#############################################################
Name: Formcheck
Version: 1.3
#############################################################*/

function checkEmail(myForm) {
if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(myForm.email.value) && (myForm.password.value.length >= 6) ){
return (true)
}
alert("Please enter a valid email address and a password with 6 or more characters and check the box to agree to the terms of use.")
return (false)
}

/*#############################################################
Name: ResetRadio
Version: 1.3
#############################################################*/

function validateValue( strValue, strMatchPattern ) {
var objRegExp = new RegExp( strMatchPattern);

 //check if string matches pattern
 return objRegExp.test(strValue);
}


function ResetRadio(val,chkName,chkForm) {
dml=document.forms[chkForm];
len = dml.elements.length;
var i=0;
for( i=0 ; i<len ; i++) {
	var field_id = dml.elements[i].id;
	if (validateValue( field_id, chkName ))
 		{
		//field is valid, so check it
		dml.elements[i].checked=val;
 		}
}
}


/*#############################################################
Name: tab_change
Version: 1.0
#############################################################*/

function tab_change(div_id, tab_id) {
i = 1
while (i <= 20)
	{
    	// hide all the divs
		if ( document.getElementById('tab'+i)) { document.getElementById('tab'+i).style.display = 'none';}
   		// dim all the tabs
		if ( document.getElementById('li'+i)) { document.getElementById('li'+i).className = '';}
		i++
	}
    // higlight the one we want
    document.getElementById(tab_id).className = 'current';
	document.getElementById(div_id).style.display = 'block';
}


function pane_change(div_id) {
i = 1
while (i <= 20)
	{
    	// hide all the divs
		if ( document.getElementById('pane'+i)) { 
		//new Effect.Fade('pane'+i);
		document.getElementById('pane'+i).style.display = 'none';
		}
		i++
	}
    // higlight the one we want
	//new Effect.Appear(div_id);
	document.getElementById(div_id).style.display = 'block';
	
}



function reveal(register_form) {

	if ( document.getElementById('agree').checked=true) {
    // higlight the one we want
    document.getElementById(register_form).className = 'current';
	document.getElementById(register_form).style.display = 'block'; }

	else {
	    document.getElementById(register_form).className = 'tab_off';
	document.getElementById(register_form).style.display = 'none';
	}
}
// show tab from url variable

/*#############################################################
Name: getValue
Version: 1.0
#############################################################*/

function getValue(varname)
{
  var url = window.location.href;
  var qparts = url.split("?");

  if (qparts.length == 0)
  {
    return "";
  }

  var query = qparts[1];
  var vars = query.split("&");
  var value = "";
  for (i=0;i<vars.length;i++)
  {
    var parts = vars[i].split("=");

    if (parts[0] == varname)
    {
      value = parts[1];
      break;
    }
  }

  value = unescape(value);
  value.replace(/\+/g," ");
  return value;
}

/*#############################################################
Name: changetabs
Version: 1.0
#############################################################*/

function changetabs() {
	var tab_number = getValue("tab");
	if (tab_number !="") {
		tab_change('tab'+tab_number, 'li'+tab_number);
	}
}

/*#############################################################
Name: focusfield
Version: 1.0
#############################################################*/

function focusfield() {
var __field = getValue("field");
document.getElementById(__field).focus();
}

/*#############################################################
Name: fadeAppMSG
Version: 1.0
#############################################################*/
function fadeAppMSG() {

new Effect.SlideDown(document.getElementById('appmsg'));

}


/*#############################################################
Name: openclose tabs
Version: 1.0
#############################################################*/
function open_tab_extra(which_div) {


if(document.getElementById(which_div)){
document.getElementById(which_div).style.display = 'block';
// document.getElementById('button_'+which_div).src = 'images/delete_value.gif';
document.getElementById('button_'+which_div).className = 'invisible';
var show_field=true;
}


}

function close_tab_extra(which_field) {

if(document.getElementById(which_field)){
document.getElementById(which_field).value = '';
//document.getElementById(which_field).style.display = 'none';
}

}

/*#############################################################
Name: check changes in form before navigating away
Version: 1.0
#############################################################*/


var isSubmit = false;

// Check to see if a form has been changed after the page loads
function isFormChanged() {
  var f = document.forms;

  // loop through all forms
  for (var i=0; i < f.length; i++) {
    var el = f[i].elements;
    // loop through each element in each form
    for (var j=0; j < el.length; j++) {
      if (el[j].type && isElementChanged(el[j])) {
        return true;
      }
    }
  }
  return false;
}

// Check to see if a form element has been changed after the page loads
function isElementChanged(el) {
  // correct case of element type
  switch (el.type.toLowerCase()) {
    case 'text':
    case 'textarea':
    case 'password':
      if (el.value != el.defaultValue) {
        return true;
      }
      break;
    case 'radio':
    case 'checkbox':
      if (el.checked != el.defaultChecked) {
        return true;
      }
      break;
    case 'select-one':
    case 'select-multiple':
      for (var k=0; k < el.options.length; k++) {
        if (el.options[k].selected != el.options[k].defaultSelected) {
          return true;
        }
      }
      break;

    return false;
  }
}

// Check form for any unsaved changes before leaving page

function formCheck(variconTab) {
  var isChanged = isFormChanged();
  // don't run if submit button was clicked or form hasn't changed or there is no event
  if (!isSubmit && isChanged) {
showassist(variconTab);

  }
}



function showassist(variconTab){

var totaltabs =6;
  // loop through all tabs
  // display:none on the imgs to show through the DIV backgrounds.
 for (var icontab=1; icontab <= totaltabs; icontab++) {

		if(document.getElementById('icon_b'+icontab)){
		document.getElementById('icon_b'+icontab).style.display = 'none';
		document.getElementById('icon_b'+icontab).onclick = '';
		//document.getElementById('icon_b'+icontab).style.cursor ='auto';
		}
  }




var buttons_src_arr=new Array()
buttons_src_arr[1]="url(images/icons/mydetails_on.gif)";
buttons_src_arr[3]="url(images/icons/stopmail_on.gif)";
buttons_src_arr[3]="url(images/icons/deceased_on.gif)";
buttons_src_arr[4]="url(images/icons/myinterests_on.gif)";
buttons_src_arr[5]="url(images/icons/mycharities_on.gif)";
buttons_src_arr[6]="url(images/icons/invite_on.gif)";

//var buttons_SRC="url(images/icons/myprofile_on.gif)";
var buttons_SRC=buttons_src_arr[variconTab];

if(document.getElementById('b'+variconTab)){ document.getElementById('b'+variconTab).style.backgroundImage =buttons_SRC;  }


  for(i=0; i < 20; i++)
      {
        if(document.getElementById('assistarea'+i)){ document.getElementById('assistarea'+i).style.visibility = 'visible'; document.getElementById('assistarea'+i).style.display = 'block';}
        if(document.getElementById('reminder'+i)){ document.getElementById('reminder'+i).style.visibility = 'visible'; document.getElementById('reminder'+i).style.display = 'block';}
        if(document.getElementById('appmsg'+i)){ document.getElementById('appmsg'+i).style.display = 'none';} 
 if(document.getElementById('reminder')){ document.getElementById('reminder').style.visibility = 'visible'; document.getElementById('reminder').style.display = 'block';}
        if(document.getElementById('appmsg')){ document.getElementById('appmsg').style.display = 'none';} 
      }
}


//window.onbeforeunload = showassist;



function goURL(URLvar) {
	window.location = URLvar;
}



function displayToggle(id) {
var el = document.getElementById(id).style;
//var button_ document.getElementById('button_'+id).src;

if(el.display == "none") {
el.display = "block";
// toggle button src
document.getElementById('button_'+id).src = "images/up_value.gif";

}
else if(el.display == "block") {
el.display = "none";
// toggle button src
document.getElementById('button_'+id).src = "images/down_value.gif";
}
}


function broadcastValue(field, passed_val, direction) {

	var form1 = document.getElementById('val_'+field);
	var form2 = document.getElementById('val2_'+field);


if(direction == "tov2") { form2.value=form1.value; }
if(direction == "tov1") { form1.value=form2.value; }

}

function displayOn(which_div){
document.getElementById(which_div).style.display = 'block';
}

function displayOff(which_div){
document.getElementById(which_div).style.display = 'none';
}
