/*****************************************************************************************************************************************
  Language & version : JavaScript, 1.2
  Unit         :
  FormName     :
  Heirarchy    :
  Tables used  :
  Done by      :   Deep Kumar                              Dt. : 10-06-04
  Reviewed by : 		       Dt :
  Description  : this script functions will get the menu_id querystring value
				 and prints the sub links, if any, of the link. The script has two functions
					print_sub_links(menuid,level,menu_count) will return the sub link structure in HTML
					get_sub_links(query_str,level) will split the query string and extracts the menu_id value and calls print_sub_links(menuid,level,menu_count)
  Attention : 	

  Modifications...
  Done by     :                                Dt. :		Req.No :
  Description :
*******************************************************************************************************************************************/

var sub_links_val; //stores the html for sub links on the side
var level; // identifies whether level of link
sub_links_val = "";
var menu_count = 0; // stores the no of menus 
									
//
/*****************************************************************************************************************************************
Name        : print_sub_links
Done by     :  Deep Kumar                              Dt. : 10-06-04
Description :  this fn will return the html code of the sublinks (get the sublinks) for a corresponding main link
Visiblity (Private\Protected\Public) : Public
Parameters: menuid,level,menu_count
			argument menuid is the query string value passed to display the sublinks (example, ../php/corporate.php?menu_id=corp)
			argument level is the level of the link structure (can be 'main' or 'sub') 
			argument menu_count is the no of sublinks for a link. it is stored in menu_data.js file (example: menu_corp_count = 6;)

ReturnValue(if relevant) : returns the html code
Attention :

Modifications...
  Done by     : Sacher                               Dt. :01.09.2005		Req.No :
  Description : Added provision to specify the target frame

*******************************************************************************************************************************************/
function print_sub_links(menuid,level,menu_count)
{
		
		for(var m = 1; m <= menu_count; m++)
		{													
			var sub_links = new Object; // used to store the name value pair, urlname and link name
			var sub_links_str =eval("menu_"+menuid+"_"+m); //reads the menu item variable from menu_data.js
			var sub_links_pairs = sub_links_str.split(";"); //to get name value pairs of url and linkname
			var sub_menu = '0';
			for (var j = 0; j < sub_links_pairs.length; j++)
			{
				var posn = sub_links_pairs[j].indexOf('='); // to get linkname and url
				if (posn == -1) continue;
				var arg_name = sub_links_pairs[j].substring(0,posn); 
				var arg_value = sub_links_pairs[j].substring(posn + 1);	
				sub_links[arg_name] = unescape(arg_value);
				
				var sub_target = "_parent";
				if(arg_name == "text")
				{
					var sub_text = arg_value;// stores link name
				}
				if(arg_name == "url")
				{
					var sub_url = arg_value;// stores url
				}
				if(arg_name == "target") 
				{
					 sub_target = arg_value;// target frame
				}
				if(arg_name == "showmenu")
				{
					sub_menu = arg_value;// to find out any subs are there for this one
				}
				
			}												
			var nxt_lvl_pos  = sub_url.indexOf('?'); // 
			var nxt_lvl = sub_url.substring(nxt_lvl_pos + 1); 
			
			var more_link = "";
			var start_div = "";
			
			if (sub_menu != '0') // there is a sub link
			{
				more_link  = "&nbsp;&nbsp;<a id=fold-" + menuid +m+ " href=javascript:Toggle('"+menuid +m+"')><IMG src='../images/arrow_right.gif' hspace=0 vspace=0 border=0 alt='Click to expand'  align='absbottom'> </a>";
				start_div = "<tr><td><DIV id=" + menuid +m+ " style='DISPLAY: none; MARGIN-LEFT: 1em'> <TABLE cellSpacing=0 cellPadding=3 border=0>"
			}
				sub_links_val += "<tr><td><a href='" +sub_url + "' class='pageLinks' target='"+ sub_target+"'>" + sub_text + "</a>" + more_link + "</td></tr>" + start_div;
														
			if (sub_menu != '0')
			{
				get_sub_links(nxt_lvl,'sub'); // calling recursively to get sub links, if any													
			}
		}
		if(level == 'sub')
		{
			sub_links_val += "</TABLE></DIV></TD></TR>";
		}
		
	return sub_links_val;
}

/*****************************************************************************************************************************************
Name        : get_sub_links
Done by     :  Deep Kumar                              Dt. : 10-06-04
Description :  This function will get the menuid for a particular url string
Visiblity (Private\Protected\Public) : Public
Parameters: query_str,level
					argument query_str is the link url value passed to extract the menu_id value
					argument level is the level of the link structure (can be 'main' or 'sub') 
ReturnValue(if relevant) : returns menuid for a particular url string
Attention :

Modifications...
  Done by     :                                Dt. :		Req.No :
  Description :

*******************************************************************************************************************************************/
function get_sub_links(query_str,level)
{
	var args = new Object;
	var pairs = query_str.split("&");
	for (var i = 0; i < pairs.length; i++)
	{
		var pos = pairs[i].indexOf('=');
		if (pos == -1) continue;
		var arg_name = pairs[i].substring(0,pos); //stores the menu_id string
		var value = pairs[i].substring(pos + 1); // stores the menu_id value
		args[arg_name] = unescape(value);
		if (arg_name == "menu_id")
		{
			var ret_str =  '';
			menu_count = eval("menu_"+args[arg_name]+"_count");
			var ret_str = print_sub_links(args[arg_name],level,menu_count); //calling the print_sub_links() for getting the links
			
		}
									
	}
	return ret_str;
}