﻿<!--
/***********************\
* Joseph Harker  o__    *
*   Programmer   .>/ _  *
*   Consultant  (_)\(_) *
* JoeHarker@007dev.com  *
\***********************/

function TryToPrint(page)
{
	var	win	= TryToPop(page);
	if(win != null)
	{
		//win.print();
	}
	else
	{
		document.location.href	= page;
		alert('The print interface appears to be blocked\r\nPlease use "File -> Print" to print this document');
	}
}

function TryToPop(page)
{
	var	win;
	
	try
	{
		win	= window.open(page, 'Pop1');
		win.focus();
	}
	catch(e)
	{ 
		document.getElementById('error').innerHTML	=
			 '<div style=\"border: 10px #FF0000 solid; background: #FFFFFF;\">\r\n'
			+'It appears you have a pop-up blocker that is preventing our site from opening a new page<br />\r\n'
			+'<br />\r\n'
			+'<a href="'+ page +'">Click this link to view your request on this page</a> OR <br />\r\n'
			+'<a href="#" onclick="PopInstructions();">Click this link for instructions to add our site to your safe list</a><br />\r\n'
			+'</div>\r\n'
		;
	}
	
	return win;
}

function PopInstructions()
{
	document.location.href.match(/:\/\/([^\/]*)\//g);
	document.getElementById('error').innerHTML	=
		 '<div style=\"border: 10px #FF0000 solid; background: #FFFFFF;\">\r\n'
		+'To add our site to the Internet Explorer safe list:<br />\r\n'
		+'&nbsp;&nbsp;&nbsp;&nbsp;Click: Tools -> Pop-up Blocker -> Pop-up Blocker Settings<br />\r\n'
		+'&nbsp;&nbsp;&nbsp;&nbsp;In the first text box \'Address of Web site to allow:\' Add the following address:<br />\r\n'
		+'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<font color=\"blue\">'+ RegExp.$1 +'</font><br />\r\n'
		+'&nbsp;&nbsp;&nbsp;&nbsp;Click the Add button<br />\r\n'
		+'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\''+ RegExp.$1 +'\' will be added to the \'Allowed sites\' list <br />\r\n'
		+'&nbsp;&nbsp;&nbsp;&nbsp;Click the Close button<br />\r\n'
		+'&nbsp;&nbsp;&nbsp;&nbsp;<a href=\"#\" onClick=\"document.location.reload();\">Refresh</a> this page<br />\r\n'
		+'<br />\r\n'
		+'Please refer to your manufacturers manual for all 3rd party pop-up blockers.\r\n'
		+'</div>\r\n'
	;
}

function SortTable(tableId, col)
{
	SortTable(tableId, col, false)
}
function SortTable(tableId, col, hilightCol)
{
	try
	{
		var table		= document.getElementById(tableId);
		var tbody		= table.getElementsByTagName('tbody')[0];
		var rows		= tbody.getElementsByTagName('tr');
		var colcount	= tbody.getElementsByTagName('td').length / rows.length;
		var newRows		= new Array();
		var newTbody	= document.createElement('tbody');
		var	contenter	= /(?:<[^>]*>)*([^<]*)/;
		var	revTest;
		
		for(var r = 0; r < rows.length; r++) 
		{
			for(var c = 0; c < colcount && hilightCol; c++)
			{
				if(c == col)
				{
					rows[r].getElementsByTagName('td')[c].innerHTML	= '<span style="background-color:#333333; width:100%; height:100%; float:left;">'+ rows[r].getElementsByTagName('td')[c].innerHTML +'</span>';
				}
				else
				{
					rows[r].getElementsByTagName('td')[c].innerHTML	= rows[r].getElementsByTagName('td')[c].innerHTML.replace(/<.{0,1}span[^>]*?>/gi, '');
				}
			}
			
			if(rows[r].getElementsByTagName('td')[col].innerHTML.match(contenter))
			{
				newRows[r]			= new Object;
				newRows[r].oldIndex	= r;
				newRows[r].value	= RegExp.$1;
			}
		}

		if(newRows.length > 0)
		{
			revTest	= newRows[0].value;
			newRows.sort(iCompare);
			if(revTest == newRows[0].value)
			{
				newRows.reverse();
			}
		
			for(var r = 0; r < newRows.length; r++) 
			{
				newTbody.appendChild(rows[newRows[r].oldIndex].cloneNode(true));
			}
		
			table.replaceChild(newTbody, tbody);
		}
	}
	catch(eError)
	{
	}
}

function iCompare(a, b)
{
	var aIsGreater	= 0;
	var	A			= '';
	var	B			= '';
	var	floater		= /^[$ \t%]{0,}([0-9]{1,}\.[0-9]{1,})/;
	var	inter		= /^[$ \t%]{0,}([0-9]{1,})[ \t]{0,}/;
	
	if(a.value.match(floater) && b.value.match(floater))
	{
		a.value.match(floater);
		A	= RegExp.$1;
		b.value.match(floater);
		B	= RegExp.$1;
		aIsGreater	= parseFloat(A.substr(1)) - parseFloat(B.substr(1));
	}
	else
	{
		A	= MonthToNum(a.value);
		B	= MonthToNum(b.value);
		
		if(A.match(inter) && B.match(inter))
		{
			A	= A.replace(/[^0-9]/g, '');
			B	= B.replace(/[^0-9]/g, '');
			aIsGreater	= Math.abs(A) - Math.abs(B);
		}
		else
		{
			if(a.value == b.value)
			{
				aIsGreater	= 0;
			}
			else if(a.value > b.value)
			{
				aIsGreater	= 1;
			}
			else
			{
				aIsGreater	= -1;
			}
		}
	}
	
	return aIsGreater;
}

function MonthToNum(string)
{
	string	= string.replace(/^[jJ][aA][nN]/, '01');
	string	= string.replace(/^[fF][eE][bB]/, '02');
	string	= string.replace(/^[mM][aA][rR]/, '03');
	string	= string.replace(/^[aA][pP][rR]/, '04');
	string	= string.replace(/^[mM][aA][yY]/, '05');
	string	= string.replace(/^[jJ][uU][nN]/, '06');
	string	= string.replace(/^[jJ][uU][lL]/, '07');
	string	= string.replace(/^[aA][uU][gG]/, '08');
	string	= string.replace(/^[sS][eE][pP]/, '09');
	string	= string.replace(/^[oO][cC][tT]/, '10');
	string	= string.replace(/^[nN][oO][vV]/, '11');
	string	= string.replace(/^[dD][eE][cC]/, '12');

	return string;
}

-->
