// ******************************************************************************************************
// Function to popup url or image in new window
// ******************************************************************************************************
function PopUpGeneric(URL, width, height)
	{
	// Popup window with links to image library. 
	var popleft=((document.body.clientWidth - 440) / 2)+window.screenLeft; 
	var poptop=(((document.body.clientHeight - 460) / 2))+window.screenTop-40;		
	window.open(URL,"_blank","resizable=1,scrollbars=auto,width=" + width + ",height=" + height + ",left="+popleft+",top="+poptop)
	}

// ******************************************************************************************************
// Function that displays wait message when submitting a form
// css-style: .waitMsg {visibility:hidden; color: red; }
// sample code: <span class="waitMsg" ID="id_waitmsg">Loading Data. Please Wait...<br><img id=pbar src="/assets/layout/loading.gif"></span>
// ******************************************************************************************************
function ShowWaitMsg()
{
if(id_waitmsg) id_waitmsg.style.visibility = 'visible';
setTimeout('document.images["pbar"].src = "/assets/layout/loading.gif"', 200);
}

// ******************************************************************************************************
// Function to open help i Editor area
// ******************************************************************************************************
function OpenHelp(){
window.open("/Editor/Editor_help/help.htm","Help","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=990,height=550");
			}

// TOGGLE submenu Images
function switchid(id){	
	hideallids();
	showdiv(id);
}

function hideallids(){
	//loop through the array and hide each element by id
	for (var i=0;i<ids.length;i++){
		hidediv(ids[i]);
	}		  
}

function hidediv(id) {
	//safe function to hide an element with a specified id
	if (document.getElementById) { // DOM3 = IE5, NS6
		document.getElementById(id).style.display = 'none';
	}
	else {
		if (document.layers) { // Netscape 4
			document.id.display = 'none';
		}
		else { // IE 4
			document.all.id.style.display = 'none';
		}
	}
}

function showdiv(id) {
	//safe function to show an element with a specified id
		  
	if (document.getElementById) { // DOM3 = IE5, NS6
		document.getElementById(id).style.display = 'block';
	}
	else {
		if (document.layers) { // Netscape 4
			document.id.display = 'block';
		}
		else { // IE 4
			document.all.id.style.display = 'block';
		}
	}
}

// IMAGE WITH CAPTION

function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') 
	{
		window.onload = func;
	} 
	else 
	{
		window.onload = function() {
			oldonload();
			func();
		}
	}
}

String.prototype.trim = function() {
	return this.replace( /^\s+|\s+$/, "" );
}

function addClassName (elem, className) {
	removeClassName (elem, className);
	elem.className = (elem.className + " " + className).trim();
}

function removeClassName (elem, className) {
	elem.className = elem.className.replace(className, "").trim();
}

function getElementsByClassName(classname,tag) {
	if(!tag) tag = "*";
	var anchs =  document.getElementsByTagName(tag);
	var total_anchs = anchs.length;
	var regexp = new RegExp('\\b' + classname + '\\b');
	var class_items = new Array()

	for(var i=0;i<total_anchs;i++) 
	{ 
		var this_item = anchs[i];
		if(regexp.test(this_item.className)) {
			class_items.push(this_item);
		}
	}
	return class_items;
}


// Funktion för att automatiskt visa alt-taggen under bilden
function makeImageCaption()
{
	var imageArray = getElementsByClassName("bildtext", "img");
	for(var i = 0; i < imageArray.length; i++)
	{
		var container = document.createElement("div");
		
		container.className = "bildtext";
		imageArray[i].parentNode.insertBefore(container, imageArray[i]);
		container.appendChild(imageArray[i]);
		
		if(imageArray[i].getAttribute("title") != "")
		{
			var caption = document.createElement("p");
			caption.appendChild(document.createTextNode(imageArray[i].getAttribute("title")));
			container.appendChild(caption);
		}
		
		container.style.width = imageArray[i].style.width;
		removeClassName(imageArray[i], "bildtext");
	}
}

addLoadEvent(makeImageCaption);

// function för effektberäkning
// obs! om dropdownlister används - gäller följande syntax - exempel:
// var zon = effekt1.zon.options[effekt1.zon.selectedIndex].value;
// a= eval(effekt1.zon.options[effekt1.zon.selectedIndex].value)
function adCalc(effekt1) {
var ok = 0;

var zon = valButton(effekt1.zon);
var fonster = valButton(effekt1.fonster);
var temp = valButton(effekt1.temp);
var isolering = valButton(effekt1.isolering);
var omgivning = valButton(effekt1.omgivning);
var ytterv = valButton(effekt1.ytterv);
var golvyta = effekt1.golvyta.value;
var vaggyta = effekt1.vaggyta.value;
var fonsteryta = effekt1.fonsteryta.value;
var exposures = effekt1.exposures.value;

var incomplete = "Du måste klicka i alla alternativ,\noch fylla i alla mått innan du kan beräkna.";

if (zon != "" && fonster != "" && temp != "" && isolering != "" && omgivning != "" && ytterv != "" && vaggyta != "" && golvyta != "" && fonsteryta != "")  
{ 

// replace comma with dot
effekt1.vaggyta.value = effekt1.vaggyta.value.replace(",",".");
effekt1.fonsteryta.value = effekt1.fonsteryta.value.replace(",",".");
effekt1.golvyta.value = effekt1.golvyta.value.replace(",",".");

a= eval(valButton(effekt1.zon))
b= eval(valButton(effekt1.fonster))
c= eval(valButton(effekt1.temp))
d= eval(valButton(effekt1.isolering))
e= eval(valButton(effekt1.omgivning))
f= eval(valButton(effekt1.ytterv))
g= eval(effekt1.vaggyta.value)
h= eval(effekt1.fonsteryta.value)
i= eval(effekt1.golvyta.value)

j=((a+c+d)/100)
k=b*h
l=e*i
m=f*g
n=(k+l+m)*j
o=Math.round(n*100)/100
effekt1.exposures.value=o
ok++
}

if (!ok) alert(incomplete);  
}

// function valButton(btn)
function valButton(btn) {
 var cnt = -1;
 for (var i=btn.length-1; i > -1; i--) {
   if (btn[i].checked) {cnt = i; i = -1;}
   }
  if (cnt > -1) return btn[cnt].value;
 else return null;
}

// **********************************
// toggleDiv : Show / Hide Archive functions 
// **********************************
function toggleElement(id) {
 //var e = document.getElementById(id).style.display = '';
 var e = document.getElementById(id);

 if(e.style.display == 'none')
  e.style.display = '';
 else
  e.style.display = 'none';
 }