// Variables
var d = new Date() ;
var k = 1 * 24 * 60 * 60 *1000 ; // number of milliseconds in a day
var ms = d.getTime() ;
var year  = d.getFullYear() ;
var mon   = d.getMonth() ; 
mon++ ;
var day   = d.getDate() ;

var today = makeDate(year, mon, day) ;

var pagename = "comics.html" ;

var imageTypeComic="c";
var imageTypeSketch="s";
var imageTypeSketch1="s1";
var imageTypeSketch2="s2";
var imageTypeSketch3="s3";
var imageTypeSketch4="s4";

var imageSizeSmall="290";
var imageSizeLarge="520";

var contenturl = "http://www.washingtonpost.com/wp-srv/opinion/ssi/images/Toles" ;
//var contenturl = "../images" ;
var months = new Array("Jan.", "Feb.", "March", "April", "May", "June", "July", "Aug.", "Sept.", "Oct.", "Nov.", "Dec.") ;
var long_months_names = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
var weekdays=new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");

var url = new String() ;
var name = new String() ;
var date = new String() ;
var refresh = new Boolean() ;
var type = new String("c");
var size= new String("520");

url = this.document.location + "" ;
if ( url.match(/name\=(\w+-?\w+)/) ) { name = RegExp.$1 ; } else { name = "Toles" ; }
if ( url.match(/date\=(\d+)/) ) { date = RegExp.$1 ; } else { date = today ; }
if ( url.match(/refresh\=(\w+)/) ) { refresh = RegExp.$1 ; } else { refresh = false ; }
if ( url.match(/type\=(\w+)/) ) { type = RegExp.$1 ; } else { type = "c" ; }
if ( url.match(/size\=(\w+)/) ) { size = RegExp.$1 ; } else { size = "520" ; }

// Browser and Platform detection
var agt=navigator.userAgent.toLowerCase() ;
var is_win = ( (agt.indexOf("win")!=-1) || (agt.indexOf("16bit")!=-1) ) ;
var is_mac = (agt.indexOf("mac")!=-1) ;
var is_ie  = (agt.indexOf("msie") != -1) ;
var is_nav = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1) && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1) && (agt.indexOf('webtv')==-1)) ;

[].indexOf || (Array.prototype.indexOf = function(v)
{
       for(var i = this.length; i-- && this[i] != v;);
       return i;
});

var previousComics=new Array();
var previousSketches=new Array();


function getPreviousLink(cDate,cType,cPageUrl)
{
	var dateIndex = (cType==imageTypeComic)?previousComics.indexOf(cDate):previousSketches.indexOf(cDate);
	
	if (dateIndex>0)
		dateIndex=dateIndex-1;
	
	var previousDate=(cType==imageTypeComic)?previousComics[dateIndex]:previousSketches[dateIndex];
	
	if (cDate != previousDate)
		return "<a style='text-decoration:none' href='"+ ((cPageUrl)?cPageUrl:"")+"?name=Toles&date=" +previousDate + "&type="+cType+"'>&laquo; &nbsp;Back</a> |";
	else
		return "";
}

function getNextLink(cDate,cType,cPageUrl)
{
	var dateIndex = (cType==imageTypeComic)?previousComics.indexOf(cDate):previousSketches.indexOf(cDate);
	
	if (cType==imageTypeComic && dateIndex<previousComics.length-1)
		dateIndex=dateIndex+1;
	
	if (cType==imageTypeSketch && dateIndex<previousSketches.length-1)
		dateIndex=dateIndex+1;
	 
	var nextDate=(cType==imageTypeComic)?previousComics[dateIndex]:previousSketches[dateIndex];
	
	if (cDate !=nextDate)
		return "| <a style='text-decoration:none' href='" + ((cPageUrl)?cPageUrl:"") +"?name=Toles&date=" +nextDate + "&type="+cType+"'>Next&nbsp; &raquo;</a>";
	else
		return "";
}



// Functions
function makeDate(yyyy, mm, dd) {
	if ( mm < 10 ) { mm = "0"+mm }
	if ( dd < 10 ) { dd = "0"+dd }
	//return ( yyyy+""+mm+""+dd ) ;
	return ( mm+""+dd+""+yyyy) ;
}

function getYear(yyyymmdd,startPosition)
{
	if (yyyymmdd !=null && yyyymmdd.length>=(startPosition+4))
	{
		return yyyymmdd.substr(startPosition,4);
	}
	else
	{
		return year;
	}
}

function getMonth(yyyymmdd,startPosition)
{
	if (yyyymmdd !=null && yyyymmdd.length>=(startPosition+2))
	{
		return yyyymmdd.substr(startPosition,2);
	}
	else
	{
		return mon;
	}
	
}

function getDate(yyyymmdd,startPosition)
{
	if (yyyymmdd !=null && yyyymmdd.length>=(startPosition+2))
	{
		return yyyymmdd.substr(startPosition,2);
	}	
	else
	{
		return day;
	}
}

function formatDate(yyyymmdd,includeDayOfWeek)
{
	var formattedDate = new String(long_months_names[Number(getMonth(yyyymmdd,0))-1] +" " +getDate(yyyymmdd,2) + ", " + getYear(yyyymmdd,4));

	if (includeDayOfWeek)
	{
		var dateObj = Date.parse(formattedDate);
		formattedDate = weekdays[(new Date(dateObj)).getDay()] +", " +formattedDate;
		//alert (weekdays[(new Date(dateObj)).getDay()]);
	}
	return formattedDate;
}

