
function makeArray() {
    for (i = 0; i<makeArray.arguments.length; i++)
        this[i] = makeArray.arguments[i];
}

function y2k(number) {
	return ((number < 1000) ? (number + 1900) : number);
}

function pad(number){
	return ((number < 10) ? ('0' + number) : number);
}

var weekdays = new makeArray('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');

function formatDate(date){
	return (y2k(date.getYear()) + '-' + pad((date.getMonth() + 1)) + '-' + pad(date.getDate()) + '<br>' + weekdays[date.getDay()]);
}

function URLDecode(URLEncoded){
	var plaintext = "";
  	for(var k=0; k<URLEncoded.length; k++) {
		plaintext += (URLEncoded.charAt(k) == "+" ? " " : URLEncoded.charAt(k));
  	}
  	return unescape(plaintext);
}

function safe(string){
    var result = "";
    var i = string.indexOf("<");
    var last = -1;
    while (i != -1 && last+1 <= string.length){
        if (i-last-1 > 0){
        	result += string.substring(last+1, i);
        }
        result += "&lt;";
        last = i;
        i = string.indexOf("<",last+1);
    }
    if (last+1 <= string.length){
    	string = result + string.substring(last+1);
    }
    result="";
    i = string.indexOf(">");
    last = -1;
    while (i != -1 && last+1 <= string.length){
        if (i-last-1 > 0){
        	result += string.substring(last+1, i);
        }
        result += "&gt;";
        last = i;
        i = string.indexOf(">",last+1);
    }
    if (last+1 <= string.length){
    	string = result + string.substring(last+1);
    }
    result="";
    i = string.indexOf('"');
    last = -1;
    while (i != -1 && last+1 <= string.length){
        if (i-last-1 > 0){
        	result += string.substring(last+1, i);
        }
        result += "&quot;";
        last = i;
        i = string.indexOf('"',last+1);
    }
    if (last+1 <= string.length){
    	string = result + string.substring(last+1);
    }
    return string;
}

var today = new Date();
var rows = 23;
var columns = 4;
var head = "Wt.";

var cgiData = location.search.substring(1,location.search.length);
var nameValPairs = new Array();
nameValPairs = cgiData.split('&');

for (var i=0; i<nameValPairs.length; i++){
  if (nameValPairs[i].indexOf('rows=') == 0) {
     nameValPair = new Array();
     nameValPair = nameValPairs[i].split('=');
	 value = parseInt(nameValPair[1]);
	 if (value == value && value > 0){
		rows = value;
	 }
  }
  if (nameValPairs[i].indexOf('columns=') == 0) {
     nameValPair = new Array();
     nameValPair = nameValPairs[i].split('=');
	 value = parseInt(nameValPair[1]);
	 if (value == value && value > 0){
		columns = value;
	 }
  }
  if (nameValPairs[i].indexOf('date=') == 0) {
     nameValPair = new Array();
     nameValPair = nameValPairs[i].split('=');
	 value = URLDecode(nameValPair[1]);
	 if (Date.parse(value) == Date.parse(value)){
		today = new Date(value);
	 }
  }
  if (nameValPairs[i].indexOf('head=') == 0) {
     nameValPair = new Array();
     nameValPair = nameValPairs[i].split('=');
	 value = URLDecode(nameValPair[1]);
	 head = safe(value);
  }
}

