	var formatShow = "";
	var sf1=1;
	var sf2=1;
	var sf3=1;
	var sf4=1;
	var sf5=1;
	var sf6=1;

	function checkFormat(format){
		var j=0;
		var varTest = 0;
		formatShow = format;
		for (k=0; k<=(format.length) ; k++){			
			j++;
			varTest = format.charAt(format.indexOf("|", k )-1);	
			if(format.indexOf("|", k )==-1){				
				break;
			}else{
				k=format.indexOf("|", k );
			}			
			eval("sf"+j+"= " + varTest);						
		}		
	}

	
	if (!window.min_year) {
		var min_year = 1920; // defines lowest year in year selectbox
	}
	if (!window.max_year) {
		var max_year = (new Date()).getFullYear() - 16; // defines highest year in the year selectbox
	}

	if (min_year <= 400) {
		alert("Minimum year must be higher than 400 for this algorithm to work.");
	}
		
	function changeDays(numb,date_form,aname) {
		MonthCtrl = eval("document." + date_form + "." + aname +"__Month");
		DayCtrl = eval("document." + date_form + "." + aname +"__Day");
		YearCtrl = eval("document." + date_form + "." + aname +"__Year");
		HourCtrl = eval("document." + date_form + "." + aname +"__Hour");
		MinuteCtrl = eval("document." + date_form + "." + aname +"__Minute");
		SecondCtrl = eval("document." + date_form + "." + aname +"__Second");
		//alert(eval(MinuteCtrl.selectedIndex) + ', ' + eval(HourCtrl.selectedIndex) + ', ' + eval(DayCtrl.selectedIndex) + ', ' + eval(MonthCtrl.selectedIndex) + ', ' + eval(YearCtrl.selectedIndex));
		
		if(sf1==1){
			day = eval(DayCtrl.selectedIndex);
		}else{
			day = 1;
		}
		if(sf2==1){
			mth = eval(MonthCtrl.selectedIndex);
		}else{
			mth = 0;
		}
		if(sf3==1){
			sel = eval(YearCtrl.selectedIndex);
			yr = eval(YearCtrl.options[sel].text);
		}else{
			sel =1;
			yr = 1000;
		}		
		if(sf4==1){
			hour = eval(HourCtrl.options[HourCtrl.selectedIndex].value);
		}else{
			hour = 0;
		}
		if(sf5==1){
			minute = eval(MinuteCtrl.options[MinuteCtrl.selectedIndex].value);
		}else{
			minute = 0;
		}
		if(sf6==1){
			second = eval(SecondCtrl.options[SecondCtrl.selectedIndex].value);
		}else{
			second = 0;
		}
		
		
		if (numb != 1 && sf1==1) {
			numDays = numDaysIn(mth,yr);
			eval("document." + date_form + "." + aname +"__Day.options.length="+(numDays+1)) ;
			for (i=27;i<=numDays;i++) {
				eval("document." + date_form + "." + aname +"__Day.options["+i+"].text = "+i);
			}
		}


		var newDate = "";
		d = new Date(yr, (mth-1), day, hour, minute, second);
		if ( sel<1 || mth<0 || day<1 || hour<0 || minute<0  || second<0) {
			newDate = "''";
		} else {
			setDay = day;
			setMonth = mth;
			setYear = yr;
			setHour = hour;
			setMinute = minute;
			setSecond = second;
			if (setMonth < 10) {
				setMonth = "0" + setMonth;
			}
			if (setDay < 10) {
				setDay = "0" + setDay;
			}
			if (setHour < 10) {
				setHour = "0" + setHour;
			}
			if (setMinute < 10) {
				setMinute = "0" + setMinute;
			}
			if (setSecond < 10) {
				setSecond = "0" + setSecond;
			}
			newDate = newDate.concat(setYear, setMonth, setDay, setHour, setMinute, setSecond);
		}
		//alert(aname);
		if(aname == "fi_pubdate"){//MOD BY BRAM pubdate bij review-module always 14 chars
			eval("document." + date_form + "." + aname +".value=" + newDate + "00");
		}else{
			eval("document." + date_form + "." + aname +".value=" + newDate);
		}
	}

	function setToFirst(date_form,aname,jsType) {
		//type 2=Month; 3=Day
		var jsStrType = "__Day";
		if ( jsType == 2 ) {
			jsStrType = "__Month";
		}
		eval("document." + date_form + "." + aname + jsStrType +".options[1].selected=true");
		alert(jsStrType);
	}

		
	function numDaysIn(mth,yr) {
		if (mth==4 || mth==6 || mth==9 || mth==11) {
			return 30;
		} else if ((mth==2) && leapYear(yr)) {
			return 29;
		} else if (mth==2) {
			return 28;
		} else {
			return 31;
		}		
	}

	function leapYear(yr) {
		if (((yr % 4 == 0) && yr % 100 != 0) || yr % 400 == 0)
			return true;
		else
			return false;
	}

	function arr() {
		this.length=arr.arguments.length;
		for (n=0;n<arr.arguments.length;n++) {
			this[n] = arr.arguments[n];
		}
	}
	 
	months = new arr("","Januari","Februari","Maart","April","Mei","Juni","Juli","Augustus","September","Oktober","November","December");
	abbMonths = new arr("","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
	 
	var cur = new Date();

	// fixes a Netscape 2 and 3 bug
	function getFullYear(d) { // d is a date object
		yr = d.getYear();
		if (yr < 1000)
			yr+=1900;
		return yr;
	}

	function datedrop(myname,feeddate,fromyear,toyear, format){

		var edyear;
		var edmonth;
		var edday;
		var edhours;
		var edminute;
		var edsecond;

		if(format){
			checkFormat(format);
		}

		if (feeddate.length==12) {//--valid feeddate
			edyear = feeddate.substring(0, 4);
			edmonth = feeddate.substring(4, 6);
			edday = feeddate.substring(6, 8);
			edhours = feeddate.substring(8, 10);
			edminute = feeddate.substring(10, 12);
			d = new Date(edyear, edmonth, edday, edhours, edminute, 0);
		} else if (feeddate.length==14) {//--valid feeddate
			edyear = feeddate.substring(0, 4);
			edmonth = feeddate.substring(4, 6);
			edday = feeddate.substring(6, 8);
			edhours = feeddate.substring(8, 10);
			edminute = feeddate.substring(10, 12);
			edsecond = feeddate.substring(12, 14);
			d = new Date(edyear, edmonth, edday, edhours, edminute, edsecond);
		} else{
			d = new Date(0, 0, 0, 0, 0, 0);
		}
	
		if (fromyear) {
			min_year = fromyear;
		}
		if (toyear) {
			max_year = toyear;
		}
		//alert(d);		
		if(sf1==1){
			//--write day element
			document.write("<select name=" + myname + "__Day size=1 onChange='changeDays(0,this.form.name,"+'"'+myname+'"'+")'>\n");
			document.write("<option value=-1 "+(edday==-1?" selected":"")+">\n");
			for (i=1;i<=numDaysIn(edmonth,getFullYear(d));i++) {			
				document.write("<option"+(edday==i?" selected":"")+">"+i+"\n");
			}
			document.write("</select>");
		}else{
			document.write("<input type='hidden' name=" + myname + "__Day value='00' />");
		}

		if(sf2==1){
			document.write("<select name=" + myname + "__Month size=1 onChange='changeDays(0,this.form.name,"+'"'+myname+'"'+");'>");
			document.write("<option value=-1"+(edmonth==-1?" selected":"")+">\n");
			for (i=1;i<13;i++) {
				document.write("<option value="+ i +(edmonth==i?" selected":"")+">"+months[i]+"\n");
			}
			document.write("</select>");
		}else{
			document.write("<input type='hidden' name=" + myname + "__Month value='00' />");
		}

		if(sf3==1){
			document.write("<select name=" + myname + "__Year size=1 onChange='changeDays(0,this.form.name,"+'"'+myname+'"'+");'>\n");
			document.write("<option value=-1"+(edyear==-1?" selected":"")+">\n");
			for (i=min_year;i<=max_year;i++) {
				document.write("<option"+(edyear==i?" selected":"")+">"+i+"\n");
			}
			document.write("</select>");
		}else{
			document.write("<input type='hidden' name=" + myname + "__Year value='1000' />");
		}

		if(sf4==1){
			document.write("<select name=" + myname + "__Hour size=1 onChange='changeDays(0,this.form.name,"+'"'+myname+'"'+");'>\n");
			document.write("<option value=-1 "+(edhours==-1?" selected":"")+">\n");
			for (i=0;i<24;i++) {
				document.write("<option value="+ i +(edhours==i?" selected":"")+">" + i + "\n");
			}
			document.write("</select>");
		}else{
			document.write("<input type='hidden' name=" + myname + "__Hour value='00' />");
		}


		if(sf5==1){
			document.write("<select name=" + myname + "__Minute size=1 onChange='changeDays(0,this.form.name,"+'"'+myname+'"'+");'>\n");
			document.write("<option value=-1 "+(edminute==-1?" selected":"")+">\n");
			for (i=0;i<60;i++) {
				document.write("<option value="+ i +(edminute==i?" selected":"")+">" + i + "\n");
			}
			document.write("</select>");
		}else{
			document.write("<input type='hidden' name=" + myname + "__Minute value='00' />");
		}

		if(sf6==1){
			document.write("<select name=" + myname + "__Second size=1 onChange='changeDays(0,this.form.name,"+'"'+myname+'"'+");'>\n");
			document.write("<option value=-1 "+(edsecond==-1?" selected":"")+">\n");
			for (i=0;i<60;i++) {
				document.write("<option value="+ i +(edsecond==i?" selected":"")+">" + i + "\n");
			}
			document.write("</select>");
		}else{
			document.write("<input type='hidden' name=" + myname + "__Second value='00' />");
		}
		document.write("<input type='hidden' name=" + myname + " value='" + feeddate + "' />");
	}

function changeDaysNoTime(numb,date_form,aname) {
		
		MonthCtrl = eval("document." + date_form + "." + aname +"__Month");
		DayCtrl = eval("document." + date_form + "." + aname +"__Day");
		YearCtrl = eval("document." + date_form + "." + aname +"__Year");
		
		mth = eval(MonthCtrl.selectedIndex);
		sel = eval(YearCtrl.selectedIndex);
		yr = eval(YearCtrl.options[sel].text);
		day = eval(DayCtrl.selectedIndex);
		if (numb != 1) {
			numDays = numDaysIn(mth,yr);
			eval("document." + date_form + "." + aname +"__Day.options.length="+(numDays+1)) ;
			for (i=27;i<=numDays;i++) {
				eval("document." + date_form + "." + aname +"__Day.options["+i+"].text = "+i);
			}
		}


		var newDate = "";
		d = new Date(yr, (mth-1), day, 0, 0);
		if ( sel<1 || mth<0 || day<1 ) {
			newDate = "''";
		} else {
			setDay = day;
			setMonth = mth;
			setYear = yr;
			if (setMonth < 10) {
				setMonth = "0" + setMonth;
			}
			if (setDay < 10) {
				setDay = "0" + setDay;
			}
			newDate = newDate.concat(setYear, setMonth, setDay, '00', '00');
		}
		if(aname == "fi_pubdate"){//MOD BY BRAM pubdate bij review-module always 14 chars
			eval("document." + date_form + "." + aname +".value=" + newDate + "00");
		}else{
			eval("document." + date_form + "." + aname +".value=" + newDate);
		}
	}

	function datedropNoTime(myname,feeddate,fromyear,toyear,abb){
		var edyear;
		var edmonth;
		var edday;	
		
		if (feeddate.length==8) {//--valid feeddate
			edyear = feeddate.substring(0, 4);
			edmonth = feeddate.substring(4, 6);
			edday = feeddate.substring(6, 8);
			d = new Date(edyear, edmonth, edday, 0, 0);
		} else if (feeddate.length==12) {//--valid feeddate
			edyear = feeddate.substring(0, 4);
			edmonth = feeddate.substring(4, 6);			
			edday = feeddate.substring(6, 8);
			d = new Date(edyear, edmonth, edday, 0, 0);
		} else{
			d = new Date(0, 0, 0, 0, 0);
		}
		
		if (fromyear) {
			min_year = fromyear;
		}
		if (toyear) {
			max_year = toyear;
		}

		//--write day element
		document.write("<select name=" + myname + "__Day size=1 onChange='changeDaysNoTime(0,this.form.name,"+'"'+myname+'"'+")'>\n");
		document.write("<option value=-1 "+(edday==-1?" selected":"")+">\n");
		for (i=1;i<=numDaysIn(edmonth,getFullYear(d));i++) {
			document.write("<option"+(edday==i?" selected":"")+">"+i+"\n");
		}
		document.write("</select>");

		//--write month element		
		document.write("<select name=" + myname + "__Month size=1 onChange='changeDaysNoTime(0,this.form.name,"+'"'+myname+'"'+");'>");
		document.write("<option value=-1"+(edmonth==-1?" selected":"")+">\n");
		for (i=1;i<13;i++) {
			if (abb) { // abbreviated months
				document.write("<option value="+ (i-1) +(edmonth==i?" selected":"")+">"+abbMonths[i]+"\n");
			} else {
				document.write("<option value="+ (i-1) +(edmonth==i?" selected":"")+">"+months[i]+"\n");
			}
		}
		document.write("</select>");

		//--write year element
		document.write("<select name=" + myname + "__Year size=1 onChange='changeDaysNoTime(0,this.form.name,"+'"'+myname+'"'+");'>\n");
		document.write("<option value=-1"+(edyear==-1?" selected":"")+">\n");
		for (i=min_year;i<=max_year;i++) {
			document.write("<option"+(edyear==i?" selected":"")+">"+i+"\n");
		}
		document.write("</select>");
		document.write("<input type='hidden' name=" + myname + " value='" + feeddate + "' />");
	}
