document.getElementsByClassName = function(cl) {
var retnode = [];
var myclass = new RegExp('\\b'+cl+'\\b');
var elem = this.getElementsByTagName('*');
for (var i = 0; i < elem.length; i++) {
var classes = elem[i].className;
if (myclass.test(classes)) retnode.push(elem[i]);
}
return retnode;
};


var myBody = document.getElementsByTagName("body")[0];

var horizontalScroll = 0;
var verticalScroll = 0;
window.onscroll = function updateScroll(){
	if (window.innerWidth) {
		// All browsers but Internet Explorer
		horizontalScroll = window.pageXOffset; verticalScroll = window.pageYOffset;
		}
		else if(document.documentElement && document.documentElement.clientWidth){
		// These are for Internet Explorer 6 when a DOCTYPE is defined
		horizontalScroll = document.documentElement.scrollLeft;
		verticalScroll = document.documentElement.scrollTop; }
		else if (document.body.clientWidth) {
		// These are for Internet Explorer 5/6 without a DOCTYPE
		horizontalScroll = document.body.scrollLeft; verticalScroll = document.body.scrollTop;
	}
}


// Yksinkertainen lomaketarkistaja

function checkForm(form){
	var yelled = 0;
	var inputs 	= document.getElementsByClassName("mandatory");
	for(var i=0;i<inputs.length;i++){
		if(yelled == 0){
			if(inputs[i].value == ""){
				switch(inputs[i].name){
				
					// Määritä herjat
					
					case "nimi": alert("Ole hyvä ja anna nimesi"); break;
					case "sposti": alert("Ole hyvä ja anna sähköpostiosoitteesi"); break;
					default: alert("Ole hyvä ja täytä tarvittavat kentät"); break;
				}
				inputs[i].focus();
				yelled = 1;
				return false;
			}
		}
	}
	if(yelled == 0) form.submit();
}

if(document.getElementById("tilaaNytForm")){
	document.getElementById("tilaaNytForm").onsubmit = function(){
		if(document.getElementById("tilaaNytForm").olen18v.checked == true){
			checkForm(this); return false;
		}
		else{
			alert("Sinun tulee olla vähintään 18-vuotias!");
			return false;
		}
	}
}


// Tooltip

if(document.getElementById("tooltip")){

	var tooltipLinks = document.getElementsByClassName("tooltip");

	for(var i=0;i<tooltipLinks.length;i++){ // Remove alt-attributes from images because of IE's stupid habit of treating them as titles
		for(var a=0;a<tooltipLinks[i].childNodes.length;a++){
			var baby = tooltipLinks[i].childNodes[a];
			if(baby.alt !== "") baby.alt = "";
		}
		tooltipLinks[i].onmouseover = function(){
			showTooltip(this.rel);
		}
		tooltipLinks[i].onmouseout = function(){
			hideTooltip();
		}
	}

	var draggingNow = "";
	var tt = document.getElementById("tooltip");

	function showTooltip(content){
		tt.style.display = "inline";
		tt.innerHTML = "<p>" + content + "</p>";
		draggingNow = "tooltip";
	}
	
	document.onmousemove = function(e){
		if(!e) e = window.event;
		if(draggingNow !== ""){
			var x = e.clientX;
			var y = e.clientY;
			var toDrag = document.getElementById(draggingNow);
			toDrag.style.left = (x + horizontalScroll) + 10 + "px";
			toDrag.style.top = (y + verticalScroll) + 10 + "px";
		}
	}
	
	function hideTooltip(){
		draggingNow = "";
		tt.innerHTML = "";
		tt.style.display = "none";
	}
	
}

document.getElementById("logo").onclick = function(){ window.location.href = "./"; }

var cLinks = document.getElementsByClassName("confirm");
for(var i=0;i<cLinks.length;i++){
	cLinks[i].onclick = function(){
		var sure = confirm("Oletko varma?");
		if(sure) return true;
		else return false;
	}
}



function toggleDiv(divId){
	var myDiv = document.getElementById(divId);
	if(myDiv.style.display !== "none"){
		myDiv.style.display = "none";
	}
	else{
		myDiv.style.display = "inline";
	}
}


function checkIfCommentScroll(){
	if(window.location.href.indexOf("/kommentit") > -1){
		setTimeout('animateScrollDown();', 1000);
		setTimeout('clearTimeout(scrollNroll); goin = 1;', 2000);
	}
}

if(document.getElementById("comments")){
	var goin = 1;
	var scrollNroll;
	var myPlace = document.getElementById("comments").offsetTop - 20;
	function animateScrollDown(){
		
		if(verticalScroll < myPlace){
			var toHere = verticalScroll + goin;
			//goin ++;
			window.scrollBy(0, toHere);
			scrollNroll = setTimeout('animateScrollDown()', 50);
		}
		else{
			window.scrollTo(0, myPlace);
			clearTimeout(scrollNroll);
			goin = 1;
			//alert(verticalScroll + " --> " + document.getElementById("comments").offsetTop);
		}
	}
}
checkIfCommentScroll();
