var global_date_format="dd.mm.yyyy";var global_date_separator=".";var global_time_format="hh:mm";var global_time_separator=":";var global_decimal_separator=",";var dpu1=new Array();dpu1[0]="Søndag";dpu1[1]="Mandag";dpu1[2]="Tirsdag";dpu1[3]="Onsdag";dpu1[4]="Torsdag";dpu1[5]="Fredag";dpu1[6]="Lørdag";
var dpmm1=new Array();dpmm1[0]="Januar";dpmm1[1]="Februar";dpmm1[2]="Mars";dpmm1[3]="April";dpmm1[4]="Mai";dpmm1[5]="Juni";dpmm1[6]="Juli";dpmm1[7]="August";dpmm1[8]="September";dpmm1[9]="Oktober";dpmm1[10]="November";dpmm1[11]="Desember";
﻿
String.prototype.split=function(d){
	var a=[];var b=-1;var i=this.indexOf(d);
//TODO if no delimiter, push all into 0'th element.
	while(i >= 0){a[a.length]=this.substring(b+1,i);b=i;i=this.indexOf(d,i+1);}a[a.length]=this.substring(b+1,this.length);
	return(a);
}

String.prototype.trim=function(){
	try{
		var a=this;	if(a.length==0)return(a);
		while(a.charAt(0)==" ")a=a.substring(1,this.length);
		while(a.charAt(a.length-1)==" ")a=a.substring(0,a.length-1);
		return(a);
	}catch(e){return(this);}
	return(this);
}

String.prototype.right=function(length){
	try{
		var a=this;	if(a.length<=length)return(a);
		return(a.substring(a.length-length, a.length));
	}catch(e){return(this);}
	return(this);
}

function getClassName(DOMNode){
	var c="";
	try{
		if(DOMNode.getAttribute("class")!=null)c=DOMNode.getAttribute("class");
		if(c=="")c=(IE6|IE5|IE4)?DOMNode.className:DOMNode.getAttribute("class");
		return(c);
	}catch(e){
		return(c);
	}
}

function isElementOfClass(DOMNode, sClass){
	var a=getClassName(DOMNode);
	var b
	try{
		b=a.split(" ");
	}
	catch(e){
		return(false);
	}
	for(var i=b.length-1;i>=0;i--)if(b[i]==sClass)return(true);
	return(false);
}

function Request(){
	this.cookies=[];
	var a=location.search;
	var b=a.substring(1,a.length).split("&");
	for(var i=0;i<b.length;i++)this[unescape(b[i].split("=")[0])]=unescape(b[i].split("=")[1]);
	var c=window.top.document.cookie;var d=c.split(";");
	for(var i=d.length-1;i>=0;i--){var e=d[i].split("=");var k=unescape(e[0]).trim();var v=unescape(e[1]).trim();this.cookies[k]=v;}
	a=null;b=null;c=null;d=null;e=null;k=null;v=null;
}Request.prototype=new Array();
try{Request.prototype.constructor=Request;}catch(e){}

var request=new Request();

// ------ Browser detection! ----------------------------------------------------------------------------------------------------------------
var IE4 = (document.all && !document.getElementById) ? true : false;
var IE5 = (document.all &&  document.getElementById && document.documentElement && ((document.designMode+"") != "undefined")) ? true : false;
var IE6 = IE5;
//var IE6 = (document.all &&  document.getElementById && document.documentElement && ((document.designMode+"") != "undefined")) ? true : false;
var NS4 = (document.layers) ? true : false;
var NS6 = (document.getElementById && !document.all && document.documentElement) ? true : false;
var OP5 = (document.getElementById && !document.documentElement) ? true : false;
var OP7 = (document.all &&  document.getElementById && document.documentElement && ((document.designMode+"") == "undefined")) ? true : false;
var OP5pure = (document.getElementById && !document.all && !document.documentElement) ? true : false;
var KDE = (navigator.vendor == "KDE") ? true : false;
// ------------------------------------------------------------------------------------------------------------------------------------------
﻿function openNewWindow(){
	if(this){
		open(this.href, "", "");
		return(false);
	}
}
function historyBack(step){
	history.back(step);
}

function LoadGallery(picna, imgFil){
	document.getElementById(picna).src = imgFil;
}

var global_level2=null;
function showCC2(selected){
	var visibleselect = document.getElementById("TLcc2div_" + selected.value);
	if(global_level3){
		var a=global_level3.split(",");
		for(var i=a.length-1; i>=0; i--){
			if(a[i]!=""){
				var b=document.getElementById(a[i]);
				if(b){
					b.style.display="none";
				}
			}
		}
	}
	global_level3=null;
	if(global_level2){
		var a=global_level2.split(",");
		for(var i=a.length-1; i>=0; i--){
			if(a[i]!=""){
				var b=document.getElementById(a[i]);
				if(b){
					b.style.display="none";
					b=document.getElementById(a[i].replace("TLcc2div_","TLcc2_"));
					if(b)b.selectedIndex=0;
				}
			}
		}
	}
	global_level2s=null;
    if(visibleselect){
		global_level2 += "," + visibleselect.id;
		visibleselect.style.display="block";
	}
	var c=document.getElementById("TLcc");
	if(c)c.value=selected.value;
}

var global_level3=null;
function showCC3(selected){
	var visibleselect = document.getElementById("TLcc3div_" + selected.value);
	if(global_level3){
		var a=global_level3.split(",");
		for(var i=a.length-1; i>=0; i--){
			if(a[i]!=""){
				var b=document.getElementById(a[i]);
				if(b){
					b.style.display="none";
				}
			}
		}
	}
	global_level3=null;
    if(visibleselect){
		global_level3 += "," + visibleselect.id;
		visibleselect.style.display="block";
	}
	var d=document.getElementById("TLtf");
	if(d){
		if(selected.value=='53000055'){// Set TopicFlag for Matopplevelser
			d.value="56";
		}else if(selected.value=='53000013'){// Set TopicFlag for Barnas Østfold 
			d.value="54";
		}else{
			d.value="";
		}
	}
	var c=document.getElementById("TLcc");
	var e=document.getElementById("p");
	if(e)if(e.value=="")e.value=c.value;
	if(c)c.value=selected.value;
}

function showCC4(selected){
	var c=document.getElementById("TLcc");
	if(c)c.value=selected.value;
}

function UpdateDateRange(){
	var a=document.getElementById("TLfd");
	if(a){
		var b=document.getElementById("fdy");
		var c=document.getElementById("fdm");
		var d=document.getElementById("fdd");
		if(b)if(c)if(d){
			a.value = b.value+"-"+("0"+c.value).right(2)+"-"+("0"+d.value).right(2);
		}
	}
	a=document.getElementById("TLtd");
	if(a){
		var b=document.getElementById("tdy");
		var c=document.getElementById("tdm");
		var d=document.getElementById("tdd");
		if(b)if(c)if(d){
			a.value = b.value+"-"+("0"+c.value).right(2)+"-"+("0"+d.value).right(2);
		}
	}
}﻿
function attatchEvents(){
	if(!(document.getElementById))return(false);
	var h=document.getElementsByTagName("a");
	for(var i=h.length-1;i>=0;i--){
		var v=h[i];
		if(isElementOfClass(v,"targetblank"))v.onclick=openNewWindow;
	}
	loadDatePicker();
}

if(document.addEventListener){
	window.addEventListener("load",attatchEvents,false);
}else if(document.attachEvent){
	window.attachEvent("onload",attatchEvents);
}else{
	document.body.onload=attatchEvents;
}
﻿
var dp_timer=null;
var dp_container=null;
var dp_yy_container=null;
var dp_mm_container=null;
var dp_all=null;

Date.prototype.toLocalizedString=function(){
	var dd=this.getDate()+"";
	var mm=(this.getMonth()+1)+"";
	var yyyy=this.getFullYear()+"";
	if(dd.length==1)dd="0"+dd;
	if(mm.length==1)mm="0"+mm;
	return(global_date_format.replace("dd",dd).replace("mm",mm).replace("yyyy",yyyy));
}

Date.prototype.parseExact=function(dateString){
	if(dateString.length!=global_date_format.length){return(false);}
	var a=dateString.split(global_date_separator);
	if(a.length!=3){return(false);}
	var b=global_date_format.split(global_date_separator);
	if(a[0].indexOf("0")==0)a[0]=a[0].substring(1,2);
	if(a[1].indexOf("0")==0)a[1]=a[1].substring(1,2);
	if(a[2].indexOf("0")==0)a[2]=a[2].substring(1,2);
	var c=0;
	for(var i=0;i<3;i++){
		switch(b[i]){
			case "dd":c=parseInt(a[i]);if(c>31)return(false);this.setDate(c);break;
			case "mm":c=parseInt(a[i]);if(c>12)return(false);this.setMonth(c-1);break;
			case "yyyy":if(a[i].length!=4)return(false);c=parseInt(a[i]);if(c>3000)return(false);if(c<1753)return(false);this.setYear(c);break;
			default:return(false);break;
		}
	}
	return(true);
}

Date.prototype.parseExactTime=function(timeString){
	if(timeString.length!=global_time_format.length){return(false);}
	var a=timeString.split(global_time_separator);
	if(a.length!=2){return(false);}
	var b=global_time_format.split(global_time_separator);
	if(a[0].indexOf("0")==0)a[0]=a[0].substring(1,2);
	if(a[1].indexOf("0")==0)a[1]=a[1].substring(1,2);
	var c=0;
	for(var i=0;i<2;i++){
		switch(b[i]){
			case "hh":c=parseInt(a[i]);if(c>23)return(false);this.setHours(c);break;
			case "mm":c=parseInt(a[i]);if(c>59)return(false);this.setMinutes(c);break;
			default:return(false);break;
		}
	}
	return(true);
}

function getDate(dateString){
	if(dateString.length!=global_date_format.length){return(null);}
	var ddsi=global_date_format.indexOf("dd");
	var ddei=global_date_format.indexOf("dd")+2;
	var mmsi=global_date_format.indexOf("mm");
	var mmei=global_date_format.indexOf("mm")+2;
	var yyyysi=global_date_format.indexOf("yyyy");
	var yyyyei=global_date_format.indexOf("yyyy")+4;	
	
	var dd = dateString.substring(ddsi,ddei);
	var mm = dateString.substring(mmsi,mmei);
	var yyyy = dateString.substring(yyyysi,yyyyei);
	
	if(dd.indexOf("0") == 0){
		dd = dd.substring(1);
	}
	if(mm.indexOf("0") == 0){
		mm = mm.substring(1);
	}
	return new Date(yyyy,parseInt(mm)-1,dd,0,0,0,0);
}
function showYear(){
	if(!(dp_yy_container))dp_yy_container=document.getElementById("dpyy");
	dp_yy_container.innerHTML=global_yy;
}
function showMonth(){if(!(dp_mm_container))dp_mm_container=document.getElementById("dpmm");dp_mm_container.innerHTML=dpmm[global_mm];}
function addYear(yy){global_yy+=yy;showYear();updateDatePicker();}
function addMonth(mm){global_mm+=mm;if(global_mm==-1){global_mm=11;global_yy--;showYear();}if(global_mm==12){global_mm=0;global_yy++;showYear();}showMonth();updateDatePicker();}
function updateDatePicker(){
	if(!(dp_container))dp_container=document.getElementById("dpcontent");
	dpd.setYear(global_yy);dpd.setMonth(global_mm);dpd.setDate(1);
	var a=dpd.getDay(),b=global_mm,d=global_mm,o="";
	if(a!=1){
		if(a==0)a=7;for(var i=a;i>1;i--)dpd.setDate(dpd.getDate()-1);d=dpd.getMonth();
		while((d<b)|(b==0&d==11)){o+="<p class=\"datepicker\">"+dpd.getDate()+"</p>";dpd.setDate(dpd.getDate()+1);d=dpd.getMonth();}
	}
	while(d==b){var l=dpd.getDate();o+="<a href=\"#\" class=\"datepicker\" onclick=\"chooseDate("+l+","+(global_mm+1)+","+global_yy+");return(false);\">"+l+"</a>";dpd.setDate(l+1);d=dpd.getMonth();}
	a=dpd.getDay();
	if(a!=1){if(a==0)a=7;for(var i=7-a;i>=0;i--){o+="<p class=\"datepicker\">"+dpd.getDate()+"</p>";dpd.setDate(dpd.getDate()+1);}}
	dp_container.innerHTML=o;
}

try{
	var dp_now=new Date(),dpd=new Date();
	var dpmm=dpmm1;
	var dpu=dpu1;
	var global_yy=dpd.getFullYear(),global_mm=dpd.getMonth();
	if(global_yy<1000)global_yy+=1900;
	var dp_pn_yy="<a class=\"prev datepicker\" href=\"#\" onclick=\"addYear(-1);return(false);\">&lt;</a><a class=\"next datepicker\" href=\"#\" onclick=\"addYear(1);return(false);\">&gt;</a>";
	var dp_pn_mm="<a class=\"prev datepicker\" href=\"#\" onclick=\"addMonth(-1);return(false);\">&lt;</a><a class=\"next datepicker\" href=\"#\" onclick=\"addMonth(1);return(false);\">&gt;</a>";	
	var dp_yy="<div id=\"dpyy\" class=\"datepicker\">"+global_yy+"</div>";
	var dp_mm="<div id=\"dpmm\" class=\"datepicker\">"+dpmm[global_mm]+"</div>";
	var dp_hr="<div class=\"hr datepicker\"></div>";
	var dp_ww="<p class=\"datepicker\">"+dpu[1].charAt(0)+"</p><p class=\"datepicker\">"+dpu[2].charAt(0)+"</p><p class=\"datepicker\">"+dpu[3].charAt(0)+"</p><p class=\"datepicker\">"+dpu[4].charAt(0)+"</p><p class=\"datepicker\">"+dpu[5].charAt(0)+"</p><p class=\"dph datepicker\">"+dpu[6].charAt(0)+"</p><p class=\"dph datepicker\">"+dpu[0].charAt(0)+"</p>";
	var dp_end="<span id=\"dpcontent\" class=\"datepicker\"></span>";
	var dp_all=dp_pn_yy+dp_yy+dp_pn_mm+dp_mm+dp_hr+dp_ww+dp_end;
}catch(e){alert(e);}

var global_date_target=null;
function pickDate(){
	global_date_target=(this.nodeName.toLowerCase()=="a")?this.previousSibling:this;
	if(global_date_target.nodeName.toLowerCase()=="/input"&&global_date_target.previousSibling)global_date_target=global_date_target.previousSibling;
	var tmpValue=global_date_target.value;
	var fd=document.getElementById("TLfd");
	var td=document.getElementById("TLtd");
	if(fd != null && td != null){
		if(global_date_target==td && tmpValue==""){
			tmpValue=fd.value;
		}else{
			var a = document.getElementById("producttime");
			if(a){
				resetDays();
			}
		}
	}
	showDatePicker(tmpValue);
	return(false);
}

var global_datepicker=null;
function showDatePicker(date){
	if(!(global_datepicker))global_datepicker=document.getElementById("datepicker");
	a=global_datepicker;
	if(!(a)){
		global_datepicker=document.createElement("div");
		global_datepicker.setAttribute("id","datepicker");
		global_datepicker.style.height="auto";
		if(global_datepicker.className){global_datepicker.className="datepicker";}else{global_datepicker.setAttribute("class","datepicker");}
		global_datepicker.innerHTML=dp_all;
		document.getElementsByTagName("body")[0].appendChild(global_datepicker);
	}
	a=global_datepicker;
	dpd=new Date();
	global_yy=dpd.getFullYear();
	global_mm=dpd.getMonth();
	if(dpd.parseExact(date)){
		global_yy=dpd.getFullYear();
		global_mm=dpd.getMonth();
	}
	showYear();
	showMonth();
	updateDatePicker();
	a.style.display="block";
	a.style.position="absolute";
//	var left = ((event.clientX-180)<450)?450:(event.clientX-180);
//	a.style.left=left+"px";
//	a.style.top=(event.clientY-50)+"px";
	a.style.left="735px";
	a.style.top="100px";
	return(false);
}

function resetDays(){
	for(var i=0;i<dayArrayIndex.length;i++){
		var dag=document.getElementById(dayArrayIndex[i]);
			dag.checked=false;
	}	
}

function chooseDate(dd, mm, yyyy){
	var d=new Date(yyyy,parseInt(mm)-1,dd,0,0,0,0);
	if(global_date_target)global_date_target.setAttribute("value",d.toLocalizedString());
	var tmpTD=document.getElementById("TLtd");
	var tmpFD=document.getElementById("TLfd");
	if((global_date_target==tmpTD && tmpFD.value != "") || (global_date_target==tmpFD && tmpTD.value != "")){
		var fd=new Date();
		var td=new Date();
		fd.parseExact(tmpFD.value);
		td.parseExact(tmpTD.value);
		if(fd != null && td != null){
		
				if(global_date_target==tmpFD){
					var fdd=document.getElementById("fdd");
					var fdm=document.getElementById("fdm");
					var fdy=document.getElementById("fdy");
					fdd.selectedIndex=fd.getDate()-1;
					fdm.selectedIndex=fd.getMonth();
					fdy.options[fdy.selectedIndex].value=fd.getFullYear();
					fdy.options[fdy.selectedIndex].text=fd.getFullYear();
					UpdateDateRange();
				} else if(global_date_target==tmpTD){
					var tdd=document.getElementById("tdd");
					var tdm=document.getElementById("tdm");
					var tdy=document.getElementById("tdy");
					tdd.selectedIndex=td.getDate()-1;
					tdm.selectedIndex=td.getMonth();
					tdy.options[tdy.selectedIndex].value=td.getFullYear();
					tdy.options[tdy.selectedIndex].text=td.getFullYear();
					UpdateDateRange();
				}
		}
	}

	if(!(global_datepicker))global_datepicker=document.getElementById("datepicker");
	if(global_datepicker)global_datepicker.style.display="none";
}
function handleChangeDate(){
	if(this.value > ""){
		var d=getDate(this.value);
		if(d != null){
			global_date_target=this;
			chooseDate(d.getDate(),d.getMonth()+1,d.getFullYear());
		}
	}
}
function clearDatePicker(){
	global_datepicker=document.getElementById("datepicker");
    if(!(global_datepicker))global_datepicker=document.getElementById("datepicker");
	if(global_datepicker){
	    if(!isElementOfClass(event.srcElement,"datepicker")){
	        global_datepicker.style.display="none";
	    }
	}
}
function loadDatePicker(){
	var v=document.getElementById("TLfd");
	if(v)v.onclick=pickDate;

	v=document.getElementById("TLtd");
	if(v)v.onclick=pickDate;

	v=document.getElementById("fda");
	if(v)v.onclick=pickDate;

	v=document.getElementById("tda");
	if(v)v.onclick=pickDate;
	
	if(document.addEventListener){
    document.addEventListener("mousedown",clearDatePicker,false);
	}else{
		document.body.onmousedown=clearDatePicker;
	}
}﻿var http_request = false;

function callWS(url,parameters,resultHandler){/* Connot use errorHandler: infinite loop*/
	http_request = false;
	if(window.XMLHttpRequest){
		http_request = new XMLHttpRequest();
		if(http_request.overrideMimeType)http_request.overrideMimeType("text/xml");
	}else if(window.ActiveXObject){
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		}catch(e){
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			}catch(e){}
		}
	}
	if(!http_request)return(false);
	if(resultHandler)http_request.onreadystatechange=resultHandler;
	//try{
		http_request.open("POST", url, true);
		http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		http_request.setRequestHeader("Content-length", parameters.length);
		http_request.setRequestHeader("Connection", "close");
		http_request.send(parameters);
	//}catch(e){}
}

