function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

function popUp(url,w,h) {
   newWin = window.open(url,'_blank','width='+w+',height='+h+',menubar=no,scrollbars=yes,status=yes,resizable=yes');
   newWin.focus();
}

/* Start external links handler */
function externalLinks() {
   if (!document.getElementsByTagName) return;
   var anchors = document.getElementsByTagName("a");
   for (var i=0; i<anchors.length; i++) {
      var anchor = anchors[i];
      if (anchor.getAttribute("href") && anchor.getAttribute("rel") == "external")
         anchor.target = "_blank";
   }
}

addLoadEvent(externalLinks);
/* End external links handler */

function switchLoMas(elem) {
	switch(elem) {
		case 1: // lo más leído
			// menu
			document.getElementById('menu_ultimo').className = '';
			document.getElementById('menu_leido').className = 'sel';
			document.getElementById('menu_comentado').className = '';
			// results
			document.getElementById('items_ultimo').style.display = 'none';
			document.getElementById('items_leido').style.display = 'block';
			document.getElementById('items_comentado').style.display = 'none';
			break;

		case 2: // lo más comentado
			// menu
			document.getElementById('menu_ultimo').className = '';
			document.getElementById('menu_leido').className = '';
			document.getElementById('menu_comentado').className = 'sel';
			// results
			document.getElementById('items_ultimo').style.display = 'none';
			document.getElementById('items_leido').style.display = 'none';
			document.getElementById('items_comentado').style.display = 'block';
			break;

		default: // lo último
			// menu
			document.getElementById('menu_ultimo').className = 'sel';
			document.getElementById('menu_leido').className = '';
			document.getElementById('menu_comentado').className = '';
			// results
			document.getElementById('items_ultimo').style.display = 'block';
			document.getElementById('items_leido').style.display = 'none';
			document.getElementById('items_comentado').style.display = 'none';
			break;
	}
}

// initCaption - requires jQuery library
function initCaption(num) {
	$(document).ready(function() {
		// hide caption text
		$("#caption"+num).addClass("captionHidden");

		// show caption button
		$("#showcaption"+num).toggle();

		// define caption button click event
		$("#showcaption"+num).click(function(){
			$("#caption"+num).toggle(); $("#showcaption"+num).toggleClass("hidecaption"); return false;
		});
	});
}


// initOuterBanner
function initOuterBanner() {
	var minSize = 980;
	if (document.getElementById("outerBanner")!=null) {
		var tamBanner = document.getElementById("outerBanner").clientWidth;
		var maxSize = minSize + tamBanner;
		if ((document.body.clientWidth < maxSize) || (document.getElementById("outerBanner").innerHTML == '')) {
			document.getElementById("outer").style.width = minSize + 'px';
			document.getElementById("outerBanner").style.display = 'none';
		} else {
			document.getElementById("outer").style.width = maxSize + 'px';
			document.getElementById("page").style.width = (minSize-20) + 'px';
			document.getElementById("outerBanner").style.display = 'block';
		}
	}
}
addLoadEvent(initOuterBanner);
window.onresize = function() {initOuterBanner()};
// end initOuterBanner


// initAdvSearch - requires jQuery library
function initAdvSearch() {
	$(document).ready(function() {
		// hide advanced search
		$("#advancedSearch").hide(); 

		// define buttons click event
		$("#showAdvSearchButton").click(function(){
			$("#advancedSearch").slideDown();
			$("#showAdvSearch").toggleClass("hidden");
			$("#hideAdvSearch").toggleClass("hidden");
			return false;
		});

		$("#hideAdvSearchButton").click(function(){
			$("#advancedSearch").slideUp();
			$("#showAdvSearch").toggleClass("hidden");
			$("#hideAdvSearch").toggleClass("hidden");
			return false;
		});
	});
}


/* Start font size handler */

var defSize = 1.1;
var minSize = 0.9;
var maxSize = 1.5;
var sizeVar = 0.1;
var sizeUnit = "em";
//writeCookie("resize", defSize, 10000);

// Set Body text size
function setSize(iSize) {
	if (!document.getElementById) return false;

	var bodyTag = document.getElementById("newsBody");

	if (bodyTag) {
		if (!bodyTag.style.fontSize) {
			if (!readCookie("resize")) {
				bodyTag.style.fontSize = defSize + sizeUnit;
			}
			else {
				bodyTag.style.fontSize = ((parseFloat(readCookie("resize"))) + sizeUnit);
			}
		}
		else {
			if (!readCookie("resize")) {
				bodyTag.style.fontSize = defSize + sizeUnit;
			}
			else {
				var newSize = parseFloat(iSize) + parseFloat(readCookie("resize"));
				if ((newSize <= maxSize) && (newSize >= minSize))
					bodyTag.style.fontSize = newSize + sizeUnit;
			}
		}
		cookieValue = bodyTag.style.fontSize;
		writeCookie("resize", cookieValue, 10000);
	}
}

// Attaches the onclick event to the correct ids to allow resizing
function resizeT(iClass, iDir) {
	var incLink = getElementsByClassName(iClass);

	for (var i=0; i < incLink.length; i++) {
		if (iDir == "decrease") {
			incLink[i].onclick = function() {
				setSize("-" + sizeVar + sizeUnit);
				return false;
			}
		}
		if (iDir == "increase") {
			incLink[i].onclick = function() {
				setSize(sizeVar + sizeUnit);
				return false;
			}
		}
	}
}

// add increase / decrease font event handlers
addLoadEvent( function(){ resizeT("fntIncrease", "increase") } );
addLoadEvent( function(){ resizeT("fntDecrease", "decrease") } );

// set base font size
addLoadEvent( function(){ setSize(defSize + sizeUnit) } );

// Writes cookie
// writeCookie("myCookie", "my name", 24);
// Stores the string "my name" in the cookie "myCookie" which expires after 24 hours.

function writeCookie(name, value, hours) {
	var expire = "";
	if(hours != null) {
		expire = new Date((new Date()).getTime() + hours * 3600000);
		expire = "; expires=" + expire.toGMTString();
	}
	document.cookie = name + "=" + escape(value) + expire;
}

// Read Cookie
// alert( readCookie("myCookie") );
function readCookie(name){
	var cookieValue = "";
	var search = name + "=";

	if(document.cookie.length > 0) {
		offset = document.cookie.indexOf(search);

	if (offset != -1) {
		offset += search.length;

	end = document.cookie.indexOf(";", offset);

	if (end == -1) end = document.cookie.length;
		cookieValue = unescape(document.cookie.substring(offset, end)) }
	}

	return cookieValue;
}


// Gets all elements with the specified class
function getElementsByClassName(className, tag, elm){
	var testClass = new RegExp("(^|\\s)" + className + "(\\s|$)");
	var tag = tag || "*";
	var elm = elm || document;
	var elements = (tag == "*" && elm.all)? elm.all : elm.getElementsByTagName(tag);
	var returnElements = [];
	var current;
	var length = elements.length;
	for(var i=0; i<length; i++){
		current = elements[i];
		if(testClass.test(current.className)){
			returnElements.push(current);
		}
	}
	return returnElements;
}

/* End font size handler */

