// parse URL for _GET values
var iSort = 0;
var iOrder = 0;

var aTmpValues = self.location.href.split('?');
if (aTmpValues.length > 1)
{
    var strGetValues = aTmpValues[1];
    var aGetValues = strGetValues.split('&');
    for (i=0; i < aGetValues.length; ++i)
    {
    	var aGet = aGetValues[i].split('=');    	 		
    	if (aGet[0] == 'Sort') iSort = aGet[1];    		
    	if (aGet[0] == 'Order') iOrder = aGet[1];   	
    }
}

function doClick(which, el)
{	
	if (savEvtTime - dcAt <= 0) return false;	// preempt if DC occurred after original click.
	
	if (el.className == 'filtered') el.className = '';
	else el.className = 'filtered';

	filteredDates.length = 0;
	for (i=0; i<allDates.length; ++i) {
		if (allDates[i].className == 'filtered')
			filteredDates.push(allDates[i].innerHTML);		
	}	
	filteredDatesResponse();	
}

function doDoubleClick(which, el) {
	var d = new Date();
	dcAt = d.getTime();
	if (savTO != null) {
		clearTimeout( savTO );	// Clear pending Click  
		savTO = null;
	}

	for (i=0; i<allDates.length; ++i)	// clear all "active" date filters
		if (allDates[i].className != 'label') allDates[i].className = '';
		
	el.className = 'filtered';	
	filteredDates.length = 1;
	filteredDates[0] = el.innerHTML;
	filteredDatesResponse();
}

function LoadedIndexEvents()
{
	// lightbox thumbnails
	var lightBoxPdfs = getElementsByClass('pdf_link');		
	for (i=0; i<lightBoxPdfs.length; ++i)
	{
		lightBoxPdfs[i].onmouseover = function() { initLytebox(); };
		lightBoxPdfs[i].onclick = function()
		{
			startLytebox(this.href, this.title, this.rel);
			return false;
		};	
	}
}

// AJAX process functions
function processIndex(responseText, responseStatus) {
  if (responseStatus==200) {
	document.getElementById('ajax_press_detail').innerHTML=responseText;
	if (document.getElementById('loader')) document.getElementById('loader').style.display = 'none';
	LoadedIndexEvents();
  } else { alert(responseStatus + ' -- Error Processing Request'); }
}

function filteredDatesResponse()
{
	document.getElementById('loader').style.display = 'block';
	document.getElementById('dev_select').selectedIndex = 0;
	
	var getIndex = new ajaxObject('press_index.php');
	getIndex.update('Sort='+iSort+'&Order='+iOrder+'&Filter='+filteredDates+'&js=1');
	getIndex.callback = function(responseText, responseStatus) { processIndex(responseText, responseStatus); }
}

var devListResponse = function()
{
	var getIndex = new ajaxObject('press_index.php');
	getIndex.update('Sort='+iSort+'&Order='+iOrder+'&Filter='+this.value+'&js=1');
	getIndex.callback = function(responseText, responseStatus) { 
		processIndex(responseText, responseStatus); 
		
		// re-select year filters
		allDates = document.getElementById("filters").getElementsByTagName("LI");
		for (i=0; i<allDates.length; ++i)
			if (allDates[i].className != 'label') allDates[i].className = 'filtered';
	}	
}

// Event Handlers
var allDates;
var clickthru = false;
var filteredDates = new Array();
function PressEvents()
{
	var getIndex = new ajaxObject('press_index.php');
		getIndex.update('Sort='+iSort+'&Order='+iOrder+'&js=1');
		getIndex.callback = function(responseText, responseStatus) { processIndex(responseText, responseStatus); }

	allDates = document.getElementById("filters").getElementsByTagName("LI");			
	for (i=0; i<allDates.length; ++i)
	{
		if (allDates[i].className != 'label')
		{
			allDates[i].onclick = function () { handleFilterClicks('click', this); };
			allDates[i].ondblclick = function () { handleFilterClicks('dblclick', this); };
		}
	}
	
	var selectDev = document.getElementById('dev_select').onchange = devListResponse;
	var selectDev = document.getElementById('dev_select').onkeyup = devListResponse;
	
	var sortColumns = document.getElementById("press_sort").getElementsByTagName("TH");			
	for (i=0; i<sortColumns.length; ++i)
	{
		sortColumns[i].onclick = function () 
		{
			document.getElementById('loader').style.display = 'block';
			if (this.innerHTML.indexOf('Date') != -1) {
				if (iOrder == 1 && iSort == 0) iOrder = 0;
				else iOrder = 1;
				iSort = 0;				
			}
			
			if (this.innerHTML.indexOf('Press Release') != -1) {
				if (iOrder == 1 && iSort == 1) iOrder = 0;
				else iOrder = 1;
				iSort = 1;				
			}

			var getIndex = new ajaxObject('press_index.php');
			getIndex.update('Sort='+iSort+'&Order='+iOrder+'&Filter='+filteredDates+'&js=1');
			getIndex.callback = function(responseText, responseStatus)
				{ processIndex(responseText, responseStatus); }
		};
	}
	
	disableSelection('press_sort', 'ajax_press_detail', 'filters', 'developers');
}

PreLoadEvent(PressEvents);
