function showImgSelect(obj,obj2){
		element = document.getElementById(obj);
		element2 = document.getElementById(obj2);
		if(element != undefined || element != null){
			var outparam = new Array();
			if(element.value != ""){
				outparam.f_url = element.value;
			} else {
				outparam.f_url = "about:blank";
			}
			outparam.f_alt = "";
			outparam.f_border = "";
			outparam.f_align = "";
			outparam.f_vert = "";
			outparam.f_horiz = "";
			Dialog("/cms/imgbrowse/index2.php?-usr=&-pwd=&lng=NL&domeinid=1", function(code){
				element.value = code.f_url;
				element2.src = "/cms/dbimg/img.php?img="+escape(code.f_url);
			}, outparam);
		} else {
			alert("We konden niet het object vinden.");
		}
	}function showFileSelect(obj){
		element = document.getElementById(obj);
		if(element != undefined || element != null){
			var outparam = new Array();
			if(element.value != ""){
				outparam.f_url = element.value;
			} else {
				outparam.f_url = "about:blank";
			}
			outparam.f_alt = "";
			outparam.f_border = "";
			outparam.f_align = "";
			outparam.f_vert = "";
			outparam.f_horiz = "";
			Dialog("/cms/filebrowse/index2.php?-usr=&-pwd=&lng=NL&domeinid=1", function(code){
				element.value = code.f_url;
			}, outparam);
		} else {
			alert("We konden niet het object vinden.");
		}
	}/**
 *
 * Simple browser detection!
 *
 */
var d, dom, ie, ie4, ie5x, moz, mac, win, lin, old, ie5mac, ie5xwin, op;

d = document;
n = navigator;
na = n.appVersion;
nua = n.userAgent;
win = ( na.indexOf( 'Win' ) != -1 );
mac = ( na.indexOf( 'Mac' ) != -1 );
lin = ( nua.indexOf( 'Linux' ) != -1 );

if ( !d.layers ){
	dom = ( d.getElementById );
	op = ( nua.indexOf( 'Opera' ) != -1 );
	konq = ( nua.indexOf( 'Konqueror' ) != -1 );
	saf = ( nua.indexOf( 'Safari' ) != -1 );
	moz = ( nua.indexOf( 'Gecko' ) != -1 && !saf && !konq);
	ie = ( d.all && !op );
	ie4 = ( ie && !dom );

	/*
	ie5x tests only for functionality. ( dom||ie5x ) would be default settings. 
	Opera will register true in this test if set to identify as IE 5
	*/

	ie5x = ( d.all && dom );
	ie5mac = ( mac && ie5x );
	ie5xwin = ( win && ie5x );
}
 
/**
 *
 *	Thinc1st Special Memory System.
 *
 */

/* Setting Expire Date */
var expDays = 30;
var exp = new Date();
exp.setTime(exp.getTime() + (expDays*24*60*60*1000));


function GetValue(name,frmname){
	new_name = "jscookie_wwwmoederstuurnl";
	var strResult = GetCookie(new_name);
	if(strResult == null || strResult == undefined){
	} else {
		splt = strResult.split("::");
		l = splt.length;
		for(i=0;i<l;i++){
			part = splt[i];
			ssplt = part.split(";;");
			if(ssplt[0] == name){
				eval("document.getElementById('"+name+"').value='"+ssplt[1]+"';");
			}
		}
	}
}
function GetAllValue(){
	new_name = "jscookie_wwwmoederstuurnl";
	var strResult = GetCookie(new_name);
	return strResult;
}
function SetValue(name,frmname){
	new_name = "jscookie_wwwmoederstuurnl";
	cookie_val = GetAllValue();
	if(cookie_val == null || cookie_val == undefined){
		cookie_val = '';
	}
	eval("vvalue = document.getElementById('"+name+"').value;");
	cookie_val = cookie_val + name + ";;" + vvalue + "::";
	SetCookie (new_name, cookie_val, exp);
}

/**
 *
 *	Thinc1st Get / Set Cookie System.
 *
 */
function getCookieVal (offset) {
	var endstr = document.cookie.indexOf (";", offset);
	if (endstr == -1)
	endstr = document.cookie.length;
	return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name) {
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	while (i < clen) {
		var j = i + alen;
		if (document.cookie.substring(i, j) == arg){
			return getCookieVal (j);
			i = document.cookie.indexOf(" ", i) + 1;
		}
		if (i == 0){
			break;
		}
	}
	return null;
}
function SetCookie (name, value) {
	var argv = SetCookie.arguments;
	var argc = SetCookie.arguments.length;
	var expires = (argc > 2) ? argv[2] : null;
	var path = (argc > 3) ? argv[3] : null;
	var domain = (argc > 4) ? argv[4] : null;
	var secure = (argc > 5) ? argv[5] : false;
	document.cookie = name + "=" + escape (value) +
	((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
	((path == null) ? "" : ("; path=" + path)) +
	((domain == null) ? "" : ("; domain=" + domain)) +
	((secure == true) ? "; secure" : "");
}
function DeleteCookie (name) {
	var exp = new Date();
	exp.setTime (exp.getTime() - 1);
	var cval = GetCookie (name);
	document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}


function doURLConfirm(arg,url){
	var agree=confirm(arg);
	if(agree){
		document.location.href=url;
	}
}

// NEW!!! Sinds iCMS is dit vervangen om in IE een mouseover effect toe te bedelen aan LI objecten in de pagina voor de navigatie.
function nvStartList() {

	// code for IE
	if(!document.body.currentStyle) return;
	var subs = document.getElementsByName('submenu');
	if(subs != null || subs != undefined){
		for(var i=0; i<subs.length; i++) {
			var li = subs[i].parentNode;
			if(li && li.lastChild.style) {
				li.onmouseover = function() {
					this.lastChild.style.visibility = 'visible';
				}
				li.onmouseout = function() {
					this.lastChild.style.visibility = 'hidden';
				}
			}
		}
	}
}

// NEW!!! CAPTURE MOUSE EVENT!
// Set Netscape up to run the "captureMousePosition" function whenever
// the mouse is moved. For Internet Explorer and Netscape 6, you can capture
// the movement a little easier.
if (document.layers) { // Netscape
    document.captureEvents(Event.MOUSEMOVE);
    document.onmousemove = captureMousePosition;
} else if (document.all) { // Internet Explorer
    document.onmousemove = captureMousePosition;
} else if (document.getElementById) { // Netcsape 6
    document.onmousemove = captureMousePosition;
}
// Global variables
var toMoveObject = false;
var xMousePos = 0; // Horizontal position of the mouse on the screen
var yMousePos = 0; // Vertical position of the mouse on the screen
var xMousePosMax = 0; // Width of the page
var yMousePosMax = 0; // Height of the page

function captureMousePosition(e) {
    if (document.layers) {
        // When the page scrolls in Netscape, the event's mouse position
        // reflects the absolute position on the screen. innerHight/Width
        // is the position from the top/left of the screen that the user is
        // looking at. pageX/YOffset is the amount that the user has
        // scrolled into the page. So the values will be in relation to
        // each other as the total offsets into the page, no matter if
        // the user has scrolled or not.
        xMousePos = e.pageX;
        yMousePos = e.pageY;
        xMousePosMax = window.innerWidth+window.pageXOffset;
        yMousePosMax = window.innerHeight+window.pageYOffset;
    } else if (document.all) {
        // When the page scrolls in IE, the event's mouse position
        // reflects the position from the top/left of the screen the
        // user is looking at. scrollLeft/Top is the amount the user
        // has scrolled into the page. clientWidth/Height is the height/
        // width of the current page the user is looking at. So, to be
        // consistent with Netscape (above), add the scroll offsets to
        // both so we end up with an absolute value on the page, no
        // matter if the user has scrolled or not.
        xMousePos = window.event.x+document.body.scrollLeft;
        yMousePos = window.event.y+document.body.scrollTop;
        xMousePosMax = document.body.clientWidth+document.body.scrollLeft;
        yMousePosMax = document.body.clientHeight+document.body.scrollTop;
    } else if (document.getElementById) {
        // Netscape 6 behaves the same as Netscape 4 in this regard
        xMousePos = e.pageX;
        yMousePos = e.pageY;
        xMousePosMax = window.innerWidth+window.pageXOffset;
        yMousePosMax = window.innerHeight+window.pageYOffset;
    }
    if(toMoveObject == false){
    } else {
    	document.getElementById(toMoveObject).style.display = "block";

    	eXPos = xMousePos + 330;
    	eYPos = yMousePos + 250;

    	if(eXPos > xMousePosMax){
    		xMousePos = xMousePos - 330;
    	}
    	if(eXPos < 0){
    		xMousePos = xMousePos + 330;
    	}

    	if(eYPos > yMousePosMax){
    		yMousePos = yMousePos - 240;
    	}
    	if(eYPos < 0){
    		yMousePos = yMousePos + 240;
    	}

    	document.getElementById(toMoveObject).style.left = xMousePos + 10;
    	document.getElementById(toMoveObject).style.top = yMousePos;
    }
}

function fopenImgWindow(img,w,h){
	window.open("/img.php?img="+img,"","width="+w+",height="+h+",toolbar=0,resizable=0");
}

// PostCodeChk
var PostCodeChk_straat;
var PostCodeChk_huisnr;
var PostCodeChk_plaats;

// PostCodeChk
function makeRequestPostCodeChk(myUrl,myType){
	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
		}
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				http_request = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
			}
		}
		if (!http_request) {
			alert('Cannot create XMLHTTP instance');
			return false;
		}
	}

	// Webshop options.
	if (myType == "pckSetVal"){
		http_request.onreadystatechange = pckSetVal_result;
	}

	http_request.open('GET', myUrl, true);
	http_request.send(null);
}

// When added a product, also update the amount of products in the shoppingbag
function pckSetVal_result() {

   if (http_request.readyState == 4) {
       if (http_request.status == 200) {

			val = http_request.responseText.split(";");
			document.getElementById(PostCodeChk_straat).value = val[0];
			document.getElementById(PostCodeChk_huisnr).value = val[1];
			document.getElementById(PostCodeChk_plaats).value = val[3];

			//alert(http_request.responseText);

       } else {
           alert('There was a problem with the request.');
       }
   }

}

function PChkIsNumeric(value) {
	return typeof value != "boolean" && value !== null && !isNaN(+ value);
}

function chkPostCode(fieldid,straatid,huisnrid,plaatsnrid){

	PostCodeChk_straat = straatid;
	PostCodeChk_huisnr = huisnrid;
	PostCodeChk_plaats = plaatsnrid;
	var fieldval = document.getElementById(fieldid).value;
	var huisnrval = document.getElementById(huisnrid).value;

	// Checken of het veld leeg is.
	if (fieldval == '') {
		alert("Wij hebben een postcode nodig, vul het veld postcode in.");
		return false;
	}

	// Kijken of de lengte van de postcode goed is.
	var lstr = fieldval.length;
	if(lstr != 6){
		alert("Vul een postcode in die bestaat uit 6 cijfers en letters’");
		return false;
	}

	// Checken of de eerste vier caracters cijfers zijn.
	var numbersStr = fieldval.substring(0,4);
	if(PChkIsNumeric(numbersStr) == false){
		alert("Vul 4 cijfers in.");
		return false;
	}

	// Kijk of de laatste twee karakters van het postcode veld ook letters zijn.
	var characterStr = fieldval.substring(4,6).toUpperCase();
	var filter2  = /^([a-zA-Z])+$/;
	if(!filter2.test(characterStr)){
		alert("Vul een postcode in die bestaat uit 6 cijfers en letters.");
		return false;
	}

	// Checken of het veld leeg is.
	if (huisnrval == '') {
		alert("Wij hebben een huisnummer nodig om uw postcode te kunnen controleren.");
		return false;
	}

	// Checken of de eerste vier caracters cijfers zijn.
	if(PChkIsNumeric(huisnrval) == false){
		alert("De postcode ondersteunt geen postcodes met toevoegsel bij het controleren van uw postcode.");
		return false;
	}

	var answer = confirm("Is de postcode die u heeft ingevuld: '" + numbersStr + " " + characterStr + "', met huisnummer '" + huisnrval + "' goed?")
	if (answer){
		url = "/postcodechk.php?pc="+numbersStr+"&pl=" + characterStr + "&h=" + huisnrval + "&l=05f4547ae60d1800ad37dd37fd9eea6d&" + sess + "&lng=" + lng + "&rnd=" + myDate.getTime() + "&rndnbr=" +  rand ( 1000000 );
		makeRequestPostCodeChk(url,"pckSetVal");
	}

}

// min max box.
function minMe(box,mbox){
	var elements = document.getElementsByTagName("div");
	var boxcontent = box + "ct";
	var tousebox = "";
	var touseboxcontent = "";
	var tousembox = "";
	if(elements.length > 0){
		// Get content
		var l = elements.length;
		for(i=0;i<l;i++){
			var element = elements[i];
			if(element.id == box){
				tousebox = elements[i];
			}
			if(element.id == mbox){
				tousembox = elements[i];
			}
			if(element.id == boxcontent){
				touseboxcontent = elements[i];
			}
		}
		// Alter content
		touseboxcontent.style.display = "none";
		var mboxhtml = tousembox.innerHTML;
		var boxhtml = tousebox.innerHTML;
		boxhtml = boxhtml.replace("minMe","maxMe");
		boxhtml = boxhtml.replace(box,box + "c");
		mboxhtml = mboxhtml + "<div id=\""+box+"c\">" + boxhtml + "</div><br />";
		tousembox.innerHTML = mboxhtml;
		tousebox.innerHTML = "";

		var elements = document.getElementsByTagName("img");
		var minImg = "";
		if(elements.length > 0){
			// Get content
			var l = elements.length;
			for(i=0;i<l;i++){
				var element = elements[i];
				if(element.id == box){
					minImg = elements[i];
				}
			}
			minImg.src = "/images_up/zoeksnel.nu/design/max.gif";
		}

	} else {
		alert("No Div elements found.");
	}
}

function maxMe(box,mbox){
	boxn = box.replace("c","");
	var elements = document.getElementsByTagName("div");
	var boxcontent = boxn + "ct";
	var touseboxn = "";
	var tousebox = "";
	var touseboxcontent = "";
	var tousembox = "";
	if(elements.length > 0){
		// Get content
		var l = elements.length;
		for(i=0;i<l;i++){
			var element = elements[i];
			if(element.id == boxn){
				touseboxn = elements[i];
			}
			if(element.id == box){
				tousebox = elements[i];
			}
			if(element.id == mbox){
				tousembox = elements[i];
			}
			if(element.id == boxcontent){
				touseboxcontent = elements[i];
			}
		}
		// Alter content
		touseboxcontent.style.display = "block";
		touseboxcontent.id = boxn + "ct";
		var boxhtml = tousebox.innerHTML;
		tousembox.removeChild(tousebox);
		boxhtml = boxhtml.replace("maxMe","minMe");
		boxhtml = boxhtml.replace(box,boxn);
		touseboxn.innerHTML = boxhtml;

		var elements = document.getElementsByTagName("img");
		var minImg = "";
		if(elements.length > 0){
			// Get content
			var l = elements.length;
			for(i=0;i<l;i++){
				var element = elements[i];
				if(element.id == boxn){
					minImg = elements[i];
				}
			}
			minImg.src = "/images_up/zoeksnel.nu/design/min.gif";
		}

	} else {
		alert("No Div elements found.");
	}
}

function vDivHide(id){
	document.getElementById(id).style.display = 'none';
}
function vDivShow(id){
	document.getElementById(id).style.display = 'block';
}
function vDivHideAll(){
	elements = document.getElementsByTagName('div');
	l = elements.length;
	for(i=0;i<l;i++){
		element = elements[i];
		var p = element.id.indexOf('vDivContent');
		if(p > -1){
			element.style.display = 'none';
		}
	}
}
function vDivShowOrHide(id,txtid,val1,val2){
	if(document.getElementById(id).style.display == 'none'){
		document.getElementById(id).style.display = 'block';
		document.getElementById(txtid).innerHTML = val2;
	} else {
		document.getElementById(id).style.display = 'none';
		document.getElementById(txtid).innerHTML = val1;
	}
}

/***
 *
 *	Thinc1st Horizontal Scroll Plain
 *
 */
var activeLeft;
var activeRight;
function findPos(obj)
{
 var left = !!obj.offsetLeft ? obj.offsetLeft : 0;
 var top = !!obj.offsetTop ? obj.offsetTop : 0;

 while(obj = obj.offsetParent)
 {
  left += !!obj.offsetLeft ? obj.offsetLeft : 0;
  top += !!obj.offsetTop ? obj.offsetTop : 0;
 }

 return{x:left, y:top};
}
function hscrollplain_moveMeLeft(obj,amount){
	try{
		// Finding Anchor in Link!
		if(window.location.hash){
			var newA = obj + "_toppos_h";
			if(window.location.hash == newA){
			} else {
				window.location.hash = newA;
			}
		}
	} catch(e) {
	}
	try{
		var objImgName = obj.replace("cnt_","img_");
		var objRightImgName = obj.replace("cnt_","rightimg_");
		var objLeftImgName = obj.replace("cnt_","leftimg_");
		var objImg = document.getElementById(objImgName);
		var objRightImg = document.getElementById(objRightImgName);
		var objLeftImg = document.getElementById(objLeftImgName);
		var objWidth = findPos(objRightImg).x - findPos(objLeftImg).x;
		var objPosX = findPos(objImg).x - findPos(objLeftImg).x - amount;
		if(objPosX <= objWidth){
			// Stop going left!;
		} else {
			document.getElementById(obj).style.left = parseInt(document.getElementById(obj).style.left) - amount;
			if(activeLeft == true){
				setTimeout("hscrollplain_moveMeLeft('"+obj+"',"+amount+")",20);
			}
		}
	} catch(e){
		alert(e.message);
	}
}
function hscrollplain_moveMeRight(obj,amount){
	try{
		// Finding Anchor in Link!
		if(window.location.hash){
			var newA = obj + "_toppos_h";
			if(window.location.hash == newA){
			} else {
				window.location.hash = newA;
			}
		}
	} catch(e) {
	}
	try{
		document.getElementById(obj).style.left = parseInt(document.getElementById(obj).style.left) + amount;
		var n = document.getElementById(obj).style.left;
		n = n.replace("px","");
		var i = parseInt(n);
		if(i > 0){
			document.getElementById(obj).style.left = "0px";
		}
		if(activeRight == true){
			setTimeout("hscrollplain_moveMeRight('"+obj+"',"+amount+")",20);
		}
	} catch(e){
		alert(e.message);
	}
}
function hscrollplain_moveMeToBegin(obj){
	document.getElementById(obj).style.left = "0px";
}


/***
 *
 *	Thinc1st Horizontal Scroll Plain
 *
 */
var activeUp;
var activeDown;
function vscrollplain_moveMeUp(obj,amount){
	try{
		// Finding Anchor in Link!
		if(window.location.hash){
			var newA = obj + "_toppos";
			if(window.location.hash == newA){
			} else {
				window.location.hash = newA;
			}
		}
	} catch(e) {
	}
	try{
		var objImgName = obj.replace("cnt_","img_");
		var objRightImgName = obj.replace("cnt_","rightimg_");
		var objLeftImgName = obj.replace("cnt_","leftimg_");
		var objImg = document.getElementById(objImgName);
		var objRightImg = document.getElementById(objRightImgName);
		var objLeftImg = document.getElementById(objLeftImgName);
		var objWidth = findPos(objRightImg).y - findPos(objLeftImg).y;
		var objPosX = findPos(objImg).y - findPos(objLeftImg).y - amount;
		if(objPosX <= objWidth){
			// Stop going left!;
			//alert(objPosX + " - " + objWidth);
		} else {
			//alert(objPosX + " - " + objWidth + " = " + obj);
			document.getElementById(obj).style.top = parseInt(document.getElementById(obj).style.top) - amount;
			if(activeUp == true){
				//alert('here!');
				setTimeout("vscrollplain_moveMeUp('"+obj+"',"+amount+")",20);
			}
		}
	} catch(e){
		alert(e.message + e.description);
	}
}
function vscrollplain_moveMeDown(obj,amount){
	try{
		// Finding Anchor in Link!
		if(window.location.hash){
			var newA = obj + "_toppos";
			if(window.location.hash == newA){
			} else {
				window.location.hash = newA;
			}
		}
	} catch(e) {
	}
	try{
		document.getElementById(obj).style.top = parseInt(document.getElementById(obj).style.top) + amount;
		var n = document.getElementById(obj).style.top;
		n = n.replace("px","");
		var i = parseInt(n);
		if(i > 0){
			document.getElementById(obj).style.top = "0px";
		}
		if(activeDown == true){
			setTimeout("vscrollplain_moveMeDown('"+obj+"',"+amount+")",20);
		}
	} catch(e){
		alert(e.message);
	}
}
function vscrollplain_moveMeToBegin(obj){
	document.getElementById(obj).style.left = "0px";
}
/**
 *
 * Specialial Blink Compatibility Javascript
 *
 */
var blinkItInterval = "";
function blinkIt() {
 if ( ie ){
    blinkObjs = document.getElementsByTagName('blink');
    for(i=0;i<blinkObjs.length;i++){
      blinkObjs[i].style.visibility=(blinkObjs[i].style.visibility=='visible')?'hidden':'visible';
   }
 } else {
  	if ( saf ){
  	   for(i=0;i<document.getElementsByTagName('blink').length;i++){
	      s=document.getElementsByTagName('blink')[i];
	      s.style.visibility=(s.style.visibility=='visible')?'hidden':'visible';
	   }
 	} else {
 		clearInterval(blinkItInterval);
 	}
 }
}
function stBlink(){
	blinkItInterval = setInterval('blinkIt()',500);
}

function blockError(){return true;}
window.onerror = blockError;

function framePrint(whichFrame){
parent[whichFrame].focus();
parent[whichFrame].print();
}
   
function pviiClassNew(obj, new_style) { //v2.7 by PVII
  obj.className=new_style;
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function fixUglyIE(){
	for (a in document.links) document.links[a].onfocus = document.links[a].blur;
}

if (document.all){
	 document.onmousedown = fixUglyIE;
}

function openPictureWindow_Fever(imageName,imageWidth,imageHeight,alt,posLeft,posTop) {
	newWindow = window.open("","newWindow","width="+imageWidth+",height="+imageHeight+",left="+posLeft+",top="+posTop);
	newWindow.document.open();
	newWindow.document.write('<html><title>'+alt+'</title><body bgcolor="#FFFFFF" leftmargin="0" topmargin="0" marginheight="0" marginwidth="0" onBlur="self.close()">'); 
	newWindow.document.write('<img src='+imageName+' width='+imageWidth+' height='+imageHeight+' alt='+alt+'>'); 
	newWindow.document.write('</body></html>');
	newWindow.document.close();
	newWindow.focus();
}
///////////////////
var isNN = (navigator.appName.indexOf("Netscape")!=-1);
function autoTab(input,len, e) {
var keyCode = (isNN) ? e.which : e.keyCode; 
var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
if(input.value.length >= len && !containsElement(filter,keyCode)) {
input.value = input.value.slice(0, len);
input.form[(getIndex(input)+1) % input.form.length].focus();
}
function containsElement(arr, ele) {
var found = false, index = 0;
while(!found && index < arr.length)
if(arr[index] == ele)
found = true;
else
index++;
return found;
}
function getIndex(input) {
var index = -1, i = 0, found = false;
while (i < input.form.length && index == -1)
if (input.form[i] == input)index = i;
else i++;
return index;
}
return true;
}

function aktiv(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;

}

var highlightcolor="#EDF2F8"

var ns6=document.getElementById&&!document.all
var previous=''
var eventobj

//Regular expression to highlight only form elements
var intended=/INPUT|TEXTAREA|SELECT|OPTION/

//Function to check whether element clicked is form element
function checkel(which){
if (which.style&&intended.test(which.tagName)){
if (ns6&&eventobj.nodeType==3)
eventobj=eventobj.parentNode.parentNode
return true
}
else
return false
}

//Function to highlight form element
function highlight(e){
eventobj=ns6? e.target : event.srcElement
if (previous!=''){
if (checkel(previous))
previous.style.backgroundColor=''
previous=eventobj
if (checkel(eventobj))
eventobj.style.backgroundColor=highlightcolor
}
else{
if (checkel(eventobj))
eventobj.style.backgroundColor=highlightcolor
previous=eventobj
}
}


// ======================================================================

function Validator(frmname)
{
  this.formobj=document.forms[frmname];
	if(!this.formobj)
	{
	  alert("BUG: couldnot get Form object "+frmname);
		return;
	}
	if(this.formobj.onsubmit)
	{
	 this.formobj.old_onsubmit = this.formobj.onsubmit;
	 this.formobj.onsubmit=null;
	}
	else
	{
	 this.formobj.old_onsubmit = null;
	}
	this.formobj.onsubmit=form_submit_handler;
	this.addValidation = add_validation;
	this.setAddnlValidationFunction=set_addnl_vfunction;
	this.clearAllValidations = clear_all_validations;
}
function set_addnl_vfunction(functionname)
{
  this.formobj.addnlvalidation = functionname;
}
function clear_all_validations()
{
	for(var itr=0;itr < this.formobj.elements.length;itr++)
	{
		this.formobj.elements[itr].validationset = null;
	}
}
function form_submit_handler()
{
	for(var itr=0;itr < this.elements.length;itr++)
	{
		if(this.elements[itr].validationset &&
	   !this.elements[itr].validationset.validate())
		{
		  return false;
		}
	}
	if(this.addnlvalidation)
	{
	  str =" var ret = "+this.addnlvalidation+"()";
	  eval(str);
    if(!ret) return ret;
	}
	return true;
}
function add_validation(itemname,descriptor,errstr)
{
  if(!this.formobj)
	{
	  alert("BUG: the form object is not set properly");
		return;
	}//if
	var itemobj = this.formobj[itemname];
  if(!itemobj)
	{
	  alert("BUG: Couldnot get the input object named: "+itemname);
		return;
	}
	if(!itemobj.validationset)
	{
	  itemobj.validationset = new ValidationSet(itemobj);
	}
  itemobj.validationset.add(descriptor,errstr);
}
function ValidationDesc(inputitem,desc,error)
{
  this.desc=desc;
	this.error=error;
	this.itemobj = inputitem;
	this.validate=vdesc_validate;
}
function vdesc_validate()
{
 if(!V2validateData(this.desc,this.itemobj,this.error))
 {
    this.itemobj.focus();
		return false;
 }
 return true;
}
function ValidationSet(inputitem)
{
    this.vSet=new Array();
	this.add= add_validationdesc;
	this.validate= vset_validate;
	this.itemobj = inputitem;
}
function add_validationdesc(desc,error)
{
  this.vSet[this.vSet.length]= 
	  new ValidationDesc(this.itemobj,desc,error);
}
function vset_validate()
{
   for(var itr=0;itr<this.vSet.length;itr++)
	 {
	   if(!this.vSet[itr].validate())
		 {
		   return false;
		 }
	 }
	 return true;
}
function validateEmailv2(email)
{
// a very simple email validation checking. 
// you can add more complex email checking if it helps 
    if(email.length <= 0)
	{
	  return true;
	}
    var splitted = email.match("^(.+)@(.+)$");
    if(splitted == null) return false;
    if(splitted[1] != null )
    {
      var regexp_user=/^\"?[\w-_\.]*\"?$/;
      if(splitted[1].match(regexp_user) == null) return false;
    }
    if(splitted[2] != null)
    {
      var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
      if(splitted[2].match(regexp_domain) == null) 
      {
	    var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
	    if(splitted[2].match(regexp_ip) == null) return false;
      }// if
      return true;
    }
return false;
}
function V2validateData(strValidateStr,objValue,strError) 
{ 
    var epos = strValidateStr.search("="); 
    var  command  = ""; 
    var  cmdvalue = ""; 
    if(epos >= 0) 
    { 
     command  = strValidateStr.substring(0,epos); 
     cmdvalue = strValidateStr.substr(epos+1); 
    } 
    else 
    { 
     command = strValidateStr; 
    } 
    switch(command) 
    { 
        case "req": 
        case "required": 
         { 
           if(eval(objValue.value.length) == 0) 
           { 
              if(!strError || strError.length ==0) 
              { 
                strError = objValue.name + " : Required Field"; 
              }//if 
              alert(strError); 
              return false; 
           }//if 
           break;             
         }//case required 
        case "maxlength": 
        case "maxlen": 
          { 
             if(eval(objValue.value.length) >  eval(cmdvalue)) 
             { 
               if(!strError || strError.length ==0) 
               { 
                 strError = objValue.name + " : "+cmdvalue+" characters maximum "; 
               }//if 
               alert(strError + "\n[Tekst lengde = " + objValue.value.length + " ]"); 
               return false; 
             }//if 
             break; 
          }//case maxlen 
        case "minlength": 
        case "minlen": 
           { 
             if(eval(objValue.value.length) <  eval(cmdvalue)) 
             { 
               if(!strError || strError.length ==0) 
               { 
                 strError = objValue.name + " : " + cmdvalue + " characters minimum  "; 
               }//if               
               alert(strError); 
               return false;                 
             }//if 
             break; 
            }//case minlen 
        case "alnum": 
        case "alphanumeric": 
           { 
              var charpos = objValue.value.search("[^A-Za-z0-9]"); 
              if(objValue.value.length > 0 &&  charpos >= 0) 
              { 
               if(!strError || strError.length ==0) 
                { 
                  strError = objValue.name+": Only alpha-numeric characters allowed "; 
                }//if 
                alert(strError + "\n [Error character position " + eval(charpos+1)+"]"); 
                return false; 
              }//if 
              break; 
           }//case alphanumeric 
        case "num": 
        case "numeric": 
           { 
              var charpos = objValue.value.search("[^0-9]"); 
              if(objValue.value.length > 0 &&  charpos >= 0) 
              { 
                if(!strError || strError.length ==0) 
                { 
                  strError = objValue.name+": Only digits allowed "; 
                }//if               
                alert(strError); 
                return false; 
              }//if 
              break;               
           }//numeric 
        case "alphabetic": 
        case "alpha": 
           { 
              var charpos = objValue.value.search("[^A-Za-z]"); 
              if(objValue.value.length > 0 &&  charpos >= 0) 
              { 
                  if(!strError || strError.length ==0) 
                { 
                  strError = objValue.name+": Only alphabetic characters allowed "; 
                }//if                             
                alert(strError + "\n [Error character position " + eval(charpos+1)+"]"); 
                return false; 
              }//if 
              break; 
           }//alpha 
		case "alnumhyphen":
			{
              var charpos = objValue.value.search("[^A-Za-z0-9\-_]"); 
              if(objValue.value.length > 0 &&  charpos >= 0) 
              { 
                  if(!strError || strError.length ==0) 
                { 
                  strError = objValue.name+": characters allowed are A-Z,a-z,0-9,- and _"; 
                }//if                             
                alert(strError + "\n [Error character position " + eval(charpos+1)+"]"); 
                return false; 
              }//if 			
			break;
			}
        case "email": 
          { 
               if(!validateEmailv2(objValue.value)) 
               { 
                 if(!strError || strError.length ==0) 
                 { 
                    strError = objValue.name+": Enter a valid Email address "; 
                 }//if                                               
                 alert(strError); 
                 return false; 
               }//if 
           break; 
          }//case email 
        case "lt": 
        case "lessthan": 
         { 
            if(isNaN(objValue.value)) 
            { 
              alert(objValue.name+": Should be a number "); 
              return false; 
            }//if 
            if(eval(objValue.value) >=  eval(cmdvalue)) 
            { 
              if(!strError || strError.length ==0) 
              { 
                strError = objValue.name + " : value should be less than "+ cmdvalue; 
              }//if               
              alert(strError); 
              return false;                 
             }//if             
            break; 
         }//case lessthan 
        case "gt": 
        case "greaterthan": 
         { 
            if(isNaN(objValue.value)) 
            { 
              alert(objValue.name+": Should be a number "); 
              return false; 
            }//if 
             if(eval(objValue.value) <=  eval(cmdvalue)) 
             { 
               if(!strError || strError.length ==0) 
               { 
                 strError = objValue.name + " : value should be greater than "+ cmdvalue; 
               }//if               
               alert(strError); 
               return false;                 
             }//if             
            break; 
         }//case greaterthan 
        case "regexp": 
         { 
		 	if(objValue.value.length > 0)
			{
	            if(!objValue.value.match(cmdvalue)) 
	            { 
	              if(!strError || strError.length ==0) 
	              { 
	                strError = objValue.name+": Invalid characters found "; 
	              }//if                                                               
	              alert(strError); 
	              return false;                   
	            }//if 
			}
           break; 
         }//case regexp 
        case "dontselect": 
         { 
            if(objValue.selectedIndex == null) 
            { 
              alert("BUG: dontselect command for non-select Item"); 
              return false; 
            } 
            if(objValue.selectedIndex == eval(cmdvalue)) 
            { 
             if(!strError || strError.length ==0) 
              { 
              strError = objValue.name+": Please Select one option "; 
              }//if                                                               
              alert(strError); 
              return false;                                   
             } 
             break; 
         }//case dontselect 
    }//switch 
    return true; 
}