// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults


function redirectTo(url) {
   document.location.href = url;
}

function clearForm(id) { 
	if((element = document.getElementById(id)) && element.nodeName == 'FORM') {		
		element.reset();
	}
}

/* Clear the class names from an element */
function clearClassNames(e) {
	var classArray = e.classNames().toArray();
	for (var index = 0, len = classArray.size(); index < len; ++index) {  e.removeClassName(classArray[index]); }
}


/* This function expects the ID of a tbody tag to be passed in, and it 
will loop over all of the rows and assign 'even' and 'odd' classes 
to the rows so they stand out better when viewing the table results */
function recolorTable(element_id) {
	$$('#user_tickets_table tbody tr').each(function(e, i) { clearClassNames(e); x = i+1; if (x%2==0) { e.addClassName('even'); } else { e.addClassName('odd'); } })
}

/*Only clears the elements that are visible.
 * Skips hidden fields, unless they are relating to the 
 * crazy calendar */
function clearFormVisibleFields(form_id) {
  form = document.getElementById(form_id);
       
  for (i = 0; i < form.elements.length; i++) {
    elt = form.elements[i];                          
    if (elt.type == "checkbox") {
      elt.checked = false;
    }
    else if (elt.type == "textbox" || elt.type == 'text'){
      elt.value = "";
    }
    else if ((elt.type == "select-one")) {
      elt.value = '';
    }
    else if (elt.type == 'hidden' &&  /search_calendar/.test(elt.name)) {
      /* Does not clear hidden fields unless they relate to calendar */
      elt.value = '';
    }

  }
}

var tabbed_to_fields = new Array();
function auto_tab(v_length, focus_field, next_field){
	// Don't tab if we've already tabbed before.
	if(tabbed_to_fields.indexOf(focus_field) == -1) {
		if(document.getElementById(focus_field).value.length >= v_length){
			document.getElementById(next_field).select();
			 tabbed_to_fields.push(focus_field);
		     tabbed_to_fields.inspect;
		}
	}
}

function auto_set_value(object, field){
	field_1 = field+"_phone_1";
	field_2 = field+"_phone_2";
	field_3 = field+"_phone_3";
	hidden_field = object+"_"+field;
	$(hidden_field).value = $(field_1).value+$(field_2).value+$(field_3).value;
}
function auto_set_value_tag(field){
	field_1 = field+"_phone_1";
	field_2 = field+"_phone_2";
	field_3 = field+"_phone_3";
	hidden_field = field;
	$(hidden_field).value = $(field_1).value+$(field_2).value+$(field_3).value;
}
function set_hidden_code_value(){
	value = ""
	for(i=1;i<=6;i++){
		field = 'code_'+i
		value += $(field).value
	}
	$('promotion_code').value = value;
}