/**
* contains
* @param array
* @param element
*/
function contains(array, element) {
	var out = false;
	if (array.length > 0) {
		for (var i = 0; i < array.length; i++) {
			if (array[i] == element) {
				out = true;
				break;
			}
		}
	}
	return out;
}

/**
* listDates
* @param dates
*/
function listDates(dates) {
	var out = [];
	if (dates != undefined) {
	    var aux = new Array();
	    for (var i = 0; i < dates.length; i++) {
	    	aux[i] = new Date();
	    	aux[i].setTime(dates[i]);
	    }
	    var months = new Array();
	    for (var i = 0; i < aux.length; i++) {
	    	var m = aux[i].getMonth();
	    	if (!contains(months, m)) {
	    		months.push(m);
	    	}
	    }
		var aux2 = '{';
		for (var i = 0; i < months.length; i++) {
			var m = months[i];
			var days = new Array();
			for (var j = 0; j < aux.length; j++) {
				if (aux[j].getMonth() == m) {
					var d = aux[j].getDate();
					if (!contains(days, d)) {
		    			days.push(d);
		    		}
				}
			}
			var daysStr = '[';
			for (var j = 0; j < days.length; j++) {
				daysStr += days[j] + (j < days.length - 1 ? ',' : ']');
			}

			aux2 +=  months[i] + ':' + daysStr + (i < months.length - 1 ? ',' : '}')
		}
		eval('out = ' + aux2 + ';');
	}
	return out;
}

/**
 * Busca una marca de tiempo.
 *
 */
function searchDate(dates, y, m, d) {
	var aux = new Date();
	for (var i = 0; i < dates.length; i++) {
		aux.setTime(dates[i]);
		if (y == aux.getFullYear() && m == aux.getMonth() && d == aux.getDate()) {
			return dates[i];
		}
	}
	return '';
}

/**
 * Carga el contenido de un iframe.
 *
 */
function loadIframe(parentDivId, iframeId, url) {
	var parentDiv = document.getElementById(parentDivId);
	var iframe = document.getElementById(iframeId);
	iframe.src = url;

	try {
    	parentDiv.innerHTML = '';
	} catch (e) {
		alert(e);
	}
}

/**
 * Ocultar enlaces.
 *
 */
function hideLinks() {
	window.status = '';
	return true;
}

/* Codificacion / decodificacion de URL (no utilizadas) */

function encode(input) {
	return escape(input);
}
function decode(input) {
	return unescape(input.replace(/\+/g,  ' '));
}