/***************************************/
// jQuery Tabber
// By Jordan Boesch
// www.boedesign.com
// Dec 25, 2007 (Merry Christmas!)
/***************************************/


(function($){

		$.jclicktabber = function(params){
				
				// parameters
				var navDiv = params.mainLinkTag;
				var selectedClass = params.activeLinkClass;
				var hiddenContentDiv = params.hiddenContentClass;
				var showDefaultTab = params.showDefaultTab;
				var showErrors = params.showErrors;
				var effect = params.effect;
				var effectSpeed = params.effectSpeed;
				
				// If error checking is enabled
				if(showErrors){
					if(!$(navDiv).attr('title')){
						alert("ERROR: The elements in your mainLinkTag paramater need a 'title' attribute.\n ("+navDiv+")");	
						return false;
					}
					else if(!$("."+hiddenContentDiv).attr('id')){
						alert("ERROR: The elements in your hiddenContentClass paramater need to have an id.\n (."+hiddenContentDiv+")");	
						return false;
					}
				}
				
				// If we want to show the first block of content when the page loads
				if(!isNaN(showDefaultTab)){
					showDefaultTab--;
					//$("."+hiddenContentDiv+":eq("+showDefaultTab+")").css('display','block');
					$(navDiv+":eq("+showDefaultTab+")").addClass(selectedClass);	
					var defaultContentDiv = $(navDiv+":eq("+showDefaultTab+")").attr('title');
					$("#"+defaultContentDiv).fadeIn(0);
				}
				
				// each anchor
				$(navDiv).each(function(){
										
					$(this).click(function(){
						// once clicked, remove all classes
						$(navDiv).each(function(){
							$(this).removeClass();
						})
											

						// hide all content
						$("."+hiddenContentDiv).css('display','none');
						
						// now lets show the desired information
						$(this).addClass(selectedClass);
						var contentDivId = $(this).attr('title');
						
						if(effect != null){
							
							switch(effect){
								
								case 'slide':
								$("#"+contentDivId).slideDown(effectSpeed);
								break;
								case 'fade':
								$("#"+contentDivId).fadeIn(effectSpeed);
								break;
								
							}
								
						}
						else {
							$("#"+contentDivId).css('display','block');
						}
						return false;
					})
					
				})
			
			}
			
			$.jhovertabber = function(params){
				
				// parameters
				var navDiv = params.mainLinkTag;
				var selectedClass = params.activeLinkClass;
				var hiddenContentDiv = params.hiddenContentClass;
				var showDefaultTab = params.showDefaultTab;
				var showErrors = params.showErrors;
				var effect = params.effect;
				var effectSpeed = params.effectSpeed;
				
				// If error checking is enabled
				if(showErrors){
					if(!$(navDiv).attr('title')){
						alert("ERROR: The elements in your mainLinkTag paramater need a 'title' attribute.\n ("+navDiv+")");	
						return false;
					}
					else if(!$("."+hiddenContentDiv).attr('id')){
						alert("ERROR: The elements in your hiddenContentClass paramater need to have an id.\n (."+hiddenContentDiv+")");	
						return false;
					}
				}
				
				// If we want to show the first block of content when the page loads
				if(!isNaN(showDefaultTab)){
					showDefaultTab--;
					//$("."+hiddenContentDiv+":eq("+showDefaultTab+")").css('display','block');
					$(navDiv+":eq("+showDefaultTab+")").addClass(selectedClass);	
					var defaultContentDiv = $(navDiv+":eq("+showDefaultTab+")").attr('title');
					$("#"+defaultContentDiv).fadeIn(0);
				}
				
				// each anchor
				$(navDiv).each(function(){
										
					$(this).hover(function(){
						// once hover, remove all classes
						$(navDiv).each(function(){
							$(this).removeClass();
						})
											

						// hide all content
						$("."+hiddenContentDiv).css('display','none');
						
						// now lets show the desired information
						$(this).addClass(selectedClass);
						var contentDivId = $(this).attr('title');
						
						if(effect != null){
							
							switch(effect){
								
								case 'slide':
								$("#"+contentDivId).slideDown(effectSpeed);
								break;
								case 'fade':
								$("#"+contentDivId).fadeIn(effectSpeed);
								break;
								
							}
								
						}
						else {
							$("#"+contentDivId).css('display','block');
						}
						return false;
					})
					
				})
			
			}
	
        $.jclicktabber_iframe = function(params){				
				// parameters
				var navDiv = params.mainLinkTag;
				var selectedClass = params.activeLinkClass;
				var hiddenContentDiv = params.hiddenContentClass;
				var showDefaultTab = params.showDefaultTab;
				var showErrors = params.showErrors;
				var effect = params.effect;
				var effectSpeed = params.effectSpeed;
				
				// If error checking is enabled
				if(showErrors){
					if(!$(navDiv).attr('nav')){
						alert("ERROR: The elements in your mainLinkTag paramater need a 'nav' attribute.\n ("+navDiv+")");	
						return false;
					}
					else if(!$("."+hiddenContentDiv).attr('id')){
						alert("ERROR: The elements in your hiddenContentClass paramater need to have an id.\n (."+hiddenContentDiv+")");	
						return false;
					}
				}
				
				// If we want to show the first block of content when the page loads
				if(!isNaN(showDefaultTab)){
					showDefaultTab--;
					//$("."+hiddenContentDiv+":eq("+showDefaultTab+")").css('display','block');
					$(navDiv+":eq("+showDefaultTab+")").addClass(selectedClass);	
					var defaultContentDiv = $(navDiv+":eq("+showDefaultTab+")").attr('nav');
					$("#"+defaultContentDiv).fadeIn(0);
				}
				
				// each anchor
				$(navDiv).each(function(){
										
					$(this).click(function(){
					var contentDivId = $(this).attr('nav');
					var iframe_ref = $(this).attr('ref');
					if ($("#if"+contentDivId).attr("src")=="")
					{
					    if(iframe_ref=="FundNavOverviewCompany")
					        $("#if"+contentDivId).attr("src",iframe_ref+".aspx?cid=<%=Company_ID%>");
					    else
					        $("#if"+contentDivId).attr("src",iframe_ref+".aspx?fid=<%=Fund_Code%>");
					}
					//setFocus(contentDivId);
						// once clicked, remove all classes
						$(navDiv).each(function(){
							$(this).removeClass();
						})						

						// hide all content
						$("."+hiddenContentDiv).css('display','none');
						
						// now lets show the desired information
						$(this).addClass(selectedClass);				
						if(effect != null){
							
							switch(effect){
								
								case 'slide':
								$("#"+contentDivId).slideDown(effectSpeed);
								break;
								case 'fade':
								$("#"+contentDivId).fadeIn(effectSpeed);
								break;
								
							}
								
						}
						else {
							$("#"+contentDivId).css('display','block');
						}
						return false;
					})					
				})			
			};	
        $.jclicktabber_div = function(params){				
				// parameters
				var navDiv = params.mainLinkTag;
				var selectedClass = params.activeLinkClass;
				var hiddenContentDiv = params.hiddenContentClass;
				var showDefaultTab = params.showDefaultTab;
				var showErrors = params.showErrors;
				var effect = params.effect;
				var effectSpeed = params.effectSpeed;
				var appURL=params.appURL;
				var appParams=params.appParams;
				
				// If error checking is enabled
				if(showErrors){
					if(!$(navDiv).attr('nav')){
						alert("ERROR: The elements in your mainLinkTag paramater need a 'nav' attribute.\n ("+navDiv+")");	
						return false;
					}
					else if(!$("."+hiddenContentDiv).attr('id')){
						alert("ERROR: The elements in your hiddenContentClass paramater need to have an id.\n (."+hiddenContentDiv+")");	
						return false;
					}
				}
				
				// If we want to show the first block of content when the page loads
				if(!isNaN(showDefaultTab)){
					showDefaultTab--;
					//$("."+hiddenContentDiv+":eq("+showDefaultTab+")").css('display','block');
					$(navDiv+":eq("+showDefaultTab+")").addClass(selectedClass);	
					var defaultContentDiv = $(navDiv+":eq("+showDefaultTab+")").attr('nav');
					$("#"+defaultContentDiv).fadeIn(0);
				}
				
				// each anchor
				$(navDiv).each(function(){										
					$(this).click(function(){
					var contentDivId = $(this).attr('nav');
					var app_ref = $(this).attr('ref');
					var app_param = $(this).attr('param');
					if( $("#"+contentDivId).html()=="")
					{
					    if(app_ref.match("javascript:"))
					    { $("#"+contentDivId).html("<script type='text/javascript'>"+app_ref.substring(11)+"</script>");if(app_param=="false") return;}
					    else
					    {   $("#"+contentDivId).html("<img alt='wait' src='/PFService/images/ing.gif'/>");
					        $.ajax({type: "POST",
                                    url: app_ref,
                                    data: app_param,
                                    success: function(html){$("#"+contentDivId).html(html);}
                            });	}
                    }
                    //setFocus(contentDivId);
						// once clicked, remove all classes
					$(navDiv).each(function(){
						$(this).removeClass();
					})						

					// hide all content
					$("."+hiddenContentDiv).css('display','none');
					
					// now lets show the desired information
					$(this).addClass(selectedClass);				
					if(effect != null){						
						switch(effect){							
							case 'slide':
							$("#"+contentDivId).slideDown(effectSpeed);
							break;
							case 'fade':
							$("#"+contentDivId).fadeIn(effectSpeed);
							break;							
						}							
					}
					else {
						$("#"+contentDivId).css('display','block');
					}
					return false;
					})					
				})			
			}				
})(jQuery);	
