/*
 * News Rotation
 * by Camilo Kawerín
 *
 */

var rotateSpeed = 4000;

var allNews = 0;

var pauseNews = false;

var rowName = "nota";

var mainName = "destacados"

function nodeAnchor(node) {

	for (y = 0; y < node.childNodes.length; y++) {

		if (node.childNodes[y].nodeName == "A") {

			return node.childNodes[y];

		}

	}

}


function rotateNews(dirNews) {

	currentNews = parseFloat(mainNews.className.replace(rowName, ""));

	currentNews = currentNews + dirNews;

	if (currentNews >= allNews) {

		currentNews = 0;

	} else if (currentNews < 0) {

		currentNews = allNews - 1;

	}

	mainNews.className = rowName + String(currentNews);

}

function initRotate() {

	if (!pauseNews && allNews > 1) {

		rotateNews(1);

	}
}

function initNews() {

	if (document.getElementById("controls")) {

		mainNews = document.getElementById(mainName);

		for (i=0; i<mainNews.childNodes.length; i++) {

			nodeNews = mainNews.childNodes[i];

			if (nodeNews.nodeName == "DIV") {

				allNews++;
				
				nodeNews.onmouseover = function() {

					pauseNews = true;

				}

				nodeNews.onmouseout = function() {

					pauseNews = false;

				}

			}

		}

		controlsRoot = document.getElementById("controls");

		for (i=0; i<controlsRoot.childNodes.length; i++) {

			controlsNode = controlsRoot.childNodes[i];

    		if (controlsNode.nodeName == "LI" && controlsNode.className == "forward") {

				nodeAnchor(controlsNode).onclick = function() {

					rotateNews(1);

					return false;

				}

			} else if (controlsNode.nodeName == "LI" && controlsNode.className == "rewind") {

				nodeAnchor(controlsNode).onclick = function() {

					rotateNews(-1);

					return false;

				}

			} else if (controlsNode.nodeName == "LI" && controlsNode.className == "pause") {

				nodeAnchor(controlsNode).onclick = function() {

					if (!pauseNews) {

						pauseNews = true;

						document.getElementById("pause").className = "play";

					} else {

						pauseNews = false;

						document.getElementById("pause").className = "pause";

					}

					return false;

				}

			}

		}

		setInterval("initRotate()", rotateSpeed);

	}

}


