/* INIT.JS */
$(document).ready(function(){

	if (typeof month != 'undefined') {
		$("#calendar").calendarWidget({year: year, month: (month-1)});
	} else if (typeof year != 'undefined') {
		$("#calendar").calendarWidget({year: year});
	} else {
		$("#calendar").calendarWidget();
	}
	
	// Open external links in new tab
	$("a.external").attr({ target: "_blank" });
	
	// Remove outlines from clicked links
	$("a").click(function() {
		$(this).blur();
	});
	
	
	
	initTextResize();
	setFontSizeFromCookie();
	
});




if (!Array.prototype.indexOf){
	Array.prototype.indexOf = function(elem /*, from*/) {
		var len = this.length;
		var from = Number(arguments[1]) || 0;
		from = (from < 0) ? Math.ceil(from) : Math.floor(from);
		if (from < 0) { from += len; }
		for (; from < len; from++) {
			if (from in this && this[from] === elem) {
				return from;
			}
		}
		return -1;
	};
}

function in_array (needle, haystack, argStrict) {
	var key = '', strict = !!argStrict;
	if (strict) {
		for (key in haystack) {
			if (haystack[key] === needle) {
				return true;
			}
		}
	} else {
		for (key in haystack) {
			if (haystack[key] == needle) {
				return true;
			}
		}
	}
	return false;
}



/***** Text resize functions *****/

// resize text and create cookie
function fsize(size,unit,id){
  var vfontsize = document.getElementById(id);
  if(vfontsize){
   vfontsize.style.fontSize = size + unit;
   createCookie("textsizestyle", textsize, 365);
  }
}
var textsize = 1.0;
function changetextsize(up){
  if(up){
   textsize = parseFloat(textsize)+0.1;
  }else{
   textsize =parseFloat(textsize)-0.1;
  }
}

// setup the onclick events for the text resize links
function initTextResize(){ 
	decreaseText = document.getElementById("decrease-text");
	
	if(decreaseText != null){
	decreaseText.href = "javascript:fsize(textsize,'em','content');";
	decreaseText.setAttribute('onclick', 'changetextsize(0);'); 
	
	increaseText = document.getElementById("increase-text");
	increaseText.href = "javascript:fsize(textsize,'em','content');";
	increaseText.setAttribute('onclick', 'changetextsize(1);'); 
	
	decreaseTextHeader = document.getElementById("decrease-text-header");
	decreaseTextHeader.href = "javascript:fsize(textsize,'em','content');";
	decreaseTextHeader.setAttribute('onclick', 'changetextsize(0);'); 
	
	increaseTextHeader = document.getElementById("increase-text-header");
	increaseTextHeader.href = "javascript:fsize(textsize,'em','content');";
	increaseTextHeader.setAttribute('onclick', 'changetextsize(1);'); 
	}
	
}

// Set the fontsize from user's cookie */
function setFontSizeFromCookie() {
	var cookie = readCookie("textsizestyle");
	textsize = cookie ? cookie : 1.0;
	if(document.body.getAttribute('class') != "admin") fsize(textsize,'em','content');
}

/***** Read and Write Cookie functions *****/

// create cookie
function createCookie(name,value,days) {
  if (days) {
	var date = new Date();
	date.setTime(date.getTime()+(days*24*60*60*1000));
	var expires = "; expires="+date.toGMTString();
  }
  else var expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}
 
// read cookie
 function readCookie(name) {
  var nameEQ = name + "=";
  var ca = document.cookie.split(';');
  for(var i=0;i < ca.length;i++) {
	var c = ca[i];
	while (c.charAt(0)==' ') c = c.substring(1,c.length);
	if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  }
  return null;
}
