var aryPerformanceTabNames = new Array("TAB_DAILY_PERFORMANCE","TAB_DAILY_NET_ASSET_VALUES","TAB_DISTRIBUTIONS");
var aryPerformanceDivNames = new Array("Tab0","Tab1","Tab2");
var aryPerformanceTabNumbers = new Array("l_Tab0","l_Tab1","l_Tab2");
var aryInitialLoadPage = new Array("/public/performance/perf_index_redesign.html?divid=tab_daily_performance","/public/performance/perf_index_redesign.html","/public/performance/perf_index_redesign.html?divid=tab_distributions");
aryPerformanceTabNames[aryPerformanceTabNames.length] = "TAB_PERFORMANCE_UPDATE";
aryPerformanceDivNames[aryPerformanceDivNames.length] = "Tab3";
aryPerformanceTabNumbers[aryPerformanceTabNumbers.length] = "l_Tab3";
aryInitialLoadPage[aryInitialLoadPage.length] = "/public/performance/perf_index_redesign.html?divid=tab_performance_update";
aryPerformanceTabNames[aryPerformanceTabNames.length] = "TAB_PORTFOLIO_OPTIMIZATION";
aryPerformanceDivNames[aryPerformanceDivNames.length] = "Tab4";
aryPerformanceTabNumbers[aryPerformanceTabNumbers.length] = "l_Tab4";
aryInitialLoadPage[aryInitialLoadPage.length] = "/public/performance/perf_index_redesign.html?divid=tab_portfolio_optimization";

// functionality for performance tabs
var userAgent = navigator.userAgent.toLowerCase(); 
var userApp = navigator.appName.toLowerCase();
var userVersion = parseFloat(navigator.appVersion);
var userAppVersion = navigator.appVersion.toLowerCase();

function fncSetTabs(strSelectedTab){
	for(var i = 0; i < aryPerformanceTabNames.length; i++){		
		if(aryPerformanceTabNames[i] == strSelectedTab){		
			fncLoadValues(aryPerformanceTabNames[i]);
		}	
	}
}

function getNAV() {
	var strFrameSrc = document.getElementById("IFRM_NAV").src;	
	//if(strFrameSrc.indexOf("mutual_fund_nav") == -1) {		
		document.navValuesChoose.values.click(); //submit NAV form
	//}	
}

function loadPerformance() {
	if(document.contractPerfChoose.selShareClass.options[document.contractPerfChoose.selShareClass.selectedIndex].value > ""){
		if(fncCheckDateInUrl(document.contractPerfChoose,document.getElementById("IFRM_DAILY").src) != false){
			document.contractPerfChoose.values.click();
		}
	}
}

//Code to run the form when the tab is clicked on
function fncUpdateDropDowns(frmName,frmNameSecondary,strForm){
	var strFormUrl = "";
	var strNewReport = "yes";
	if(strForm.indexOf("navValuesChoose") != -1){
		//duv url
		//strFormUrl = window.frames[0].document.location.href;
		strFormUrl = document.getElementById("IFRM_NAV").src;
	}else{
		//daily performance url
		//strFormUrl = window.frames[1].document.location.href;
		strFormUrl = document.getElementById("IFRM_DAILY").src;
	}

	if(fncCheckDateInUrl(frmName,frmNameSecondary,strForm,strFormUrl) != false){
		//submitPerformance(frmName);
		//click the submit button for the form
		frmName.values.click();
	}
}

function fncCheckDateInUrl(frmName,frmNameSecondary,strForm,strFormUrl){
	if(strFormUrl.indexOf("Month=" + frmName.sltMonth.options[frmName.sltMonth.selectedIndex].value + "&") != -1){
		//if month found check day
		if(strFormUrl.indexOf("Day=" + frmName.sltDay.options[frmName.sltDay.selectedIndex].value + "&") != -1){
			//if day found check year
			if(strFormUrl.indexOf("Year=" + frmName.sltYear.options[frmName.sltYear.selectedIndex].value) != -1){
				//if year found then selected date is the same as url date
				return false;
			}
		}
	}
}

//Update form drop downs when one of the forms is run
function fncSetDateDropDowns(frmToChange,frmSubmitted,strFormToChangeName){
	for(var x = 0; x < frmToChange.sltMonth.length; x++){
		if(frmToChange.sltMonth.options[x].value == frmSubmitted.sltMonth.options[frmSubmitted.sltMonth.selectedIndex].value){
			frmToChange.sltMonth.options[x].selected = true;
			fncSetDays(frmToChange.sltMonth);
		}
	}
	for(var y = 0; y < frmToChange.sltDay.length; y++){
		if(frmToChange.sltDay.options[y].value == frmSubmitted.sltDay.options[frmSubmitted.sltDay.selectedIndex].value){
			frmToChange.sltDay.options[y].selected = true;
		}
	}
	for(var z = 0; z < frmToChange.sltYear.length; z++){
		if(frmToChange.sltYear.options[z].value == frmSubmitted.sltYear.options[frmSubmitted.sltYear.selectedIndex].value){
			frmToChange.sltYear.options[z].selected = true;
			fncSetDays(frmToChange.sltMonth);
		}
	}
}

function fncClearFrameSrc(strFrame){
	var strFrameSrc = document.getElementById(strFrame).src;
	if(strFrame == "IFRM_NAV"){
		if(strFrameSrc.indexOf("mutual_fund_nav") == -1){	//not the nav page
			if(fncValidateDate(document.navValuesChoose,"noform") != false){	//date is valid
				document.navValuesChoose.values.click();
			}else{		//date is not valid
				fncSetDefaultDate(document.navValuesChoose.sltMonth);	//set date drop down to current date
				document.navValuesChoose.values.click();
			}
		}else{	//is the nav page
			//date in drop down is same as url
			if(fncCheckDateInUrl(document.navValuesChoose,strFrameSrc) != false){
				if(fncValidateDate(document.navValuesChoose,"noform") != false){
					document.navValuesChoose.values.click();
				}
			}
		}
	}
}

function fncLoadValues(strTabShowing){	
	if(strTabShowing == aryPerformanceTabNames[1]){			//NAVs
		fncClearFrameSrc("IFRM_NAV");
	}else if(strTabShowing == aryPerformanceTabNames[0]){	//Daily Performance
		if(document.contractPerfChoose.selShareClass.options[document.contractPerfChoose.selShareClass.selectedIndex].value > ""){
			if(fncCheckDateInUrl(document.contractPerfChoose,document.getElementById("IFRM_DAILY").src) != false){
				document.contractPerfChoose.values.click();
			}
		}
	}
}

function fncCheckDateInUrl(frmName,strFormUrl){
	//if effective date is found in url don't run form again
	var strEffectiveDate = frmName.sltMonth.options[frmName.sltMonth.selectedIndex].value + "/" + frmName.sltDay.options[frmName.sltDay.selectedIndex].value + "/" + frmName.sltYear.options[frmName.sltYear.selectedIndex].value;
	if(strFormUrl.indexOf("FUND_VALUE_EFFECTIVE_DATE=" + strEffectiveDate) != -1){
		return false;
	}
}


/* when a specific layer is called in the url, 
	this will open that layer instead of the default first layer */
function perFncLoadThisDiv(){
	var locationHref = window.location.href;	
	locationHref = locationHref.toLowerCase();	

	if (locationHref.indexOf("divid") > 0) {
		var param = locationHref.indexOf("=");
		param = param + 1;
		var paramDivID = locationHref.slice(param);
		paramDivID = paramDivID.toUpperCase();
		if (paramDivID > "") {
			if(paramDivID == "PORTFOLIO_OPTIMIZATION"){
				fncSetTabs("TAB_DAILY_PERFORMANCE");
			//	fncLoadPerformanceUpdate("update");
			}else{
				for (var n = 0; n < aryPerformanceTabNames.length; n++) {
					if (paramDivID == aryPerformanceTabNames[n]) {
						fncSetTabs(paramDivID);
						break;
					}
				}
			}
		}else{
			fncSetTabs("TAB_DAILY_PERFORMANCE");
		}
	}else{
		fncSetTabs("TAB_DAILY_PERFORMANCE");
	}
}

function fncPerfOnPageLoad(){
	fncSetDefaultDate(document.navValuesChoose.sltMonth);
	fncSetDefaultDate(document.contractPerfChoose.sltMonth);
	document.contractPerfChoose.selShareClass.options[1].selected = true;
	document.contractPerfChoose.FUND_CLASS_CODE.value = document.contractPerfChoose.selShareClass.options[document.contractPerfChoose.selShareClass.selectedIndex].value;
	perFncLoadThisDiv();
	
}


