// get an array of objects by class
function getElementbyClass(classname){
    var inc=0;
    var customcollection = new Array;
    var i;
    var alltags=document.all? document.all : document.getElementsByTagName("*")

    for (i=0; i<alltags.length; i++){
	if (alltags[i].className==classname)
	customcollection[inc++]=alltags[i]
    }

    return customcollection;
}

// Get base url
var url = document.location.href;
var xend = url.lastIndexOf("/") + 1;
var base_url = url.substring(0, xend);
var element;

function dispatch(url) {
    if (url.substring(0, 4) != 'http') {
	url = base_url + url;
    }

    
    var jsel = document.createElement('SCRIPT');
    jsel.type = 'text/javascript';
    jsel.src = url;
    
    if(element) {
	document.body.removeChild(element);
    }

    element = document.body.appendChild(jsel);

    return false;
}

function seralize_form(f) {
    var data = '';
    for(var i=0;i<f.elements.length;i++) {
	data += f.elements[i].name +"="+ f.elements[i].value +"&";
    }

    return data;
}


function focushandle(e) {
    if(this.blur)this.blur() 
}


function noret() {
    return false;
}

function activate_tab() {

    /* set all tabs to inactive
     */
    
    for (var ii=0;ii<tabarea.length;ii++){
	for (var i=0;i<tab.length;i++){
	    var elmclass = document.getElementById(tab[i] + tabarea[ii]).className;
	    var elmclass_name_array = elmclass.split("_");
	    if(elmclass_name_array[elmclass_name_array.length - 1] == 'active') {
		elmclass_name_array.pop();
		new_elmclass_name = elmclass_name_array.join('_');
		document.getElementById(tab[i] + tabarea[ii]).className = new_elmclass_name;		
	    }
	}
    }

    /* set the clicked tab to active
     */
    
    var id_name_array = this.id.split('_');
    id_name_array.pop();
    new_id_name = id_name_array.join('_');
    
    for (var ii=0;ii<tabarea.length;ii++){
	var current_classname = document.getElementById(new_id_name+tabarea[ii]).className;
	document.getElementById(new_id_name+tabarea[ii]).className = current_classname + '_active';
    }

}

function pausejs(millis) {
    date = new Date();
    var curDate = null;

    do { var curDate = new Date(); }
    while(curDate-date < millis);
} 


function SetCookie(cookieName,cookieValue,nDays) {
    var today = new Date();
    var expire = new Date();
    if (nDays==null || nDays==0) nDays=1;
    expire.setTime(today.getTime() + 3600000*24*nDays);
    document.cookie = cookieName+"="+escape(cookieValue)
	+ ";expires="+expire.toGMTString();
}

function calculate_total() {
  var reg_form = document.getElementById('reg_form');
  var num_adults = reg_form.num_adults[reg_form.num_adults.selectedIndex].value;
  var num_teens = reg_form.num_teens[reg_form.num_teens.selectedIndex].value;
  for( var i=0; i<3; i++ ) {
       if( reg_form.session[i].checked == true ) {
           var temp = i;
       }
  }
  var amount = 0;
  if( temp == 0 ) {
      amount = 45;
  } else {
      amount = 30;
  }
  
  var donation_amount = parseInt(reg_form.donation_amt.value);
  if( donation_amount < 0 ) { donation_amount = 0; }
  
  reg_form.total_amt.value = (num_adults * amount) + (num_teens * 20) + donation_amount;
}
function validate(){
  var reg_form = document.getElementById( "reg_form" );
  var event  =  document.getElementById( "registerbutton");
    firstName = reg_form.firstname.value;
    lastName = reg_form.lastname.value;
    address = reg_form.address.value;
    city = reg_form.city.value;
    zipcode = reg_form.zipcode.value;
    phone = reg_form.phone.value;
    email = reg_form.email.value;
    total_amt = reg_form.total_amt.value;
    cc_name = reg_form.cc_name.value;
    cc_num = reg_form.cc_num.value;
    cc_expr_mon = reg_form.cc_exp_mon.value;
    cc_expr_year = reg_form.cc_exp_year.value;
    cc_zip = reg_form.cc_zip.value;
    cc_cvv2 = reg_form.cc_cvv2.value;
    if (firstName == ''){
        alert ('First name is a required field.');
        return false;
    }
    else if (lastName == ''){
        alert ('Last name is a required field.');
        return false;
    }
    else if (address == ''){
        alert ('Address is a required field.');
        return false;
    }
    else if (city == ''){
        alert ('City is a required field.');
        return false;
    }
    else if (zipcode == ''){
        alert ('Zip Code is a required field.');
        return false;
    }
    else if (phone == ''){
        alert ('Phone is a required field.');
        return false;
    }
    else if (email == ''){
        alert ('Email is a required field.');
        return false;
    }
    else if (email.indexOf("@") == -1 || email.indexOf(".") == -1){
        alert ('Your email is invalid');
        return false;
    }
    else if (total_amt <= '0'){
        alert ('You must have a total amount');
        return false;
    }
    else if (cc_name == ''){
        alert ('You must provide the name on credit card.');
        return false;
    }
    else if (cc_num == ''){
        alert ('You must provide a credit card number.');
        return false;
    }
    else if (cc_expr_mon == ''){
        alert ('You must choose a valid credit card expiration date');
        return false;
    }
    else if (cc_expr_year == ''){
        alert ('You must choose a valid credit card expiration date');
        return false;
    }
    else if (cc_zip == ''){
        alert ('You must provide a credit card zip code');
        return false;
    }
    else if (cc_cvv2.length <= 2){
        alert ('You must provide a valid CID #');
        return false;
    }
 return true;
}
