// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults
function add_selected_elements_to_list(list_id) {
	// get all checkboxes
	boxes = document.getElementsByClassName('add_to_favorites_box');
	ids = new Array;
	for(i = 0; i < boxes.length; i++) {
		if (boxes[i].checked == 1) {
			ids.push(boxes[i].name);
		}
	}
	new Ajax.Updater('list_'+list_id, '/lists/add_multiple?list_id='+list_id+'&products='+ids.join(','), {asynchronous:true, evalScripts:true,onLoading:function(request){Element.show('list_busy_'+list_id);}, onComplete:function(request){Element.hide('list_busy_'+list_id);reset_checkboxes();$('list_selection_form').reset();$('bottom_list_selection_form').reset();}});
}

function remove_selected_elements_from_list(list_id) {
	// get all checkboxes
	boxes = document.getElementsByClassName('add_to_favorites_box');
	ids = new Array;
	for(i = 0; i < boxes.length; i++) {
		if (boxes[i].checked == 1) {
			Effect.Fade('product_'+boxes[i].name);
			ids.push(boxes[i].name);
		}
	}
	if (ids.length == 10) {
		new Ajax.Updater('product_list', '/lists/remove_page?list_id='+list_id+'&products='+ids.join(','), {asynchronous:true, evalScripts:true,onLoading:function(request){Element.show('list_busy_'+list_id);}, onComplete:function(request){Element.hide('list_busy_'+list_id);reset_checkboxes();update_nav_list(list_id)}});
	} else {
		new Ajax.Updater('list_'+list_id, '/lists/remove_multiple?list_id='+list_id+'&products='+ids.join(','), {asynchronous:true, evalScripts:true,onLoading:function(request){Element.show('list_busy_'+list_id);}, onComplete:function(request){Element.hide('list_busy_'+list_id);reset_checkboxes();}});
	}
}

function update_nav_list(list_id) {
	new Ajax.Updater('list_'+list_id,'/lists/show_nav?list_id='+list_id,{asynchronous:true, evalScripts:true, onComplete:function(request){Element.hide('list_busy_'+list_id);},onLoading:function(request){Element.show('list_busy_'+list_id);}});
}
function update_dropdown() {
	new Ajax.Updater('list_selector','/lists/dropdown',{asynchronous:true, evalScripts:true,onComplete:function(request){Effect.Highlight('list_selector');}});
	new Ajax.Updater('bottom_list_selector','/lists/bottom_dropdown',{asynchronous:true, evalScripts:true,onComplete:function(request){Effect.Highlight('list_selector');}});
}


function reset_checkboxes() {
	boxes = document.getElementsByClassName('add_to_favorites_box');
	for(i = 0; i < boxes.length; i++) {
		boxes[i].checked = false;
	}
}

function set_checkboxes() {
	boxes = document.getElementsByClassName('add_to_favorites_box');
	for(i = 0; i < boxes.length; i++) {
		boxes[i].checked = true;
	}
}

function toggleOnList() {
	boxes = document.getElementsByClassName('on_list_display');
	for(i = 0; i < boxes.length; i++) {
		Element.toggle(boxes[i]);
	}
}

<!-- Tabbed Panes -->
function show_div(tab_id) {

	// Reset tabs
	tabs = document.getElementsByClassName('detail_tab');
	for(i = 0; i < tabs.length; i++) {
		id = tabs[i].id
		document.getElementById(id+'_over').style.display = 'none';
		document.getElementById(id).style.display = 'block';
	}

	// Hide all panes
	panes = document.getElementsByClassName('detail_pane');
	for(i = 0; i < panes.length; i++) {
		if (panes[i].id == tab_id + '_pane') {
			document.getElementById(tab_id + '_pane').style.display = 'block';
		} else {
			panes[i].style.display = 'none';
		}
	}

	// Show selected tab
	document.getElementById(tab_id).style.display = 'none';
	document.getElementById(tab_id + '_over').style.display = 'block';


}
<!-- End Tabbed Panes Code -->
