var RecentEventsObject;

// Global to hold current range of event dates (for filtering/paging):
var gEventPeriod=1;
var gFilter="";
var gAutoRefresh=false;
var gTimeoutIntervalArray=new Array(0,60000*1.5 /* 90 seconds */,60000*5 /*5 minutes */,60000*15 /* 15 minutes */);
var gTimeoutImageArray=new Array("NoAutoRefresh","90SecondRefresh","5MinuteRefresh","15MinuteRefresh");
var gTimeoutIntervalIndex=0;
var gPage=1;
var gTimeoutArray=new Array; //to store Timeout that has been created

function DisplayEvent(AEventID)
{
  var vURL=document.URL.substring(0,document.URL.lastIndexOf('/')+1)+"modules/recentEvents/eventDetail.php";
  var vQueryString="?eventid="+AEventID;
  var vWindow=window.open(vURL+vQueryString,'EventDetail',
	  'location=no,resizable=yes,toolbar=no,scrollbars=yes,status=yes,directories=no,menubar=no,width=800,height=520');
  vWindow.focus();

  //return false;  
  return true;
}

function FilterEvents()
{
  var vURL=document.URL.substring(0,document.URL.lastIndexOf('/')+1)+"modules/recentEvents/getRecentEvents.php";

  gFilter="";
  if(!document.recentEventsForm.recentEventsSelectCorporateActions.checked||
     !document.recentEventsForm.recentEventsSelectDividends.checked||
     !document.recentEventsForm.recentEventsSelectFixedIncome.checked||
     !document.recentEventsForm.recentEventsSelectMuniCalledBond.checked||
     !document.recentEventsForm.recentEventsSelectUITEvents.checked)
  {
  	if(document.recentEventsForm.recentEventsSelectCorporateActions.checked)
  	{
  	  if(gFilter!="")
  	    gFilter+=',';
  	  gFilter=gFilter+'1';
  	}
  	if(document.recentEventsForm.recentEventsSelectDividends.checked)
  	{
  	  if(gFilter!="")
  	    gFilter+=',';
  	  gFilter=gFilter+'2';
  	}
  	if(document.recentEventsForm.recentEventsSelectFixedIncome.checked)
  	{
  	  if(gFilter!="")
  	    gFilter+=',';
  	  gFilter=gFilter+'3';
  	}
  	if(document.recentEventsForm.recentEventsSelectMuniCalledBond.checked)
  	{
  	  if(gFilter!="")
  	    gFilter+=',';
  	  gFilter=gFilter+'4';
  	}
  	if(document.recentEventsForm.recentEventsSelectUITEvents.checked)
  	{
  	  if(gFilter!="")
  	    gFilter+=',';
  	  gFilter=gFilter+'5';
  	}
  }

  var vQueryString="?days="+gEventPeriod;
  if(gFilter!="")
    vQueryString=vQueryString+'&filter='+gFilter;
  vQueryString=vQueryString+'&page='+gPage;

  var vMessage="Filtering events...";
  getFrameContent(RecentEventsObject,'recentEventsFrame','recentEventsDiv',vURL+vQueryString,vMessage);

  for(var i in gTimeoutArray)
  {
    clearTimeout(gTimeoutArray[i]);
  }

  if(gTimeoutIntervalArray[gTimeoutIntervalIndex]>0)
  {
    //setTimeout("FilterEvents();",gTimeoutIntervalArray[gTimeoutIntervalIndex]);
    gTimeoutArray[gTimeoutIntervalIndex] = setTimeout("FilterEvents();",gTimeoutIntervalArray[gTimeoutIntervalIndex]);
  }
}

function PageEvents(APage)
{
  if(!APage)
    APage=1;

  gPage=APage;
  return FilterEvents();
}

function RefreshEvents(ADays)
{
  var vURL=document.URL.substring(0,document.URL.lastIndexOf('/')+1)+"modules/recentEvents/getRecentEvents.php";
	var vQueryString="?days="+ADays;

  gEventPeriod=ADays;

  var vMessage="Retrieving events data for previous ";
  vMessage=vMessage+(ADays>1?ADays+" days...":"day...");

  document.getElementById('eventsLatest').innerHTML=(ADays==1?"<b>Latest Events</b>":"Latest Events");
  document.getElementById('eventsLast7Days').innerHTML=(ADays==7?"<b>Last 7 Days Events</b>":"Last 7 Days Events");
  document.getElementById('eventsLast14Days').innerHTML=(ADays==14?"<b>Last 14 Days Events</b>":"Last 14 Days Events");
  document.getElementById('eventsLast30Days').innerHTML=(ADays==30?"<b>Last 30 Days Events</b>":"Last 30 Days Events");

  return FilterEvents();
}

function SelectAllEvents()
{
  document.recentEventsForm.recentEventsSelectCorporateActions.checked=true;
  document.recentEventsForm.recentEventsSelectDividends.checked=true;
  document.recentEventsForm.recentEventsSelectFixedIncome.checked=true;
  document.recentEventsForm.recentEventsSelectMuniCalledBond.checked=true;
  document.recentEventsForm.recentEventsSelectUITEvents.checked=true;
}

function ToggleAutoRefresh(AImageID)
{
  gTimeoutIntervalIndex++;

  if(gTimeoutIntervalIndex>=gTimeoutIntervalArray.length)
  {
    gTimeoutIntervalIndex=0;
    for(var i in gTimeoutArray)
    {
      clearTimeout(gTimeoutArray[i]);
    }
  }

  var vImage=document.getElementById(AImageID);
  vImage.src="images/"+gTimeoutImageArray[gTimeoutIntervalIndex]+".gif";

  FilterEvents();
  return false;
}
