/*
	Bugs:
	parsing the menu details array is still a bit ropey when we are in edit mode
*/
function ftcbmenu_load_page(arg_d,arg_instance_id,arg_selected_index)
{
	var var_return_page = location.protocol + "//"+location.host+"/index.phtml?d="+arg_d;
	if (arg_selected_index > -1)
	{
		if (glob_frgcb_menus[arg_selected_index].selected_index > -1)
		{
			var_return_page = run_php_event(location.protocol + "//"+location.host+"/index.phtml?d="+arg_d,'select_item',arg_instance_id,''+parseInt(glob_frgcb_menus[arg_selected_index].selected_index));
		}
	}	

	return var_return_page;
	//glob_frgcb_menus[arg_menu_index]
}


function get_ftmenu_href (arg_link_type,arg_link_value,arg_target,arg_disable,arg_url,arg_instance_id,arg_selected_index)
{
	var var_return_page = '';
	var var_return_action = '';
	var var_return_target = '';

	if (arg_disable != 1)
	{	
		if ((arg_link_value == 'none')||(arg_link_value==''))
		{
			// do nothing	
			var_return_page = '';
		}else if (arg_link_type == 'i')
		{
			var temp_value = arg_link_value.split('|');
			if ((temp_value[0] == 'none') || (temp_value[0] == ''))
			{
				// do nothing
				var_return_page = '';
			}else
			{
				var_return_page = "ftcbmenu_load_page("+temp_value[0]+",\'"+arg_instance_id+"\',"+arg_selected_index+")";
			}
		}else if (arg_link_type == 'e')
		{
			var temp_value = arg_link_value.split('|');
			if (arg_target != 'jscript')
			{
				var_return_page= "\'"+temp_value[0]+"\'";
			}else
			{
				var_return_page= temp_value[0];
			}			
			
		}else if (arg_link_type == 'a')
		{
			var link_value_array = new Array();
			link_value_array = arg_link_value.split(',');
			var var_function_name = link_value_array[0];
			var var_function_args = link_value_array.slice(1);			
			var_return_action=var_function_name+"('"+var_function_args.join(",")+"');";	
		}else if (arg_link_type == 'f')
		{
			temp_value = arg_link_value.split('|');
			var_return_page = "\'"+location.protocol + "//"+location.host+temp_value[0]+"\'";
		}else if (arg_link_type == 'm')
		{
			var_return_page = "\'"+arg_link_value+"\'";
		}else if (arg_link_type == 'x')
		{
			var temp_value = arg_link_value.split('|');
			var_return_page = "\'/association.phtml?lookup=" +temp_value[0]+ "\'";
		}else 
		{
			var_return_page = "\'"+arg_url+"\'";
		}

		if (arg_target == 'current')
		{
			var_return_target = '';
		}else if (arg_target == 'jscript')
		{
			var_return_target = '';
			var_return_action = var_return_page.split('javascript:')[1];
			var_return_page = '';
		}else
		{
			var_return_target = arg_target;			
		}
	}
	var return_array = Array();
	return_array['page'] = var_return_page;
	return_array['js_action'] = var_return_action;
	return_array['target'] = var_return_target;

	return return_array;
}

function cbm_parse_menu_array(arg_menu_bar,arg_menu_array,arg_css_class_normal,arg_css_class_hover,arg_other_properties,arg_edit_mode,arg_menu_type,arg_instance_id)
{
	/*
	strcture is
	name: the name of the item
		url: depracated. the url to go to
	target: this can be new, current or jscript
	type: this can be i,e,m,a,f
	value: the value of the menu. the action performed depends on type
	chidren: number of kids
	*/


	var var_number_children_index = glob_cur_pos+5;
	var var_array_offset = 6;

			var var_label = arg_menu_array[glob_cur_pos];

	var var_url = arg_menu_array[glob_cur_pos+1];
	var var_target  = arg_menu_array[glob_cur_pos+2];
	var var_type  = arg_menu_array[glob_cur_pos+3];
	var var_value  = arg_menu_array[glob_cur_pos+4];

	arg_menu_bar.is_container = (typeof(arg_menu_bar.is_container) == 'undefined'?false:arg_menu_bar.is_container);
	if(arg_menu_bar.is_container)
	{
		var var_menu_bar_index = arg_menu_bar.index;		
	}else
	{
		var var_menu_bar_index = -1;
	}

	var tmp_href =get_ftmenu_href(var_type,var_value,var_target,(arg_edit_mode?1:0),var_url,arg_instance_id,var_menu_bar_index);
	var var_menu_id = arg_menu_bar.add_menuitem('',var_label,tmp_href['js_action'],tmp_href['page'],tmp_href['target']);

	glob_cur_pos += var_array_offset;
	var number_of_children = parseInt(arg_menu_array[var_number_children_index]);

	if (number_of_children)
	{
		if ((arg_menu_type == -1) || (arg_edit_mode==1))
		{
			for (var i = 0; i < number_of_children;i++)
			{
				cbm_parse_menu_empty(arg_menu_array);
			}
		}else
		{			
			var tmp_menu = new crossb_menu_bar(sub_type, sub_width,'', sub_align,0,sub_border_color,sub_splitter_color,arg_css_class_normal,arg_css_class_hover,'',arg_other_properties); 
			for (var i = 0; i < number_of_children;i++)
			{		
				cbm_parse_menu_array(tmp_menu,arg_menu_array,arg_css_class_normal,arg_css_class_hover,arg_other_properties,arg_edit_mode,(arg_menu_type==2?-1:arg_menu_type),arg_instance_id);			
			}
			
			arg_menu_bar.add_popup_menu(var_menu_id,tmp_menu);		
		}
	}
}

function cbm_parse_menu_empty(arg_menu_array)
{
	
	// this is to parse the menu array without actall creating any elements
	/*
	strcture is
	name: the name of the item
	url: depracated. the url to go to
	target: this can be new, current or jscript
	type: this can be i,e,m,a,f
	value: the value of the menu. the action performed depends on type
	chidren: number of kids
	*/

	var var_number_children_index = glob_cur_pos+5;
	var number_of_children = parseInt(arg_menu_array[var_number_children_index]);
	var var_array_offset = 6;
	glob_cur_pos += var_array_offset;

	if (number_of_children)
	{	
		for (var i = 0; i < number_of_children;i++)
		{
			cbm_parse_menu_empty(arg_menu_array);
		}
	}
}

function cbm_convert_font_size(arg_name)
{
		var var_font_array = Array();
		
		var_font_array['xx-small'] = "7";
		var_font_array['x-small']  = "10";
		var_font_array['small']    = "12";
		var_font_array['medium']   = "14";
		var_font_array['large']    = "17";
		var_font_array['x-large']  = "22";
		var_font_array['xx-large'] = "36";

		if (var_font_array[arg_name])
		{
			return var_font_array[arg_name]+'pt';
		}else
		{
			return '';
		}

		
	}	
//window.glob_top_window.ftcbmenu_load_page = ftcbmenu_load_page;

