//begin OAS function definition
var oas='http://oascentral.crain.com/RealMedia/ads/';
var RN = new String (Math.random());
var RNS = RN.substring (2, 11);

// here is the ad insertion function 
function DisplayAds (position)
{
var oaspage= sitepage + '/1' + RNS + '@' + position;

if (_version < 11) {
document.write ('<A HREF="' + oas + 'click_nx.cgi/'+ oaspage + '" ><IMG SRC="' + oas + 'adstream_nx.cgi/' + oaspage + '" BORDER="0"></a>');
} else {
document.write ('<SCRIPT LANGUAGE="JavaScript1.1" SRC="' + oas + 'adstream_jx.cgi/' + oaspage + '">');
document.write ('\<\!-- --\>');
document.write ('\<\/SCRIPT\>');
document.write ('\<\!-- --\>');
}
}
// end OAS function definition

function showEvent(loc, h, w){
	win = window.open (loc, "newwin", "height="+h+",width="+w+",RESIZABLE=1,TOOLBAR=0,MENUBAR=0,LOCATION=0,STATUS=0,DIRECTORIES=0,SCROLLBARS=1");
	win.creator = self;
}                       
window.name = "eventpage";

var cookieEnabled = false;
 if (typeof document.cookie == "string")
 {
   if (document.cookie.length == 0)
   {
     document.cookie = "test";
     cookieEnabled = (document.cookie == "test");
     document.cookie = "";
   }
   else
   {
     cookieEnabled = true;
   }
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
	win = window.open(theURL,winName,features);
	win.creator = self;
}

function JumpURL(selection) {
        var tempIndex, selectedURL;
        tempIndex = selection.selectedIndex;
        selectedURL = selection.options[tempIndex].value;
        location.href = selectedURL;
}

function isEmail (emailStr) {	// updated 4/22/2008
	var checkTLD=1;	// 1 to check for two-letter country or well-known TLD - 0 to ignore
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
	var emailPat=/^(.+)@(.+)$/;
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");

	var matchArray=emailStr.match(emailPat);

	if (matchArray==null) { return false; }	// Email address seems incorrect (check @ and .'s)
	var user=matchArray[1];
	var domain=matchArray[2];

	for (i=0; i<user.length; i++) {
		if (user.charCodeAt(i)>127) { return false; }	// The username contains invalid characters
	}
	for (i=0; i<domain.length; i++) { 
		if (domain.charCodeAt(i)>127) { return false; }	// The domain name contains invalid characters
	}

	if (user.match(userPat)==null) { return false; }	// The username is invalid

	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) {	// this is an IP address
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) { return false; }	// Destination IP address is invalid
		}
		return true;
	}

	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++) {
		if (domArr[i].search(atomPat)==-1) { return false; }	// The domain name is invalid
	}

	if (checkTLD && domArr[domArr.length-1].length!=2 && domArr[domArr.length-1].search(knownDomsPat)==-1) {
		return false;	// The address must end in a well-known domain or two letter country code
	}

	if (len<2) { return false; }	// This address is missing a hostname
	return true;
}


function OLDisEmail(str) {
	var supported = 0;
	if (window.RegExp) {
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
	}
	if (!supported) 
		return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
	var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)");
	var r2 = new RegExp("^.+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
	return (!r1.test(str) && r2.test(str));
}

function trim(strText) {
    // this will get rid of leading spaces
    while (strText.substring(0,1) == ' ')
        strText = strText.substring(1, strText.length);

    // this will get rid of trailing spaces
    while (strText.substring(strText.length-1,strText.length) == ' ')
        strText = strText.substring(0, strText.length-1);

   return strText;
}

function isNumber(InString){
        if(InString.length==0)
                return (false);
        RefString="1234567890";
        for (Count=0; Count < InString.length; Count++)  {
                TempChar= InString.substring (Count, Count+1);
                if (RefString.indexOf (TempChar, 0)==-1)
                        return (false);
        }
        return (true);
}

function editDigEd(form){
	var ErrMsg	= "";
	var ErrFld	= "";
	with(form){
		if(delrec.checked){
			Ret     = confirm("Are you sure you want to delete this record?");
			if(!Ret) {
				delrec.checked=0;
				return false;
			}
		} else {
			for(i=0; i < elements.length; i++){ elements[i].value = trim(elements[i].value); }
			if(display[0].checked && image.value.length==0 && oldpic.value.length==0){
				ErrMsg	= "You must upload an image if you want to display this on the site\n\n"+ErrMsg;
				ErrFld	= image;
			}
			if(url.value.length==0){
				ErrMsg  = "Please provide an URL\n\n"+ErrMsg;
				ErrFld	= url;
			}
		}
	}
	if(ErrMsg!=""){
		alert("The following information needs to be completed/corrected:\n\n"+ErrMsg);
		if(ErrFld!="")	{ ErrFld.focus(); }
		return false;
	}
}

function newDigEd(form){
	var ErrMsg	= "";
	var ErrFld	= "";
	with(form){
		for(i=0; i < elements.length; i++){ elements[i].value = trim(elements[i].value); }
		if(display[0].checked && image.value.length==0 && oldpic.value.length==0){
			ErrMsg	= "You must upload an image if you want to display this on the site\n\n"+ErrMsg;
			ErrFld	= image;
		}
		if(url.value.length==0){
			ErrMsg  = "Please provide an URL\n\n"+ErrMsg;
			ErrFld	= url;
		}
		if(!isValidDigEdDate(issue.value)){
			ErrMsg  = "Please provide a valid issue date (YYYYMMDD)\n\n"+ErrMsg;
			ErrFld	= issue;
		}
	}
	if(ErrMsg!=""){
		alert("The following information needs to be completed/corrected:\n\n"+ErrMsg);
		if(ErrFld!="")	{ ErrFld.focus(); }
		return false;
	}
}

function digedUrl(){
	with(document.diged){
		if(isNumber(issue.value) && issue.value.length==8 && url.value==""){
			url.value = "http://wastenews.texterity.com/wastenews/"+issue.value+"/";
		}
	}
}

function trimNumber(s) {
	while (s.substr(0,1) == '0' && s.length>1) { s = s.substr(1,9999); }
	return s;
}

function isValidDigEdDate(dtStr){
	var dateok = true;
	dtStr   = trim(dtStr);
	if(!isNumber(dtStr)) { return false; }
	var strMonth =dtStr.substring(4,6);
	var strDay   =dtStr.substring(6,8);
	var strYear  =dtStr.substring(0,4);
	strMonth = trimNumber(strMonth);
	strDay   = trimNumber(strDay);
	strYear  = trimNumber(strYear);

	month = parseInt(strMonth);
	day   = parseInt(strDay);
	year  = parseInt(strYear);
	//alert(strMonth+"-"+strDay+"-"+strYear);
	//alert(month+"-"+day+"-"+year);
	if(month<1 || month>12 || day<1 || day>31 || year<2006){ dateok=false; }
	return dateok;
}

function openReSizableWindowNew(url,name) {
	name = 'w' + Math.round(Math.random()*(1000000000));
	w = screen.width - 10;
	h = screen.height - 40;
	nurl = url + "?fm=2"
	window.open(nurl,name,'toolbar=no,menubar=no,resizable=yes,scrollbars=yes,left=0,top=0,width=' + w + ',height=' + h);
}
