window.onbeforeunload = confirmExit;
var aClick = false;
var bAlert = false;

function confirmExit(e){
    if (document.all) e = event;
    if (!e) e = window.event;
    if (e){
        if(aClick == false && bAlert == true && (e.target == document || e.clientX<0 || e.clientY<0)){ 
            return "Tietoja ei ole vielä tallennettu!"; 
        } 
    }
}

function set_reminder(bool){
    if (bool == true && window.event.keyCode != 67 && window.event.keyCode != 17 && window.event.keyCode != 16 && window.event.keyCode != 20 && window.event.keyCode != 9 && window.event.keyCode != 27 && window.event.keyCode != 45 && window.event.keyCode != 37 && window.event.keyCode != 38 && window.event.keyCode != 39 && window.event.keyCode != 40 && window.event.keyCode != 33 && window.event.keyCode != 34 && window.event.keyCode != 35 && window.event.keyCode != 36 && window.event.keyCode != 19){
        bAlert = bool;
    }
}

function reminder(){
	if (bAlert)
	    if (confirm('Haluatko varmasti navigoida pois tältä sivulta\n\nTietoja ei ole vielä tallennettu!\n\nPaina OK jatkaaksesi tai Peruuta pysyäksesi nykyisellä sivulla.')){return true;}else{return false;}
	else return true;
}

function stopEvent(e) {
	if(!e) var e = window.event;
	
	//e.cancelBubble is supported by IE - this will kill the bubbling process.
	e.cancelBubble = true;
	e.returnValue = false;

	//e.stopPropagation works only in Firefox.
	if (e.stopPropagation) {
		e.stopPropagation();
		e.preventDefault();
	}
	return false;
}

function highlight(tr, color){
	tr.style.backgroundColor = color;
}

var newwindow;
function popup(url){
	newwindow=window.open(url,'name','height=500,width=400,left=100,top=100,resizable=no,scrollbars=yes,toolbar=no,status=no');
	if (window.focus) {newwindow.focus()}
}

function checkradio(theRadio) {
	if(theRadio.getAttribute("wasChecked")=="true") {
		theRadio.checked=false;
		theRadio.setAttribute("wasChecked","false");
	} else {
		theRadio.setAttribute("wasChecked","true");
	}
}

function selectAll(selectBox, selectAll) {
	if (typeof selectBox == "string") {
		selectBox = document.getElementById(selectBox);
	}

	if (selectBox.type == "select-multiple") {
		for (var i = 0; i < selectBox.options.length; i++) {
			selectBox.options[i].selected = selectAll;
		}
	}
}

function selectAllCheckboxes(checked){
	var checkboxes = document.getElementsByTagName("input")
	for (i = 0; i < checkboxes.length; i++){
		if (checkboxes[i].type == "checkbox" && checkboxes[i].name.substring(0, 6) == "select"){
			checkboxes[i].checked = checked;	
		}
	}
}

function preview_bill(str_location){
	var query = "";
	var inputs = document.getElementsByTagName("input");
	for (i = 0; i < inputs.length; i++){
		if (inputs[i].type == "text" && inputs[i].name.substring(0, 9) == "pdf_lasku"){
			query += "&" + inputs[i].id + "=" + urlencode(inputs[i].value);
		}
	}
	location.href = str_location + '?preview=true' + query;	
}

function urlencode(str) {
	return escape(str).replace(/\+/g,'%2B').replace(/%20/g, '+').replace(/\*/g, '%2A').replace(/\//g, '%2F').replace(/@/g, '%40');
}

