/* Especifica el periodo de tiempo entre actualizaciones:
month - una vez al mes
date - una vez por día (se repite el próximo mes)
weekday - una vez por día (se repite la próxima semana)
hour - una vez por hora (se repite el próximo día)
request - por defecto
*/

var updatePeriods = new Array("month","date","weekday","hour","request")

// Invocada para mostrar el contenido rotado en una página web. El periodo
// debe ser un elemento del arreglo updatePeriods.

function displayRotatedContent(period) {
var updatePeriod = -1
for(var i=0;i<content.length;++i) {
if(period.toLowerCase() == updatePeriods[i].toLowerCase()) {
updatePeriod = i
break
}
}
var s = selectHTML(updatePeriod)
document.write(s)
}

function selectHTML(updatePeriod) {
var n = 0
var max = content.length
var d = new Date()
switch(updatePeriod) {
case 0: // Month (0 - 11)
n = d.getMonth()
break
case 1: // Date (1 - 31 / 0 - 30)
n = d.getDate() - 1
break
case 2: // Weekday (0 - 6)
n = d.getDay()
break
case 3: // Hour (0 - 23)
n = d.getHours()
break
case 4: // Request 
default:
n = selectRandom(max)
}
n %= max 
return content[n]
}

// Seleccionar un entero al azar, entre 0 (inclusive) and max (exclusivo)
function selectRandom(max) {
var r = Math.random()
r *= max
r = parseInt(r)
if(isNaN(r)) r = 0
else r %= max
return r
}

