/* Navigation
-------------------------------------------------------- */
// use a dropdown to change the page
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

// imposeMaxLength
function imposeMaxLength(Object, MaxLen){
	text_value = Object.value;
	
	if(Object.value.length > MaxLen){
		Object.value = text_value.substring(0,MaxLen);
	}
}

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

// generate_short_name
function generate_short_name(value){
	short_name = value.toLowerCase();
	short_name = short_name.replace(/ /g,"");
	return(short_name);
}

// generate_company_url
function generate_company_url(){
	// current_value
	short_name = generate_short_name(document.getElementById("company_name").value);
	
	// only start checking when there's at least 1 character
	if(short_name.length > 0){
		// tag
		document.getElementById("tag").value = short_name;
		
		// new_value
		new_value = "http://<strong>"+short_name+"</strong>."+document.getElementById("url_suffix").value;
		
		// write the new value to the screen
		document.getElementById("company_url").innerHTML = new_value;
	}
}

// website_shortname
function website_shortname(){
	// current_value
	short_name = generate_short_name(document.getElementById("website_address").value);
	short_name = short_name.replace("http://","");
	
	// Don't include the domain extension.
	short_name_parts = short_name.split(".");
	short_name = short_name_parts[0];
	
	// only start checking when there's at least 1 character
	if(short_name.length > 0){
		// tag
		document.getElementById("shortname").value = short_name;
	}
}

/* Forms
-------------------------------------------------------- */
// field_focus
function field_focus(field,message){
	if(document.getElementById(field).value == message){
		document.getElementById(field).value = "";
	}
}

// field_blur
function field_blur(field,message){
	if(document.getElementById(field).value == ""){
		document.getElementById(field).value = message;
	}
}

// focus_on_field
function focus_on_field(field){
	document.getElementById(field).focus();
}
	
// select_radio
function select_radio(target){
	document.getElementById(target).checked = 1;
}

// repeating_type
// set_selected_days
function set_selected_days(days){
	//document.form_name.repeat_specific_days_field.value = days;
}

// no,specific_days,daily,weekly,monthly,yearly
function repeating_type(dropdown){
	// hide the existing divs
	document.getElementById('repeat_no').style.display = 'none';
	document.getElementById('repeat_specific_days').style.display = 'none';
	document.getElementById('repeat_daily').style.display = 'none';
	document.getElementById('repeat_weekly').style.display = 'none';
	document.getElementById('repeat_monthly').style.display = 'none';
	document.getElementById('repeat_yearly').style.display = 'none';

	// reveal the selected div
	selected_div = 'repeat_'+dropdown.options[dropdown.selectedIndex].value;
	div_id = document.getElementById(selected_div);
	div_id.style.display = '';
}

// reveal the selected option
function hook_location(selected_div){
	// hide the existing divs
	document.getElementById('hook_group_venue').style.display = 'none';
	document.getElementById('hook_group_private_address').style.display = 'none';
	document.getElementById('hook_group_online').style.display = 'none';

	// reveal the selected div
	div_id = document.getElementById(selected_div);
	div_id.style.display = '';
}


/* Display
-------------------------------------------------------- */
// toggle the visible of a window
function toggle_window(window){
	var window_id = document.getElementById(window);
	
	if( window_id.style.display != "none" ) {
		window_id.style.display = 'none';
	}else {
		window_id.style.display = '';
	}
}

function toggle_search(window){
	var window_id = document.getElementById(window);
	var image_id = document.getElementById('image_'+window);
	
	if( window_id.style.display != "none" ) {
		window_id.style.display = 'none';
		image_id.src = 'thirdparty/famfam/bullet_right.png';
	}else {
		window_id.style.display = '';
		image_id.src = 'thirdparty/famfam/bullet_down.png';
	}
}

// Toggle the visibility of additional options
function toggle_vis(obj){
	// The object to reveal
	var el = document.getElementById(obj);
	if ( el.style.display != "none" ) {
		el.style.display = 'none';
	}else {
		el.style.display = '';
	}
}

// Toggle the visibility of additional options
function toggle_option(obj,enabler){
	// The object to reveal
	var el = document.getElementById(obj);
	if ( el.style.display != "none" ) {
		el.style.display = 'none';
	}else {
		el.style.display = '';
	}
	
	// The link to hide after it's revealed the object
	var el_enabler = document.getElementById(enabler);
	if ( el_enabler.style.display != "none" ) {
		el_enabler.style.display = 'none';
	}else {
		el_enabler.style.display = '';
	}
}

// Modify the visibility but don't hide if it's already hidden
function toggle_visibility(obj,enabler){
	// The object to reveal
	var el = document.getElementById(obj);
	el.style.display = '';
	
	// The link to hide after it's revealed the object
	var el_enabler = document.getElementById(enabler);
	el_enabler.style.display = 'none';
}

// Modify the visibility
function visibility(target,action){
	if(action == "reveal"){ // reveal
		var el = document.getElementById(target);
		el.style.display = '';			
	}else{ // hide
		var el = document.getElementById(target);
		el.style.display = 'none';		
	}
}

// Toggle the visibility of additional options
function toggle(obj){
	// The object to reveal
	var el = document.getElementById(obj);
	if ( el.style.display != "none" ) {
		el.style.display = 'none';
	}else {
		el.style.display = '';
	}
}
	
// reveal
function reveal(selected_div){
	// hide the existing divs
	document.getElementById('search_events').style.display = 'none';
	document.getElementById('search_members').style.display = 'none';
	document.getElementById('search_venues').style.display = 'none';

	// reveal the selected div
	div_id = document.getElementById(selected_div);
	div_id.style.display = '';
}

/* Invite Fjax Thumbnails
-------------------------------------------------------- */
// is_selected
function is_selected(record_id){
	// find the currently selected values
	var selected_field = document.getElementById("invite_friends_selected");
	current_value = new String(selected_field.value);
	current_values = current_value.split(',');
	record_is_selected = false;
	for(i=0; i<current_values.length; i++){
		if(current_values[i] == record_id){
			record_is_selected = true;
		}
	}
	
	return record_is_selected;
}

// unselect_record
function unselect_record(record_id){
	// find the currently selected values
	var selected_field = document.getElementById("invite_friends_selected");
	current_value = new String(selected_field.value);
	current_values = current_value.split(',');
	
	// remove all the selected records
	selected_field.value = "";
	current_value = "";
	
	// remove the selected value
	new_values = "";
	for(i=0; i<(current_values.length-1); i++){ // less one account for extra appended comma
		if(current_values[i] != record_id){
			new_values = new_values+current_values[i]+",";
		}
	}
	
	// add back the new values
	selected_field.value = new_values;
}

// mouse over
function record_over(record_id){	
	var record = document.getElementById("record_"+record_id);
	record.className = "record_mouseover";
}

// mouse out
function record_out(record_id){	
	// the div in question
	var record = document.getElementById("record_"+record_id);
	
	// don't apply the mouse out style if the record has been selected
	if(is_selected(record_id) == false){
		record.className = "invite_select_record";
	}else{
		record.className = "record_selected";
	}
}

// select a record
function record_select(record_id){	
	// the div in question
	var record = document.getElementById("record_"+record_id);
	
	// track the selected id
	var selected_field = document.getElementById("invite_friends_selected");
	current_value = selected_field.value;
	
	// select a record if it hasn't been already
	if(is_selected(record_id) == false){
		record.className = "record_selected";
		selected_field.value = current_value+record_id+",";
	}else{
		record.className = "invite_select_record";
		unselect_record(record_id);
	}
}

// toggle category checkbox selection in event advanced search
function toggle_all_categories(lastIndex) {
    var retval = false;
    if (!isNaN(lastIndex) && lastIndex > 0 && document.getElementById) {
        var checkboxAllCategories = document.getElementById('categories_select_all');
        var check = '';
        if (checkboxAllCategories.checked) {
            // check all
            for(i=0; i<=lastIndex; i++) {
                document.getElementById('search_category_' + i).checked = true;
            }
        } else {
            // uncheck all
            for(i=0; i<=lastIndex; i++) {
                document.getElementById('search_category_' + i).checked = false;
            }
        }
    }
    return retval;
}

// Toggle the visibility of field tips
function toggle_tip(obj) {
	var el = document.getElementById(obj);
	if ( el.style.display != "none" ) {
		el.style.display = 'none';
	}else {
		el.style.display = '';
	}
}