var smallDate;
var sMakeEmpty = 'empty';


var dayArrayShort = new Array('su', 'mo', 'tu', 'we', 'th', 'fr', 'sa');
var dayArrayMed = new Array('Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat');
var dayArrayLong = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday');
var monthArrayShort = new Array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec');
var monthArrayMed = new Array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'June', 'July', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec');
var monthArrayLong = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');

var defaultDateSeparator = "/";				// common values would be "/" or "."
var defaultDateFormat = "ymd"		// valid values are "mdy", "dmy", and "ymd"
var WucName='ctl00$BSContent$WucAanbod$';
var WucId='ctl00_BSContent_WucAanbod_';

function leegRadio(name){
	vm=document.forms[0][name];
	for(var j=0;j<vm.length;j++){
		if(vm[j].checked){
			vm[j].checked=false;
			break;
		}
	}
}
function leegTruck(){
	leegRadio(WucName+'radioTruckSoort');
	leegRadio(WucName+'radioSV');
	chkTruck();
}
function leegMat(Hide){
	leegRadio(WucName+'radioMateriaalSoort');
}
function selectSV(){
	//get selected value
	var v=document.forms[0][WucName+'radioSV'];
	var val="";
	var iId="";
	for(var i=0;i<v.length;i++){
		if(v[i].checked){
			val=v[i].value;
			iId=v[i].id;
			break;
		}
	}
	if(val==""){
		//if truck = SV
		v=document.forms[0][WucName+'radioTruckSoort'];
		for(var i=0;i<v.length;i++){
			if(v[i].checked){
				if(v[i].value=="-1"){
					leegTruck();
					break;
				}else{
					//check materiaal
					var mat=document.forms[0][WucName+'radioMateriaalSoort'];
					for(var j=0;j<mat.length;j++){
						if(mat[i].checked){
							//show
							document.getElementById(WucId+'pnlMateriaalSoort').style.display='block';
							break;
						}
					}
					break;
				}
			}
		}
	}else{
		//SV is ingevuld, first check trucksoort
		var bSV =false;
		v=document.forms[0][WucName+'radioTruckSoort'];
		for(var i=0;i<v.length;i++){
			if(v[i].checked){
				bSV=(v[i].value=="-1");//sv
				break;
			}
		}
		if(bSV){
			var lab=document.getElementById(WucId+'pnlSpeciaalVervoer').getElementsByTagName('label');
			document.getElementById('valSV').innerHTML="--";
			for(i=0;i<lab.length;i++){
				if(lab[i].outerHTML.indexOf(iId+'>')>-1){
					document.getElementById('valSV').innerHTML=lab[i].innerHTML;
					break;		
				};
			}
			document.getElementById(WucId+'pnlSpeciaalVervoer').style.display='none';
			document.getElementById(WucId+'Stap1').style.display='block';
			document.getElementById(WucId+'Stap2').style.display='block';;
			document.getElementById(WucId+'Stap3').style.display='block';;
			document.getElementById(WucId+'pnlSpeciaalVervoerVal').style.display='block';
			document.getElementById(WucId+'pnlMateriaalSoort').style.display='none';
		}else{
			document.getElementById(WucId+'radioTruckSoort').click();
		
		}
	}
	
}
function chkTruck(aMat){
	var v=document.forms[0][WucName+'radioTruckSoort'];
	var val="";
	for(var i=0;i<v.length;i++){
		if(v[i].checked){
			if(aMat[i]){
				document.getElementById(WucId+'pnlMateriaalSoort').style.display='block';
			}else{
				leegMat();
				document.getElementById(WucId+'pnlMateriaalSoort').style.display='none';
			}
			val=v[i].value;
			break;
		}
	}
	if(val==""){
		leegMat();
		document.getElementById(WucId+'pnlMateriaalSoort').style.display='none';
	}
	//check sv
	var sV=document.getElementById(WucId+'pnlSpeciaalVervoer');
	var sVV=document.getElementById(WucId+'pnlSpeciaalVervoerVal');
	var s1=document.getElementById(WucId+'Stap1');
	var s2=document.getElementById(WucId+'Stap2');
	var s3=document.getElementById(WucId+'Stap3');
	if(val=="-1"){

		if(sVV.style.display=='none'){
			//empty current value in radio
			leegRadio(WucName+'radioSV');
			document.getElementById('valSV').innerHTML="--";
		}
		s1.style.display='none';
		s2.style.display='none';
		s3.style.display='none';
		sV.style.display='block';
		sVV.style.display='block';
		
	}else{
		s1.style.display='block';
		s2.style.display='block';
		s3.style.display='block';
		sV.style.display='none';
		sVV.style.display='none';
	}
	
}

function getClick(){
	//clicker sound
	var fC=document.getElementById('clicker');
	if(!fC){
			var newNode = document.createElement("a");
			newNode.setAttribute("id", "clicker");
			newNode.setAttribute("href", "javascript:;");
			document.body.appendChild(newNode);
			fC=document.getElementById('clicker');
	}
	 fC.click();
};

function cDatePicker(Name,StaticTarget){
	this.Name=Name;
	this.datePickerDivID = "d"+Name;
	this.iFrameDivID = "iframe"+Name;
	this.dateSeparator = defaultDateSeparator;
	this.dateFormat = defaultDateFormat;
	this.sDT=new Date();
	this.StaticTarget = StaticTarget;
	this.isStatic=(StaticTarget!=null);

	this.displayDatePicker=	function (dateFieldName, displayBelowThisObject, dtFormat, dtSep)
	{
		var targetDateField = document.getElementsByName (dateFieldName).item(0);
		if (!displayBelowThisObject)
			displayBelowThisObject = targetDateField;
		if (dtSep)
			this.dateSeparator = dtSep;
		else
			this.dateSeparator = defaultDateSeparator;
		if (dtFormat)
			this.dateFormat = dtFormat;
		else
			this.dateFormat = defaultDateFormat;
		var x = displayBelowThisObject.offsetLeft;
		var y = displayBelowThisObject.offsetTop + displayBelowThisObject.offsetHeight ;
		var parent = displayBelowThisObject;
		while (parent.offsetParent) {
			parent = parent.offsetParent;
			x += parent.offsetLeft;
			y += parent.offsetTop ;
		}
	 
		this.drawDatePicker(targetDateField, x, y);
	}
	this.drawDatePicker = function (targetDateField, x, y)
	{
		if (!document.getElementById(this.datePickerDivID)) {
			//document.body.innerHTML += "<div id='" + this.datePickerDivID + "' class='dpDiv'></div>";
			var newNode = document.createElement("div");
			newNode.setAttribute("id", this.datePickerDivID);
			newNode.setAttribute("class", "dpDiv");
			newNode.setAttribute("style", "visibility: hidden;");
			document.body.appendChild(newNode);
		}
		// move the datepicker div to the proper x,y coordinate and toggle the visiblity
		var pickerDiv = document.getElementById(this.datePickerDivID);
		if(!this.isStatic){
			pickerDiv.style.position = "absolute";
			pickerDiv.style.left = x + "px";
			pickerDiv.style.top = y + "px";
			pickerDiv.style.visibility = (pickerDiv.style.visibility == "visible" ? "hidden" : "visible");
			pickerDiv.style.display = (pickerDiv.style.display == "block" ? "none" : "block");
			pickerDiv.style.zIndex = 10000;
		}else{
			pickerDiv.className="dpDiv";
		}
		// draw the datepicker table
		if(targetDateField!=null){
		if(targetDateField.value!=''){
			var dt = this.getFieldDate(targetDateField.value );
			this.refreshDatePicker(targetDateField.name, dt.getFullYear(), dt.getMonth(), dt.getDate());
		}else this.refreshDatePicker(targetDateField.name,-1);
		}
	}
	
	this.refreshDatePicker=function (dateFieldName, year, month, day)
	{

		// if no arguments are passed, use today's date; otherwise, month and year
		// are required (if a day is passed, it will be highlighted later)
		var thisDay = new Date(this.sDT.getFullYear(),this.sDT.getMonth(),1);
		var dF = document.getElementsByName(dateFieldName).item(0);
		if ((month >= 0) && (year > 0)) {
			thisDay = new Date(year, month, 1);
			//check selected field
			if(dF.value!=''){
				selDay= this.getFieldDate(dF.value);
				day=selDay.getDate();
				selDay.setDate(1);
				if(thisDay.getTime()!=selDay.getTime()){
					day=null;
				}
			}
		}else if(dF.value!=''){
			thisDay= this.getFieldDate(dF.value);
			day=thisDay.getDate();
			thisDay.setDate(1);
		} else {
			//day = thisDay.getDate();
			thisDay.setDate(1);
		}
		
		var crlf = "\r\n";
		var TABLE = "<div class='dpTDiv'><table cols=7 class='dpTable' cellspacing=3 cellpadding=0 border=0>" + crlf;
		var xTABLE = "</table>" + crlf;
		var TR = "<tr class='dpTR'>";
		var TR_title = "<tr class='dpTitleTR'>";
		var TR_days = "<tr class='dpDayTR'>";
		var TR_todaybutton = "<tr class='dpTodayButtonTR'>";
		var xTR = "</tr>" + crlf;
		var TD = "<td class='dpTD' onMouseOut='this.className=\"dpTD\";' onMouseOver=' this.className=\"dpTDHover\";' ";		// leave this tag open, because we'll be adding an onClick event
		var TDempty = "<td class='dpTDempty'>";
		var TD_title = "<td colspan=5 class='dpTitleTD'>";
		var TD_buttons = "<td class='dpButtonTD'>";
		var TD_todaybutton = "<td colspan=7 class='dpTodayButtonTD'>";
		var TD_days = "<td class='dpDayTD'>";
		var TD_selected = "<td class='dpDayHighlightTD' onMouseOut='this.className=\"dpDayHighlightTD\";' onMouseOver='this.className=\"dpTDHover\";' ";		// leave this tag open, because we'll be adding an onClick event
		var xTD = "</td>" + crlf;
		var DIV_title = "<div class='dpTitleText'>";
		var DIV_selected = "<div class='dpDayHighlight'>";
		var xDIV = "</div>";
	 
	
		var html =this.getMonthsTabs(thisDay,dateFieldName);

		 //actual days table
		 html += TABLE;
		// this is the row that indicates which day of the week we're on
		html += TR_days;
		for(i = 0; i < dayArrayShort.length; i++)
			html += TD_days + dayArrayShort[i] + xTD;
		html += xTR;
	 
		// now we'll start populating the table with days of the month
		html += TR;
	 
		// first, the leading blanks
		for (i = 0; i < thisDay.getDay(); i++) html += TDempty + "&nbsp;" + xTD;
		// now, the days of the month
		do {
			dayNum = thisDay.getDate();
			if(thisDay.getTime() >= this.sDT.getTime()){
				TD_onclick = " onclick=\""+this.Name+".updateDateField('" + dateFieldName + "', '" + this.getDateString(thisDay) + "');\">"
				if (dayNum == day) html += TD_selected + TD_onclick + DIV_selected + dayNum + xDIV + xTD;
				else html += TD + TD_onclick + dayNum + xTD;
			}else{
				html += TDempty  + dayNum + xTD;
			}
			// if this is a Saturday, start a new row
			if (thisDay.getDay() == 6) html += xTR + TR;
			// increment the day
			thisDay.setDate(thisDay.getDate() + 1);
		} while (thisDay.getDate() > 1)
		// fill in any trailing blanks
		if (thisDay.getDay() > 0) {
			for (i = 6; i >= thisDay.getDay(); i--) html += TDempty + "&nbsp;" + xTD;
		}
		html += xTR;
		html += xTABLE;
 
		html += '<table>';
		// add a button to allow the user to easily return to today, or close the calendar
		var today = new Date();
		//var todayString = "Today is " + dayArrayMed[today.getDay()] + ", " + monthArrayMed[ today.getMonth()] + " " + today.getDate();
		html += TR_todaybutton + TD_todaybutton;
		html += "<div class='dpTodayButton' onClick='document.getElementsByName(\""+dateFieldName+"\").item(0).value=\"\";"+this.Name+".refreshDatePicker(\"" + dateFieldName + "\");'>"+sMakeEmpty+"</div>";
		if(!this.isStatic) html += "<div class='dpTodayButton' onClick='"+this.Name+".updateDateField(\"" + dateFieldName + "\");'>close</div>";
		html += xTD + xTR;
		//close the table
		html += xTABLE;
		//close the border
		html+=xDIV;
		document.getElementById(this.datePickerDivID).innerHTML = html;
		// add an "iFrame shim" to allow the datepicker to display above selection lists
		if(!this.isStatic)this.adjustiFrame();
	}
	
	this.getNewMonth=function(dateVal, adjust){
		var newMonth = (dateVal.getMonth () + adjust) % 12;
		var newYear = dateVal.getFullYear() + parseInt((dateVal.getMonth() + adjust) / 12);
		if (newMonth < 0) {
			newMonth += 12;
			newYear += -1;
		}
		return new Date(newYear,newMonth,1);
	}
	
	this.getMonthsTabs=function(thisDay,dateFieldName){
		var bFirst = (this.sDT.getTime()>=thisDay.getTime());
		var iMonth=bFirst?0:-1;
		var s='';
		s+='<div class="calMenu">';
		var newDT=this.getNewMonth(thisDay,iMonth);
		if(bFirst){
			s+='<div class="memberButtonOn">';
		}else{
			s+="<div class='memberButton' onClick='"+this.Name+".refreshDatePicker(\"" + dateFieldName + "\", " + newDT.getFullYear() + ", " + newDT.getMonth() + ");getClick();'>";
		}
		s+='<div class="memberBtnText">&nbsp;&nbsp;'+monthArrayShort[newDT.getMonth()]+'</div><div class="memberBtnRechts"></div>';
		s+='</div>';
		newDT=this.getNewMonth(thisDay,iMonth+1);
		if(!bFirst){
			s+='<div class="memberButtonOn">';
		}else{
			s+="<div class='memberButton' onClick='"+this.Name+".refreshDatePicker(\"" + dateFieldName + "\", " + newDT.getFullYear() + ", " + newDT.getMonth() + ");getClick();'>";
		}
		s+='<div class="memberBtnLinks"></div>';
		s+='<div class="memberBtnText">'+monthArrayShort[newDT.getMonth()]+'</div><div class="memberBtnRechts"></div>';
		s+='</div>';
		newDT=this.getNewMonth(thisDay,iMonth+2);
		s+="<div class='memberButton' onClick='"+this.Name+".refreshDatePicker(\"" + dateFieldName + "\", " + newDT.getFullYear() + ", " + newDT.getMonth() + ");getClick();'>";
		s+='<div class="memberBtnLinks"></div>';
		s+='<div class="memberBtnText">'+monthArrayShort[newDT.getMonth()]+'</div><div class="memberBtnRechtsEind"></div>';
		s+='</div>';
		s+='</div><br />';
		return s;
	}
	
	
	this.getButtonCode =function (dateFieldName, dateVal, adjust, label)
	{
		var newMonth = (dateVal.getMonth () + adjust) % 12;
		var newYear = dateVal.getFullYear() + parseInt((dateVal.getMonth() + adjust) / 12);
		if (newMonth < 0) {
			newMonth += 12;
			newYear += -1;
		}
	 
		return "<button class='dpButton' onClick='"+this.Name+".refreshDatePicker(\"" + dateFieldName + "\", " + newYear + ", " + newMonth + ");'>" + label + "</button>";
	}
	
	
	/**
	Convert a JavaScript Date object to a string, based on the this.dateFormat and this.dateSeparator
	variables at the beginning of this script library.
	*/
	this.getDateString = function (dateVal)
	{
		var dayString = "00" + dateVal.getDate();
		var monthString = "00" + (dateVal.getMonth()+1);
		dayString = dayString.substring(dayString.length - 2);
		monthString = monthString.substring(monthString.length - 2);
	 
		switch (this.dateFormat) {
			case "dmy" :
				return dayString + this.dateSeparator + monthString + this.dateSeparator + dateVal.getFullYear();
			case "ymd" :
				return dateVal.getFullYear() + this.dateSeparator + monthString + this.dateSeparator + dayString;
			case "mdy" :
			default :
				return monthString + this.dateSeparator + dayString + this.dateSeparator + dateVal.getFullYear();
		}
	}
	
	
	/**
	Convert a string to a JavaScript Date object.
	*/
	this.getFieldDate = function (dateString)
	{
		var dateVal;
		var dArray;
		var d, m, y;
	 
		try {
			dArray = this.splitDateString(dateString);
			if (dArray) {
				switch (this.dateFormat) {
					case "dmy" :
						d = parseInt(dArray[0], 10);
						m = parseInt(dArray[1], 10) - 1;
						y = parseInt(dArray[2], 10);
						break;
					case "ymd" :
						d = parseInt(dArray[2], 10);
						m = parseInt(dArray[1], 10) - 1;
						y = parseInt(dArray[0], 10);
						break;
					case "mdy" :
					default :
						d = parseInt(dArray[1], 10);
						m = parseInt(dArray[0], 10) - 1;
						y = parseInt(dArray[2], 10);
						break;
				}
				dateVal = new Date(y, m, d);
			} else if (dateString) {
				dateVal = new Date(dateString);
			} else {
				dateVal = new Date();
			}
		} catch(e) {
			dateVal = new Date();
		}
	 
		return dateVal;
	}
	
	
	/**
	Try to split a date string into an array of elements, using common date separators.
	If the date is split, an array is returned; otherwise, we just return false.
	*/
	this.splitDateString = function (dateString)
	{
		var dArray;
		if (dateString.indexOf("/") >= 0)
			dArray = dateString.split("/");
		else if (dateString.indexOf(".") >= 0)
			dArray = dateString.split(".");
		else if (dateString.indexOf("-") >= 0)
			dArray = dateString.split("-");
		else if (dateString.indexOf("\\") >= 0)
			dArray = dateString.split("\\");
		else
			dArray = false;
	 
		return dArray;
	}
	
	this.datePickerSelected=function (dateField)
	{
		var thisDate = this.getFieldDate(dateField.value);
		if(this.Name=='oDPLoad'){
			//check unload date >= this
			var udf = document.getElementsByName (oDPUnload.StaticTarget).item(0);
			if(udf != null){
				if(udf.value!=''){
					var unDate = this.getFieldDate(udf.value);
					if(unDate.getTime()<thisDate.getTime()){
						//set to proper date
						udf.value=dateField.value;
						oDPUnload.drawDatePicker(udf,0,0);
					}
				}
			}
		}else if(this.Name=='oDPUnload'){
			//check load date <= this
			var ldf = document.getElementsByName (oDPLoad.StaticTarget).item(0);
			if(ldf != null){
				if(ldf.value!=''){
					var lDate = this.getFieldDate(ldf.value);
					if(lDate.getTime()>thisDate.getTime()){
						//set to proper date
						ldf.value=dateField.value;
						oDPLoad.drawDatePicker(ldf,0,0);
					}
				}
			}
		}
	}
	
	this.updateDateField = function (dateFieldName, dateString)
	{

		var targetDateField = document.getElementsByName (dateFieldName).item(0);
		if (dateString)
			targetDateField.value = dateString;
	 
		if(!this.isStatic){
			var pickerDiv = document.getElementById(this.datePickerDivID);
			pickerDiv.style.visibility = "hidden";
			pickerDiv.style.display = "none";
			this.adjustiFrame();
			targetDateField.focus();
		}else{
			//redraw the calendar
			this.refreshDatePicker(dateFieldName)
		}
	 
		if ((dateString) && (typeof(this.datePickerSelected) == "function"))
			this.datePickerSelected(targetDateField);
		getClick();
		
	}
	
	
	/**
	Use an "iFrame shim" to deal with problems where the datepicker shows up behind
	selection list elements, if they're below the datepicker. The problem and solution are
	described at:
	
	http://dotnetjunkies.com/WebLog/jking/archive/2003/07/21/488.aspx
	http://dotnetjunkies.com/WebLog/jking/archive/2003/10/30/2975.aspx
	*/
	this.adjustiFrame = function (pickerDiv, iFrameDiv)
	{
		// we know that Opera doesn't like something about this, so if we
		// think we're using Opera, don't even try
		var is_opera = (navigator.userAgent.toLowerCase().indexOf("opera") != -1);
		if (is_opera)
			return;
		
		// put a try/catch block around the whole thing, just in case
		try {
			if (!document.getElementById(this.iFrameDivID)) {
				// don't use innerHTML to update the body, because it can cause global variables
				// that are currently pointing to objects on the page to have bad references
				//document.body.innerHTML += "<iframe id='" + this.iFrameDivID + "' src='javascript:false;' scrolling='no' frameborder='0'>";
				var newNode = document.createElement("iFrame");
				newNode.setAttribute("id", this.iFrameDivID);
				newNode.setAttribute("src", "javascript:false;");
				newNode.setAttribute("scrolling", "no");
				newNode.setAttribute ("frameborder", "0");
				document.body.appendChild(newNode);
			}
			
			if (!pickerDiv)
				pickerDiv = document.getElementById(this.datePickerDivID);
			if (!iFrameDiv)
				iFrameDiv = document.getElementById(this.iFrameDivID);
			
			try {
				iFrameDiv.style.position = "absolute";
				iFrameDiv.style.width = pickerDiv.offsetWidth;
				iFrameDiv.style.height = pickerDiv.offsetHeight ;
				iFrameDiv.style.top = pickerDiv.style.top;
				iFrameDiv.style.left = pickerDiv.style.left;
				iFrameDiv.style.zIndex = pickerDiv.style.zIndex - 1;
				iFrameDiv.style.visibility = pickerDiv.style.visibility ;
				iFrameDiv.style.display = pickerDiv.style.display;
			} catch(e) {
			}
		} catch (ee) {
		}
	}

	if(smallDate) this.sDT=this.getFieldDate(smallDate);
	//check static calendar
	if(this.isStatic){
		//show calendar
		this.drawDatePicker(document.getElementsByName(StaticTarget).item(0),0,0);
	}
} //end calendar

function cTon(Name,trget){
	this.Name=Name;
	this.Target=document.getElementsByName(trget).item(0);
	//init array
	this.aVal = new Array();
	this.aVal[0]='';
	for(var i=1;i<=25;i++) this.aVal[i]=i;
	this.aVal=this.aVal.concat([30,35,40,45,50,60,70,80,90]);
	this.Show=function(){
		var s='<table cellspacing="3" cellpadding="2" border="0" style="width:100%;"><tr>';
		var TD = "<td class='dpTD' onMouseOut='this.className=\"dpTD\";' onMouseOver=' this.className=\"dpTDHover\";' ";		// leave this tag open, because we'll be adding an onClick event
		var TD_selected = "<td class='dpDayHighlightTD' onMouseOut='this.className=\"dpDayHighlightTD\";' onMouseOver='this.className=\"dpTDHover\";' ";		// leave this tag open, because we'll be adding an onClick event

		for(var i=1;i<this.aVal.length;i++){
			if(i % 7 ==1 && i>1) s+="</tr><tr>";
			s+= ((this.aVal[i]==this.Target.value)?TD_selected:TD) + " onclick=\""+this.Name+".cSelect(" + i + ");\">";
			s+= this.aVal[i];
			if(i==this.aVal.length-1) s+="+";
			s+="</td>";
		}
		s+="</tr></table>";
		//leegmaken
		s+="<div style='position:relative;height:19px'><div class='dpTodayButton' style='float:right' onClick='"+this.Name+".cSelect(0);'>"+sMakeEmpty+"</div>&nbsp;</div>";
		document.getElementById("d"+this.Name).innerHTML=s;
	}
	this.cSelect=function(val){
		this.Target.value=this.aVal[val];
		this.Show();
		getClick();
	}
	//init
	this.Show();
} //end gewicht

function cMeter(Name,trgetM,trgetEB,EB,aMBE){
	this.Name=Name;
	this.aMBE=aMBE;
	this.TargetM=document.getElementsByName(trgetM).item(0);
	this.TargetEB=document.getElementsByName(trgetEB).item(0);
	this.EB=document.getElementsByName(EB).item(0);
	this.EBsel=this.EB.value;

	//init M array
	this.aValM = new Array();this.aValM[0]='';
	for(var i=1;i<=25;i++) this.aValM[i]=i;
	//init Euro array
	this.aValE = new Array();this.aValE[0]='';
	for(var i=1;i<=33;i++) this.aValE[i]=i;
	this.aValE=this.aValE.concat([34,36,38,40,42]);
	//init Blok array
	this.aValB = new Array();this.aValB[0]='';
	for(var i=1;i<=35;i++) this.aValB[i]=i;
	
	this.Show=function(){
		var s='';
		
		s+=this.getTabs();
		
		s+='<div class=dpTDiv>';
		s+='<table cellspacing="3" cellpadding="2" border="0" style="width:100%;"><tr>';
		var TD = "<td class='dpTD' onMouseOut='this.className=\"dpTD\";' onMouseOver=' this.className=\"dpTDHover\";' ";		// leave this tag open, because we'll be adding an onClick event
		var TD_selected = "<td class='dpDayHighlightTD' onMouseOut='this.className=\"dpDayHighlightTD\";' onMouseOver='this.className=\"dpTDHover\";' ";		// leave this tag open, because we'll be adding an onClick event
		var aVal;
		var sel='';
		switch(this.EBsel+''){
		case '1':
			aVal=this.aValE;
			if(this.EB.value=='1') sel=this.TargetEB.value;
			break;
		case '2':
			aVal=this.aValB;	
			if(this.EB.value=='2') sel=this.TargetEB.value;
			break;
		default:
			aVal=this.aValM;	
			sel=this.TargetM.value;
			break;
		}
		for(var i=1;i<aVal.length;i++){
			if(i % 7 ==1 && i>1) s+="</tr><tr>";
			s+= ((sel==aVal[i])?TD_selected:TD) + " onclick=\""+this.Name+".cSelect(" + i + ");\">";
			s+= aVal[i];
			if(i==aVal.length-1) s+="+";
			s+="</td>";
		}
		s+="</tr></table>";
		//leegmaken
		s+="<div style='position:relative;height:19px'><div class='dpTodayButton' style='float:right' onClick='"+this.Name+".cSelect(0);'>"+sMakeEmpty+"</div>&nbsp;</div>";
		//dpTDiv afsluiten
		s+= "</div>";
		//info blok
		s+= '<div class="calVal"><TABLE cellSpacing="0" cellPadding="0" width="100%"><TR><TD>';
		s+= aMBE[3]; //lInhoud
		s+= '</TD><TD>';
		if(this.TargetEB.value==''){
			s+= ((this.TargetM.value=='')?'0':this.TargetM.value)+' M'; 
		}else{
			s+= this.TargetEB.value+" "+this.aMBE[this.EB.value]+"<br>("+this.TargetM.value+ " M)";
		}
		s+='</TD></TR></TABLE></div>';
		
		document.getElementById("d"+this.Name).innerHTML=s;
	}
	this.cSelect=function(val){
		this.EB.value=this.EBsel;
		if(this.EB.value==''){
			this.TargetM.value=this.aValM[val];
			this.TargetEB.value='';
		}else{
			//calculate M value
			if(this.EB.value=='1'){
				this.TargetEB.value=this.aValE[val];
				//euro
				// 1euro = 80 cm, 2 naast elkaar
				var aantM=Math.floor((this.aValE[val]/2)+.5)*.8
				this.TargetM.value=Math.ceil(aantM);
			}else{
				this.TargetEB.value=this.aValB[val];
				//blok
				this.TargetM.value=Math.floor((this.aValB[val]/2)+.5);
			}
		}
		this.Show();
		getClick();
	}
	this.selTab=function(val){
		if(val==0) val='';
		this.EBsel=val;
		this.Show();
		getClick();
	}
	
	this.getTabs=function(){
		var s='';
		s+='<div class="calMenu" style="Z-INDEX: 100">';
		if(this.EBsel==''){
			s+='	<div class="memberButtonOn">';
		}else{
			s+="	<div class='memberButton' onClick='"+this.Name+".selTab(0);'>";
		}
		s+='		<div class="memberBtnText">&nbsp;&nbsp;'+this.aMBE[0]+'</div>';
		s+='		<div class="memberBtnRechts"></div>';
		s+='	</div>';
		if(this.EBsel=='1'){
			s+='	<div class="memberButtonOn">';
		}else{
			s+="	<div class='memberButton' onClick='"+this.Name+".selTab(1);'>";
		}
		s+='		<div class="memberBtnLinks"></div>';
		s+='		<div class="memberBtnText">'+this.aMBE[1]+'</div>';
		s+='		<div class="memberBtnRechts"></div>';
		s+='	</div>';
		if(this.EBsel=='2'){
			s+='	<div class="memberButtonOn">';
		}else{
			s+="	<div class='memberButton' onClick='"+this.Name+".selTab(2);'>";
		}
		s+='		<div class="memberBtnLinks"></div>';
		s+='		<div class="memberBtnText">'+this.aMBE[2]+'</div>';
		s+='		<div class="memberBtnRechtsEind"></div>';
		s+='	</div>';
		s+='</div>';
		return s;

	}
	//init
	this.Show();
} //end inhoud/length



