/* Shared function library */

function openNews(id){
	if($('newsItem_'+id).visible()){
		$('newsItem_'+id).hide();
		$('newsImg_'+id).src='/images/collapsed.gif';
	}else{
		$('newsItem_'+id).show();
		$('newsImg_'+id).src='/images/exploded.gif';
	}
}

function getLogicName(s){
	if(s=='{YDAY}') return 'Period: Yesterday';
	else if(s=='{TMBD}') return 'Period: Current month by day';
	else if(s=='{LMBD}') return 'Period: Last month by day';
	else if(s=='{CYMTD}') return 'Period: Calendar year by month';
	else if(s=='{FYMTD}') return 'Period: Fiscal year by month';
	else if(s=='{L12M}') return 'Period: Last 12 months';
	else if(s=='{LSUN}') return 'Period: Last Sunday';
	else if(s=='{LMON}') return 'Period: Last Monday';
	else if(s=='{LTUE}') return 'Period: Last Tuesday';
	else if(s=='{LWED}') return 'Period: Last Wednesday';
	else if(s=='{LTHU}') return 'Period: Last Thursday';
	else if(s=='{LFRI}') return 'Period: Last Friday';
	else if(s=='{LSAT}') return 'Period: Last Saturday';
	
	else return 'Unknown';
}

function getLogicKey(s){
	if(s=='{YDAY}') return 'YYYYMMDD';
	else if(s=='{TMBD}') return 'YYYYMMDD';
	else if(s=='{LMBD}') return 'YYYYMMDD';
	else if(s=='{CYMTD}') return 'YYYYMM';
	else if(s=='{FYMTD}') return 'YYYYMM';
	else if(s=='{L12M}') return 'YYYYMM';
	else if(s=='{LSUN}') return 'YYYYMMDD';
	else if(s=='{LMON}') return 'YYYYMMDD';
	else if(s=='{LTUE}') return 'YYYYMMDD';
	else if(s=='{LWED}') return 'YYYYMMDD';
	else if(s=='{LTHU}') return 'YYYYMMDD';
	else if(s=='{LFRI}') return 'YYYYMMDD';
	else if(s=='{LSAT}') return 'YYYYMMDD';
	else return 'Unknown';
}

function closeAllExtSearches(){
	if($('ExtSearch')!=null){
		$('ExtSearch').hide(); 
		if($('esLink')!=null){ $('esLink').update('Advanced Search Options'); }
		if($('esLinkD')!=null){ $('esLinkD').update('Advanced Search Options'); }
		if($('esLinkA')!=null){ $('esLinkA').update('Advanced Search Options'); }
	}
	if($('ExtEqptSearch')!=null){
		$('ExtEqptSearch').hide(); 
		if($('esLinkE')!=null){ $('esLinkE').update('Advanced Search Options'); }
	}
	if($('ExtCarrSearch')!=null){
		$('ExtCarrSearch').hide(); 
		if($('esLinkC')!=null){ $('esLinkC').update('Advanced Search Options'); }
	}
}

function toggleExtSearch(){
	if($('locOpt')!=null && $('locOpt').visible()){
		if($('ExtSearch').visible()){
			$('ExtSearch').hide(); 
			$('esLink').update('Advanced Search Options');
		}else{
			$('ExtSearch').show(); 
			$('esLink').update('Close Advanced Search');
			//if($('AAS')!=null) $('AAS').focus();
			if($('exFSearchButton')!=null) $('exFSearchButton').focus();
		}
	}
	
	if($('DepOpt')!=null && $('DepOpt').visible()){
		if($('ExtSearch').visible()){
			$('ExtSearch').hide(); 
			$('esLinkD').update('Advanced Search Options');
		}else{
			$('ExtSearch').show(); 
			$('esLinkD').update('Close Advanced Search');
			//if($('AAS')!=null) $('AAS').focus();
			if($('exFSearchButton')!=null) $('exFSearchButton').focus();
		}
	}
	
	if($('ArrOpt')!=null && $('ArrOpt').visible()){
		if($('ExtSearch').visible()){
			$('ExtSearch').hide(); 
			$('esLinkA').update('Advanced Search Options');
		}else{
			$('ExtSearch').show(); 
			$('esLinkA').update('Close Advanced Search');
			//if($('AAS')!=null) $('AAS').focus();
			if($('exFSearchButton')!=null) $('exFSearchButton').focus();
		}
	}
}

function toggleEqptSearch(){
	if($('eqptOpt')!=null && $('eqptOpt').visible()){
		if($('ExtEqptSearch').visible()){
			$('ExtEqptSearch').hide(); 
			$('esLinkE').update('Advanced Search Options');
		}else{
			$('ExtEqptSearch').show(); 
			$('esLinkE').update('Close Advanced Search');
			//if($('AES')!=null) $('AES').focus();
			if($('exESearchButton')!=null) $('exESearchButton').focus();
		}
	}
}

function toggleCarrSearch(){
	if($('carrOpt')!=null && $('carrOpt').visible()){
		if($('ExtCarrSearch').visible()){
			$('ExtCarrSearch').hide(); 
			$('esLinkC').update('Advanced Search Options');
		}else{
			$('ExtCarrSearch').show(); 
			$('esLinkC').update('Close Advanced Search');
			//if($('ACS')!=null) $('ACS').focus();
			if($('exCSearchButton')!=null) $('exCSearchButton').focus();
		}
	}
}

function checkExtSearch(s){
	if(s=='locOpt' || s=='DepOpt' || s=='ArrOpt' || s=='eqptOpt' || s=='carrOpt') {
		$('ExtSearchHolder').show(); 
	}else{
		$('ExtSearchHolder').hide(); 
	}
	
}

function switcher(obj,btn){

	OnOffX('b_Submit','off')
	
	for(var i=0;i<catalog.length;i++){
		if(catalog[i].toUpperCase()==obj.toUpperCase()){
			$(catalog[i]).show();
			if($('b_'+catalog[i]).hasClassName('coolButton')){
				$('b_'+catalog[i]).removeClassName('coolButton');
			}
			$('b_'+catalog[i]).addClassName('coolButtonSelected');
		}else{
			$(catalog[i]).hide();
			if($('b_'+catalog[i]).hasClassName('coolButtonSelected')){
				$('b_'+catalog[i]).removeClassName('coolButtonSelected');
			}
			$('b_'+catalog[i]).addClassName('coolButton');
		}
	}
	if(obj=='myReports')
		$('dispHolder').hide();
	else
		$('dispHolder').show();

	closeAllExtSearches();
	checkExtSearch(obj);
}

function hideCatalogObjects(){
	for(var i=0;i<catalog.length;i++){
		$(catalog[i]).hide();
		if($('b_'+catalog[i]).hasClassName('coolButtonSelected')){
			$('b_'+catalog[i]).removeClassName('coolButtonSelected');
		}
		$('b_'+catalog[i]).addClassName('coolButton');
	}
}

function OnOff(obj){
	if($(obj).hasClassName('coolButton')){
		$(obj).removeClassName('coolButton');
		$(obj).addClassName('coolButtonSelected');
	}else if($(obj).hasClassName('coolButtonSelected')){
		$(obj).removeClassName('coolButtonSelected');
		$(obj).addClassName('coolButton');
	}
}

function OnOffX(obj,state){
	if(state.toLowerCase()=="on"){
		if($(obj).hasClassName('coolButton')) $(obj).removeClassName('coolButton');
		if(!$(obj).hasClassName('coolButtonSelected')) $(obj).addClassName('coolButtonSelected');
	}else{
		if($(obj).hasClassName('coolButtonSelected')) $(obj).removeClassName('coolButtonSelected');
		if(!$(obj).hasClassName('coolButton')) $(obj).addClassName('coolButton');
	}
}

function OpenClose(ID,obj){
	if($(ID).src.toLowerCase().indexOf("open.gif")>=0){
		$(ID).src="/styles/images/close.gif";
		$(ID).alt="Close";
		$(obj).show();
	}else{
		$(ID).src="/styles/images/open.gif"
		$(ID).alt="Open";
		$(obj).hide();
	}
}

function dayCount(f){
    var ret="0";
/*    
    if(f.dstyle.value=='d'){
		ret=(getCount(",",f.dlist.value)+1)+"";
    }else if(f.dstyle.value=='m'){
		ret="MAX(DPM(DYYYYMM))";
    }else if(f.dstyle.value=='y'){
		if($("CalendarYear").checked){//calendar year
			var s = Date.UTC(f.fromdate.value,0,1);
			var e = Date.UTC(f.todate.value,11,31);
		}else{
			var s = Date.UTC((parseInt(f.fromdate.value,10)-1),9,1);
			var e = Date.UTC(f.todate.value,8,30);
		}
		ret=Math.ceil((e-s+86399)/86400000) +"";
    }else if(f.dstyle.value=='r'){
		var s = Date.UTC(f.fy_r.value,f.fm_r.value-1,f.fd_r.value);
		var e = Date.UTC(f.ty_r.value,f.tm_r.value-1,f.td_r.value);
		ret=Math.ceil((e-s+86399)/86400000) +"";		
	}else if(f.dstyle.value=='l'){
		if(f.dfld!=null && f.dfld.value=='YYYYMMDD'){
			ret="COUNT(DISTINCT YYYYMMDD)";
		}else if(f.dfld!=null && f.dfld.value=='YYYYMM'){
			ret="MAX(DPM(YYYYMM))";
		}else if(f.dfldD!=null && f.dfldD.value=='DYYYYMMDD'){
			ret="COUNT(DISTINCT DYYYYMMDD)";
		}else if(f.dfldD!=null && f.dfldD.value=='YYYYMM'){
			ret="MAX(DPM(DYYYYMM))";
		}
    }
*/    
    if(f.dfldD!=null && f.dfldD.value.indexOf("DYYYY")>=0)
        ret = "COUNT(DISTINCT DYYYYMMDD)";
    else
        ret = "COUNT(DISTINCT YYYYMMDD)";
   	return ret+"";
}

function getCount(what,where){
	var ret=0;
	var tmp=where+"";
	while(tmp.indexOf(what)>=0){
		tmp=tmp.substring(tmp.indexOf(what)+what.length,tmp.length);
		ret++;
	}
	return ret;
}

function addFld(ID) {
	//var txt = $('availFld_'+ID).firstChild.innerHTML;
	var txt = $('availFld_'+ID).childNodes[2].innerHTML;
	Element.hide('nofld');
	Element.hide('availFld_'+ID);
	var html = '<li id="pickedFld_'+ID+'"><a href="javascript:removeFld(\''+ID+'\');"><img src="/styles/images/remove.gif" alt="Remove" border=0></a>&nbsp;<font class=normal>'+txt+'</font></li>';
	new Insertion.Bottom('picked_fld', html);
}

function removeFld(ID) {
	Element.remove("pickedFld_"+ID);
	if ($('picked_fld').empty()){
		Element.show('nofld');
	}
	Element.show('availFld_'+ID);
}

function unselectAllFld() {
	var IDs = $('picked_fld').immediateDescendants().collect(function (li) {return li.id.substring(li.id.indexOf('_')+1,li.id.length);});
	IDs.each(removeFld);
}

function toggleFields(n){
	if(n==1){ $("groupDisplay").show(); $('noGrpAllowed').hide(); }
	else { $("groupDisplay").hide(); $('noGrpAllowed').show(); }
}

function CheckLocidGroup(s){
	var OEP35 = "ATL BOS BWI CLE CLT CVG DCA DEN DFW DTW EWR FLL HNL IAD IAH JFK LAS LAX LGA MCO MDW MEM MIA MSP ORD PDX PHL PHX PIT SAN SEA SFO SLC STL TPA";
	var OPSNET45 = "ABQ ATL BNA BOS BWI CLE CLT CVG DCA DEN DFW DTW EWR FLL HOU IAD IAH IND JFK LAS LAX LGA MCI MCO MDW MEM MIA MSP MSY OAK ORD PBI PDX PHL PHX PIT RDU SAN SEA SFO SJC SLC STL TEB TPA";
	var ASPM77 = "ABQ ANC ATL AUS BDL BHM BNA BOS BUF BUR BWI CLE CLT CVG DAL DAY DCA DEN DFW DTW EWR FLL GYY HNL HOU HPN IAD IAH IND ISP JAX JFK LAS LAX LGA LGB MCI MCO MDW MEM MHT MIA MKE MSP MSY OAK OGG OMA ONT ORD OXR PBI PDX PHL PHX PIT PSP PVD RDU RFD RSW SAN SAT SDF SEA SFO SJC SJU SLC SMF SNA STL SWF TEB TPA TUS VNY";
	var tmp=s.replace(/\s+$/,"").replace(/^\s+/,""); //trim
	if(tmp==OPSNET45) return "OPSNET 45";
	else if(tmp==OEP35) return "OEP 35";
	else if(tmp==ASPM77) return "ASPM 77";
	else return s;
}

var refresher;

function startScreenRefresh(){
	showSelected();
	refreshSelectedCounts();
	refresher = setTimeout("startScreenRefresh()",500);
}

function stopScreenRefresh(){
	clearTimeout(refresher);
}

function refreshSelectedCounts(){
	var tmp;
	var lbl;
	if($('tempLocidCount')!=null && $('ExtSearch')!=null){
		if($('ExtSearch').visible()){
			tmp = $('tempFac').immediateDescendants();
			lbl = ("Found: " + (tmp.length==0?"None":tmp.length));
			$('tempLocidCount').update(lbl);

			if($('workingFac')!=null && tmp.length==0 && !$('noTempFac').visible()){
				$('workingFac').show();
			}else{
				if($('workingFac')!=null) $('workingFac').hide();
			}
		}
	}

	if($('tempEqptCount')!=null && $('ExtEqptSearch')!=null){
		if($('ExtEqptSearch').visible()){
			tmp = $('tempEqpt').immediateDescendants();
			lbl = ("Found: " + (tmp.length==0?"None":tmp.length));
			$('tempEqptCount').update(lbl);

			if($('workingEqpt')!=null && tmp.length==0 && !$('noTempEqpt').visible()){
				$('workingEqpt').show();
			}else{
				if($('workingEqpt')!=null) $('workingEqpt').hide();
			}
		}
	}

	if($('tempCarrCount')!=null && $('ExtCarrSearch')!=null){
		if($('ExtCarrSearch').visible()){
			tmp = $('tempCarr').immediateDescendants();
			lbl = ("Found: " + (tmp.length==0?"None":tmp.length));
			$('tempCarrCount').update(lbl);

			if($('workingCarr')!=null && tmp.length==0 && !$('noTempCarr').visible()){
				$('workingCarr').show();
			}else{
				if($('workingCarr')!=null) $('workingCarr').hide();
			}
		}
	}
}

function formatLocids(s){
    var ret="",work=s+"",tmp="";
    while(work.indexOf(",")>=0){
        tmp=work.substring(0,work.indexOf(","));
        work=work.substring(work.indexOf(",")+1,work.length);
        ret+= ((ret==""?"":",")+"'"+(tmp.length<4?" ":"")+tmp+"'");
    }
    ret+= ((ret==""?"":",")+"'"+(work.length<4?" ":"")+work+"'");
    return ret;
}
