// <-- external javascript file -->
// global variables
var dirName;
var type= new Array();
var gifSrc="empty";
var pdfSrc="empty";
var page = 0;
var numPages = 0;

var meetdates = new Array("January 14th", "February 11th", "March 11th", "April 8th", "May 13th", "June 10th", "July 8th", "August 12th", "September 9th", "October 14th", "November 11th", "December 9th", "January 14th");

//var meetdates = new Array("January 14th", "February 12th", "March 12th", "April 7th", "May 14th", "June 11th", "July 9th", "August 13th", "September 10th", "October 8th", "November 12th", "December 10th", "January 14th");
var monthNames = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
var Meet = new Array("01,14","02,11","03,11","04,08","05,13","06,10", "07,08", "08,13", "09,09", "10,14", "11,11", "12,09", "01,13");
 
var weekDays = new Array("Sunday", "Monday", "Tuesday","Wednesday","Thursday","Friday","Saturday");
var today = new Date();
var day = today.getDay();
var date = today.getDate();
var month = today.getMonth();
var year = today.getFullYear();
var datestring = new String();
var lastyear = year-1;
   
issueDir = new Array("dummy", "jan_02", "mar_02", "aug_02", "dec_02","apr_03", "Jun_03", "sep_03", "mar_04", "jul_04", "oct_04", "jan_05", "may_05", "sep_05", "dec_05", "mar_06", "jun_06", "sep_06", "dec_06", "mar_07", "jun_07", "sep_07", "dec_07", "mar_08", "jun_08", "sep_08", "dec_08", "mar_09", "jun_09", "sep_09", "dec_09");
gifImg  = new Array("page1.gif", "page2.gif", "page3.gif", "page4.gif", "page5.gif", "page6.gif", "page7.gif", "page8.gif", "page9.gif", "page10.gif"); 
pdfImg = new Array("Saints1c.pdf", "Saints2c.pdf", "Saints3c.pdf", "Saints4c.pdf", "Saints5c.pdf", "Saints6c.pdf", "Saints7c.pdf", "Saints8c.pdf", "April_2003_NV.pdf", "June_2003_NV.pdf", "Sept2003NV.pdf", "Rev._3_March_2004_N_V.pdf", "JULY_2004_NVS.pdf", "Oct2004NewsNViews.pdf", "January_2005N&V.pdf", "May2005NV.pdf", "September2005N_V.pdf", "Dec2005N_V.pdf", "March2006N_V.pdf", "June2006N_V.pdf", "September2006N_V.pdf", "December2006N_V.pdf", "March2007N_V.pdf", "June2007News_Views.pdf", "Sept2007News_Views.pdf", "December2007News_Views.pdf", "March2008N_V.pdf", "June2008N_V.pdf", "Sept2008NewsViews.pdf", "December_2008_NewsViews.pdf","March2009NewsViews.pdf", "June2009NewsViews.pdf", "September2009NV.pdf", "December2009NV.pdf"); 
gifPages = new Array(0,7,9,10,5);
pdfPages = new Array(0,1,1,1,5,1,1,1,1);

if (document.images) {

bullet_on = new Image;
spacer = new Image;
bullet_on.src = "images/bullet_whiteon.gif"
spacer.src = "images/spacer.gif"

}
else {

}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)>=4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function GetFormattedDate()
{
   var thismonth = today.getMonth();
   var thisyear = today.getFullYear();
   dateString = weekDays[day] + " " + monthNames[thismonth] + " " + date + ", " + thisyear;
   return dateString
}

function openPdfWindow(pdfFile) {
      //alert(pdfFile);
      newPdfWinView = window.open(pdfFile,'pdfFileWin','resizable=yes,width=700,height=400,scrollbars=yes,location=yes,toolbar=yes,,,');
      newPdfWinView.focus();
}

function openWindow(sel, viewFormat)
{
		 dirName = sel;
		 type = viewFormat;
		  
		 if(dirName < 1) {
		   alert("Please select an Issue for your viewing pleasure");
		   return;
		 }

	/*	if(type[0].checked) 
		{    // PDF files. */
		if(dirName < 5)
		{
			format = "pdf";
			outpage = 1;
			newPdfWinLink = window.open('','newPdf','resizable=yes,width=300,height=200,scrollbars=yes,location=no,toolbar=no,,,');
			numPages = pdfPages[dirName];
			for(page=0; page < numPages; page++) {
			    pdfSrc = '<a href="javascript:openPdfWindow(\'nvs/' + issueDir[dirName] + '/' + pdfImg[page]+ '\');"' + '>View page ' + outpage++ + '</a>';
			    htmlStr = '<html><head><title>News and views - </title><script language="Javascript" type="text/javascript" src="genJavaScript.js"></script></head><body bgcolor="ffffff">' + pdfSrc;
			    htmlStr += '</br></body></html>';
				newPdfWinLink.document.write(htmlStr);	 
			}		
			htmlStr = '<html><head><title>Saints News and Views - PDF</title></head>';
			htmlStr += '<body bgcolor="ffffff"></br><img src="/images/spacer.gif" width="120" height="1"><form><input type="Button" name="close" value="Close" onclick="parent.close();"></form>';
			htmlStr += '</body></html>';
			//alert(htmlStr);
			newPdfWinLink.document.write(htmlStr);
			newPdfWinLink.focus();
	        }
	        else
	        {
	            page=7 + (dirName -4);
	            pdfFile = "nvs/" + issueDir[dirName] + "/" + pdfImg[page];
	            window.open(pdfFile,'pdfFileWin','resizable=yes,width=700,height=400,scrollbars=yes,location=no,toolbar=no,,,');
	            //openPdfWindow(\'nvs/' + issueDir[dirName] + '/' + pdfImg[page]);
	        }    
/*	    }
		else { 
		   if(type[0].checked) {  
		       format = "img";
			   var outpage = 1;
			   newWindow = window.open('','newWin','resizable=yes,width=700,height=400,scrollbars=yes,location=yes,toolbar=yes,,,');
		       numPages = gifPages[dirName];
			   for(page=0; page < numPages; page++)
			   {
		       		gifSrc = '<img src=nvs/' + issueDir[dirName] + '/' + gifImg[page] + '>';
					htmlStr = '<html><head><title>Saints News and Views - </title>';
			   		htmlStr += '</head><body>' + gifSrc + '</br>'; 
			   		htmlStr += '</body></html>';		
				    newWindow.document.write("Page "+ outpage++ + "</br>" + htmlStr);
			   }
				htmlStr = '<html><head><title>Saints News and Views - </title></head>';
				htmlStr += '<body></br><img src="/images/spacer.gif" width="300" height="1"><input type="Button" name="close" value="Close" onclick="parent.close();">';
				htmlStr += '</body></html>';
				newWindow.document.write(htmlStr);
				newWindow.focus();	
		  // } // if
		//}	*/				  
}

function openFromLink(num) {
         if(num == 1) {
            newWindow = window.open('nvs/jan_02/Saints1c.pdf','newWin','resizable=yes,width=700,height=400,scrollbars=yes,location=yes,toolbar=yes,,,');
         }
}	
function openImageWindow(theImage, winName) {
		window.open(theImage, winName, 'resizable=yes,width=625,height=400,scrollbars=yes,location=no,toolbar=no,,,');
}	 

function openImageTWindow(theImage, winName) {
		window.open(theImage, winName, 'resizable=yes,width=625,height=400,scrollbars=yes,location=no,toolbar=yes,,,');
}

function openImgLWindow(theImage, winName) {
		window.open(theImage, winName, 'resizable=yes,width=700,height=500,scrollbars=yes,location=no,toolbar=no,,,');
}

function openImgWindow(theImage, wid, ht, winName) {
		window.open(theImage, winName, 'resizable=no,width=wid,height=ht,scrollbars=yes,location=no,toolbar=no,,,');
}


function validateRegister(register) {
      
		if((register.fromyr.value == "" || register.toyr.value == "")&& !register.assocmbr.checked) {
		   alert("Please enter as a minimum the following:\nYour First and Lastname,\n plus either associate-member or\n start and end date at the College.\n-- Thank you --");
		   return false;
		}
		if(register.fname.value == "" || register.lname.value == "") {
		   alert("Please enter as a minimum the following:\nYour First and Lastname,\n plus either associate-member or\n start and end date at the College.\n-- Thank you --");
		   return false;
		}   
		if( register.assocmbr.checked && (register.fromyr.value != "" || register.toyr.value != ""))
		{
		    alert("Please choose either Associate-Member or Start/End years of attendance, but NOT both");
			return false;
		}	 
		if(!isNum(register.fromyr.value) || !isNum(register.toyr.value)) {
		   alert("Please enter digits in the year fields");
		   return false;
		}   
		today = new Date();
		thisYear = today.getFullYear();
		oldestYr = thisYear - register.fromyr.value;
		youngestYr = thisYear - register.toyr.value;
		if(oldestYr > 80 && !register.assocmbr.checked) {
		   alert("There is an error with the value of your Start Date.");
		   return false;
		}
		else {
			if(youngestYr < 0 && !register.assocmbr.checked) {
		  		alert("There is an error with the value of your End Date");
				return false;
			}
			else if( register.toyr.value - register.fromyr.value > 30 && !register.assocmbr.checked) {
			      alert("There is an error with your Start/End dates at Saints.");
				  return false;
			}
			else if(register.toyr.value < register.fromyr.value && !register.assocmbr.checked) {
			     alert("End year should be greater than or equal Start year");
				 return false;
			}	 	  
		}
		if(register.emailaddr.value != "") {
		
		    if(!validEmailAddr(register.emailaddr.value)) {
		       alert("Invalid email address.");
		       return false;
	            }
		
		    firstName = register.fname.value;
		    if(firstName != "") {
		      	if(firstName.length > 20) {
		   		alert("Firstname has exceeded the maximum length");
		   		return false;
			}
		    }
		}    
		lastName = register.lname.value;
		if(lastName != "") {
			if(lastName.length > 25) {
		   		alert("Lastname has exceeded the maximum length");
		   		return false;
			}	
		}   	
		return true;   
}

function isNum(val) {
	for(i = 0; i < val.length; i++) {
	    if(val.charAt(i) < "0") {
		  return false;
		}
		if(val.charAt(i) > "9") {
		  return false;
		}    
	}
	return true;
}
function validateContact(formName) {
	if(formName.from.value == "") {
	  alert("Please enter your Email address.");
	  return false;
	}
	if(formName.subject.value == "") {
	  alert("Please enter your Subject.");
	  return false;
	}
	if(formName.message.value == "") {
	  alert("Please enter your message.");
	  return false;
	}
	if(!validEmailAddr(formName.from.value)) {
	  alert("Please enter a properly formatted email address.");
	  return false;
	}         
    return true;
}

function validEmailAddr(addr) {
	var invalidChars = " /:,;";
	for(i=0; i < invalidChars.length; i++) {
	    inValChar = invalidChars.charAt(i);
	    if(addr.indexOf(inValChar,0) > -1) {
		   return false;
		}  
    }
	atPos = addr.indexOf("@", 1);
	if(atPos == -1) {
	   return false;
	}   
	if(addr.indexOf("@", atPos+1) > -1) {
	   return false;
	}
	periodPos = addr.indexOf(".", atPos);
	if(periodPos == -1) {
	   return false;
	}
	if(periodPos+2 > addr.length) {
	   return false;
	}
	return true;      
}

function updateCount(formName, maxcount) {
    // alert( formName.message.value + " " + formName.countbytes.value + " ");
     message = formName.message.value;
	 if(message.length > maxcount) {
	   formName.message.value = formName.message.value.substring(0, maxcount);
	   formName.countbytes.value = 0;
	 }
	 formName.countbytes.value = (maxcount - message.length);
	 
}

function refresh()
{
      parent.f3.document.location.href="sortButton.jsp";
}

function fixedDate()
{
    var myDate=new Date();
    //var year = myDate.getFullYear();
    var x=Meet[month].substr(0,2)-1;
    var y=Meet[month].substr(3,2);

    myDate.setFullYear(year,x,y);
    //alert(mth);
    
    return myDate;
}


function meetdate() {

    var myDate=fixedDate();
    
    if(today > myDate)
    {

       return monthNames[month+1] + " " + Meet[month+1].substr(3,2);
    }
 
    return monthNames[month] + " " + Meet[month].substr(3,2); 
}

function getYear(num) {
    
    if(num == 1) return wekDays[weekday];
    if(num == 2) return month;
    if(num == 3) return year;
    if(num == 4) return date;
    if(num == 5) return lastyear;
}
