/*-----------------------------------------------------------------------------
 * Visual Product Options - Javascript Functions
 *-----------------------------------------------------------------------------
 * visual_options.js
 *-----------------------------------------------------------------------------
 */

/* These are the javascript functions called from viewProdOptions.tpl */

function vo_radio_onmousedown(option_id, class_name_unselected) {
	var prev_assign_id = determine_selected_assign_id('productOptions_'+option_id);
	apply_class_to_div('po_div_'+prev_assign_id, class_name_unselected);
}
function vo_radio_onclick(assign_id, class_name_selected) {
	apply_class_to_div('po_div_'+assign_id, class_name_selected);
}
function vo_link_onclick(option_id, assign_id, class_name_unselected, class_name_selected) {
	var prev_assign_id = determine_selected_assign_id('productOptions_'+option_id);
	apply_class_to_div('po_div_'+prev_assign_id, class_name_unselected);
	apply_class_to_div('po_div_'+assign_id, class_name_selected);
	select_radio('po_'+option_id+'_'+assign_id);
}
function vo_switch_main_image(option_id) {
	var e = [];
	e[0] = document.getElementsByName('productOptions_'+option_id);
	var selected_assign_id = vpo_gv(e);
	var img = document.getElementById('MainProdImage');
	if (img && arr_vo_images && arr_vo_images[selected_assign_id]) {
		img.src = arr_vo_images[selected_assign_id];
	}
}

/* Private functions */

function vpo_gv(o){var a = [];for(var i=0; i<o.length; ++i) {for(var j=0; o[i] && j<o[i].length; ++j) {if (o[i][j].options)a.push(o[i][j].options[o[i][j].selectedIndex].value);else if (o[i][j].checked)a.push(o[i][j].value);else if (o[i][j].length) {for(var k=0; o[i][j] && k<o[i][j].length; ++k) {if (o[i][j][k].options)a.push(o[i][j][k].options[o[i][j][k].selectedIndex].value);else if (o[i][j][k].checked)a.push(o[i][j][k].value);}}}}return a;}

function determine_selected_assign_id(radio_element_name) {
	var e = [];
	e[0] = document.getElementsByName(radio_element_name);
	var selected_assign_id = vpo_gv(e);
	return selected_assign_id;
}

function select_radio(radio_element_id) {
	var e = document.getElementById(radio_element_id);
	if (e) {
		e.checked = true; 
	}
}

function apply_class_to_div(div_element_id, class_name) {
	var d = document.getElementById(div_element_id);
	if (d) {
		d.className = class_name;
	}
}

