if(window.addEventListener) {
window.addEventListener("load", loadEvents, true);
}
else if(window.attachEvent) {
window.attachEvent("onload", loadEvents);
}

function loadEvents() {
inputs = document.getElementsByTagName('INPUT');
textareas = document.getElementsByTagName('TEXTAREA');
showRatingsForm = document.getElementById('rflink');
ratingsubmit = document.getElementById('ratingsform');

if(showRatingsForm) {
showRatingsForm.onclick = ratingsBox;
}

if(ratingsubmit) {
ratingsubmit.onsubmit = checkVote;
}

if(inputs) {
	for(i = 0; i < inputs.length; i++) {
		if(window.addEventListener) {
		inputs[i].addEventListener("focus", disableSwitcher, true);
		inputs[i].addEventListener("blur", enableSwitcher, true);
		}
		else if(window.attachEvent) {
		inputs[i].attachEvent("onfocus", disableSwitcher);
		inputs[i].attachEvent("onblur", enableSwitcher);		
		}
	}
}
if(textareas) {
	for(j = 0; j < textareas.length; j++) {
	textareas[j].onfocus = disableSwitcher;
	textareas[j].onblur = enableSwitcher;
	}
}
}

function ratingsBox() {
rf = document.getElementById('ratingsform');
rfl = document.getElementById('rflink');

	if(rf.style.display == "block") {
	rf.style.display ="none";
	rfl.innerHTML = "Vote";
	}
	else {
	rfl.innerHTML = "Hide";
	rf.style.display ="block";
	document.getElementById('userrating').focus();
	}
}

function checkVote() {
uservote = document.getElementsByName('rating')[0].value;
	if(isNaN(uservote) || !uservote) {
	alert('You must enter a number between 0 and 10!');
	return false;
	}
	if(uservote < 0 || uservote > 10) {
	alert('You must enter a number between 0 and 10!');
	return false;
	}
return true;
}

function disableSwitcher() {
document.onkeydown = null;
}

function enableSwitcher() {
document.onkeydown = detectkey;
}

document.onkeydown = detectkey;
var svalue;
var stylepos = -1;

function detectkey(e) {
if(!e) {
e = window.event;	
}
if(e.keyCode) {
code = e.keyCode;
}
else if(e.which) {
code = e.which;
}
if(code == "37") {
keySwitchStyle("left");
}
else if(code == "39") {
keySwitchStyle("right");
}
else {
return;	
}
}

function keySwitchStyle(keyp) {
linktags = document.getElementsByTagName('link');
slinks = new Array;
w = 0;
for(q = 0; q < linktags.length; q++) {
	if(linktags[q].getAttribute("rel").indexOf("style") != -1 && linktags[q].getAttribute("title")) {
	slinks[w] = linktags[q];
	w++;
	linktags[q].disabled = true;
	}
	if(linktags[q].rel == "shortcut icon") {

	favilink = linktags[q];

	}
}

if(stylepos == -1) {
stylepos = 0;
}

	if(keyp == "left") {
		stylepos--;
		if(stylepos < 0) {
		stylepos = slinks.length-1;
		slinks[stylepos].disabled = false;
		svalue = slinks[stylepos].getAttribute("href").split('nos/');
		}
		else {
		slinks[stylepos].disabled = false;
		svalue = slinks[stylepos].getAttribute("href").split('nos/');
		}
	}
	if(keyp == "right") {
		stylepos++;
		if(stylepos >= slinks.length) {
		stylepos = 0;
		slinks[stylepos].disabled = false;
		svalue = slinks[stylepos].getAttribute("href").split('nos/');
		}
		else {
		slinks[stylepos].disabled = false;
		svalue = slinks[stylepos].getAttribute("href").split('nos/');
		}
	}
svalue2 = svalue[1].split('.');

	if(document.getElementById('cbframe')) {
	switchFrameStyle(svalue2[0]);
	}
	
	if(favilink) {
	setFavicon(svalue2[0],favilink);
	}

setcookie(svalue2[0]);
}


function switchStyle(svalue) {
linktagsb = document.getElementsByTagName('link');
	for(j = 0; j<linktagsb.length; j++) {
		if(linktagsb[j].getAttribute("rel").indexOf("style") != -1 && linktagsb[j].getAttribute("title")) {
		linktagsb[j].disabled = true;
			if(linktagsb[j].getAttribute("href").indexOf(svalue) != -1) {
			linktagsb[j].disabled = false;
			setcookie(svalue);
			}
		}
		if(linktagsb[j].getAttribute("rel").indexOf("shortcut icon") != -1) {
		faviref = linktagsb[j];
		}
	}
	if(faviref) {
	setFavicon(svalue,faviref);
	}
}

function setFavicon(stylename,favilink) {
	headnode = document.getElementsByTagName('head')[0];
	headnode.removeChild(favilink);
	newlink = document.createElement('link');
	newlink.rel = "shortcut icon";
	newlink.href = "http://www.pulpwiki.net/pulpwiki/pub/skins/nos/" + stylename + "2.ico";
	headnode.appendChild(newlink);
}

function setcookie(svalue) {
	if(svalue) {
	var date = new Date();
	date.setTime(date.getTime()+(2592000000));
	var expires = "; expires="+date.toGMTString();
	document.cookie = "pulpwikistyle="+svalue+expires+"; path=/";
	}
}
