// JScript source code
    var DayName=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
    
    
    
    var oneMinute=1000*60;
    
    var intervalObject=new Object();
    intervalObject["yyyy"]={units:1000*60*60*24*365,measure:"year"};
    intervalObject["m"]={units:1000*60*60*24*30,measure:"month"};
    intervalObject["d"]={units:1000*60*60*24,measure:"day"};
    intervalObject["Q"]={units:intervalObject["m"].units*3,measure:"quarter"};
    intervalObject["H"]={units:oneMinute*60,measure:"hour"};
    intervalObject["N"]={units:oneMinute,measure:"minute"};
    intervalObject["S"]={units:1000,measure:"second"};
    
    
    function DateDiff(dateAddObj){
        this.interval=dateAddObj.interval;
        this.date1=dateAddObj.date1;
        this.date2=dateAddObj.date2;
        this.calculate=calculate;
        this.calculate();
    }

    Date.prototype.DateDiff=DateDiff;
    
    
    
    
    function calculate(){
        var paramDate1=new String(this.date1);
        splitDate1=paramDate1.split("-");
        paramDateYear1=splitDate1[0];
        paramDateMonth1=splitDate1[1]-1;
        paramDateDay1=splitDate1[2];
        if(paramDateMonth1>12){
            alert("Invalid Month!");
            return false;
        }
        if(paramDateDay1>31){
            alert("Invalid Day!");
            return false;
        }
        
        
        var paramDate2=new String(this.date2);
        splitDate2=paramDate2.split("-");
        paramDateYear2=splitDate2[0];
        paramDateMonth2=splitDate2[1]-1;
        paramDateDay2=splitDate2[2];
        if(paramDateMonth2>12){
            alert("Invalid Month!");
            return false;
        }
        if(paramDateDay2>31){
            alert("Invalid Day!");
            return false;
        }
        
                
        var paramDate1Object=new Date(paramDateYear1,paramDateMonth1,paramDateDay1);
        paramDate1Object.setHours(0);
        paramDate1Object.setMinutes(0);
        paramDate1Object.setSeconds(0);
        //paramDate1Object.getTimezoneOffset() * oneMinute;
        var paramDate1ObjectTime=paramDate1Object.getTime();
        
        
        var paramDate2Object=new Date(paramDateYear2,paramDateMonth2,paramDateDay2);
        paramDate2Object.setHours(0);
        paramDate2Object.setMinutes(0);
        paramDate2Object.setSeconds(0);
        var paramDate2ObjectTime=paramDate2Object.getTime();
        
        if(paramDate2Object>paramDate1Object){
            DSTAdjust=(paramDate2Object.getTimezoneOffset() - paramDate1Object.getTimezoneOffset()) * oneMinute;
            
        }
        else{
            DSTAdjust=(paramDate1Object.getTimezoneOffset() - paramDate2Object.getTimezoneOffset()) * oneMinute;
        }
        
        if(typeof intervalObject[this.interval]!="undefined"){
            if(typeof intervalObject[this.interval].units=="undefined"){
                alert("Interval is invalid!");
                return false;
            }
            
            var diff=Math.abs(paramDate2ObjectTime-paramDate1ObjectTime) - DSTAdjust;
            var timeDiff=Math.floor(diff/intervalObject[this.interval].units);
            if(timeDiff>1){
                var rname=intervalObject[this.interval].measure + "s";
            }
            else{
                var rname=intervalObject[this.interval].measure;
            }
            
            this.difference=parseInt(timeDiff);
        }
        else{
            this.difference="Wrong format of interval!";
        
        }
        
    }

// 000000000000000000000000000000000000000000000000000000000000000000000000000000000
// [k] DATETIMEPICKER
// 000000000000000000000000000000000000000000000000000000000000000000000000000000000
pickertoday = new Date();
dayNames = new Array('V','H','K','Sze','Cs','P','Szo');
dayNamesEng = new Array('Sun','Mon','Tue','Wed','Thu','Fri','Sat');
monthNames = new Array(' ', 'Janu�r', 'Febru�r', 'M�rcius', '�prilis', 'M�jus', 'J�nius', 'J�lius', 'Augusztus', 'Szeptember', 'Okt�ber', 'November', 'December');
monthNamesEng = new Array(' ', 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');
todayStr = new String('mai nap');
todayStrEng = new String('today');
actZIndex = 100;

function bool2str(isittrue) {
    ans = new String();
    if (isittrue) {
        ans = "true";
    } else {
        ans = "false";
    }
    return ans;
}

function padZeroes(num, totalLen) {
   var numStr = num.toString();
   var numZeros = totalLen - numStr.length;
   if (numZeros > 0) {
      for (var i = 1; i <= numZeros; i++) {
         numStr = "0" + numStr;
      }
   }
   return numStr
} 

function showHide(objname) {
    obj = document.getElementById(objname);
    if (obj.style.visibility == 'visible') {
        obj.style.visibility = 'hidden';
    } else {
        obj.style.visibility = 'visible';
    }
}

function getNumDays(month, year) {
  var ar = new Array(12);
  ar[0] = 31; 
  ar[1] = (year % 4 == 0) ? 29 : 28; 
  ar[2] = 31; 
  ar[3] = 30;
  ar[4] = 31;
  ar[5] = 30;
  ar[6] = 31;
  ar[7] = 31;
  ar[8] = 30;
  ar[9] = 31;
  ar[10] = 30;
  ar[11] = 31;
  return ar[month];
}

function mOn(obj) {
    obj.style.borderColor='#ff0000';
}

function mOff(obj) {
    obj.style.borderColor='#eeeeee';
}

function showDayCell(usetimeselector, celltype, cday, hilite, pickername) {
    retstr = "<td align=right><div class=datepicker_"+celltype+" ";
    if (hilite) {
        retstr += "onMouseOver=\"mOn(this);\" onMouseOut=\"mOff(this);\" onClick=\"showHide('"+pickername+"datepicker');document.getElementById('"+pickername+"datepicker_daybox').value="+cday+"; setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+pickername+"'), '"+pickername+"');renderCalendar("+bool2str(usetimeselector)+", document.getElementById('"+pickername+"datepicker_daybox').value, document.getElementById('"+pickername+"datepicker_monthbox').value, document.getElementById('"+pickername+"datepicker_yearbox').value, document.getElementById('"+pickername+"datepicker_calendar'), '"+pickername+"');\"";
    }
    retstr += "><table width=\"100%\"><tr><td class=datepicker_"+celltype+"_inner align=right>"+cday+"</td></tr></table></div></td>"
    return retstr;
}

function showWeekDayCell(usetimeselector, i, cday, day, month, year, pickername) {
    today = new Date();
    if ((cday==day)) {
        return showDayCell(usetimeselector, "selectedday", cday, true, pickername);
    } else if ((today.getFullYear()==year) && (today.getMonth()==month) && (cday==today.getDate())) {
        return showDayCell(usetimeselector, "today", cday, true, pickername);
    } else {
        if ((i==0) || (i==6)) {
            return showDayCell(usetimeselector, "weekend", cday, true, pickername);
        } else {
            return showDayCell(usetimeselector, "workday", cday, true, pickername);
        }
    }
}

function setPickerDate(usetimeselector, obj, pickername) {
    obj.value = document.getElementById(pickername+'datepicker_yearbox').value+'-'+padZeroes(document.getElementById(pickername+'datepicker_monthbox').selectedIndex+1,2)+'-'+padZeroes(document.getElementById(pickername+'datepicker_daybox').value,2);
    try {
        startdatechange();
    }
    catch (err)
    {
    }
    if (usetimeselector) {
        obj.value += ' '+padZeroes(document.getElementById(pickername+'datepicker_hourbox').value,2)+':'+padZeroes(document.getElementById(pickername+'datepicker_minutebox').value,2)+':00';
    }
    startdatechange();
    var fieldname = 'offeredit_archiveDate';
    renderCalendarEng(false, document.getElementById(fieldname+'datepicker_daybox').value, document.getElementById(fieldname+'datepicker_monthbox').value, document.getElementById(fieldname+'datepicker_yearbox').value, document.getElementById(fieldname+'datepicker_calendar'), fieldname);
}

function renderCalendar(usetimeselector, day, month, year, obj, pickername) {
    maxday = getNumDays(month-1, year);
    firstday = new Date(year, month-1, 1);
    emptyfills = firstday.getDay();
    calsrc = new String();
    calsrc = "<table width=100%><tr>";
    for (i=0;i<7;i++) {
        if ((i==0) || (i==6)) {
            calsrc += "<td class=datepicker_weekend_header align=middle>"+dayNames[i]+"</td>";
        } else {
            calsrc += "<td class=datepicker_workday_header align=middle>"+dayNames[i]+"</td>";
        }
    }
    calsrc += "</tr><tr>";
    for (i=0;i<emptyfills;i++) {
        calsrc += showDayCell(usetimeselector, "emptyday", "&nbsp;", false, pickername);
    }
    for (i=emptyfills;i<7;i++) {
        cday = i-emptyfills+1;
        calsrc += showWeekDayCell(usetimeselector, i, cday, day, month-1, year, pickername);
    }
    daysToGo = maxday-(7-emptyfills);
    rows = Math.floor(daysToGo/7);
    rema = daysToGo % 7;
    emptytrailers = new Number;
    if (rema!=0) {
        emptytrailers = 7-rema;
    } else {
        emptytrailers = 0;
    }
    for (r=0;r<rows;r++) {
        calsrc += "</tr><tr>";
        for (c=0;c<7;c++) {
            cday++;
            calsrc += showWeekDayCell(usetimeselector, c, cday, day, month-1, year, pickername);
        }
    }
    if (emptytrailers!=0) {
        // meg egy sor kell
        calsrc += "</tr><tr>";
        for (c=0;c<rema;c++) {
            cday++;
            calsrc += showWeekDayCell(usetimeselector, c, cday, day, month-1, year, pickername);
        }
        for (c=0;c<emptytrailers;c++) {
            calsrc += showDayCell(usetimeselector, "emptyday", "&nbsp;", false, pickername);
        }
    }
    calsrc += "</tr></table>";
    obj.innerHTML = calsrc;
}
function renderCalendarEng(usetimeselector, day, month, year, obj, pickername) {

    maxday = getNumDays(month-1, year);
    firstday = new Date(year, month-1, 1);
    emptyfills = firstday.getDay();
    calsrc = new String();
    calsrc = "<table width=100%><tr>";
    for (i=0;i<7;i++) {
        if ((i==0) || (i==6)) {
            calsrc += "<td class=datepicker_weekend_header align=middle>"+dayNamesEng[i]+"</td>";
        } else {
            calsrc += "<td class=datepicker_workday_header align=middle>"+dayNamesEng[i]+"</td>";
        }
    }
    calsrc += "</tr><tr>";
    for (i=0;i<emptyfills;i++) {
        calsrc += showDayCell(usetimeselector, "emptyday", "&nbsp;", false, pickername);
    }
    for (i=emptyfills;i<7;i++) {
        cday = i-emptyfills+1;
        calsrc += showWeekDayCell(usetimeselector, i, cday, day, month-1, year, pickername);
    }
    daysToGo = maxday-(7-emptyfills);
    rows = Math.floor(daysToGo/7);
    rema = daysToGo % 7;
    emptytrailers = new Number;
    if (rema!=0) {
        emptytrailers = 7-rema;
    } else {
        emptytrailers = 0;
    }
    for (r=0;r<rows;r++) {
        calsrc += "</tr><tr>";
        for (c=0;c<7;c++) {
            cday++;
            calsrc += showWeekDayCell(usetimeselector, c, cday, day, month-1, year, pickername);
        }
    }
    if (emptytrailers!=0) {
        // meg egy sor kell
        calsrc += "</tr><tr>";
        for (c=0;c<rema;c++) {
            cday++;
            calsrc += showWeekDayCell(usetimeselector, c, cday, day, month-1, year, pickername);
        }
        for (c=0;c<emptytrailers;c++) {
            calsrc += showDayCell(usetimeselector, "emptyday", "&nbsp;", false, pickername);
        }
    }
    calsrc += "</tr></table>";
    obj.innerHTML = calsrc;
}

function checkPickerVal(usetimeselector, pickername) {

    if (document.getElementById(pickername).value=='') {
        initdate = new Date();
        document.getElementById(pickername+'datepicker_yearbox').value = initdate.getFullYear();
        document.getElementById(pickername+'datepicker_monthbox').selectedIndex = initdate.getMonth();
        document.getElementById(pickername+'datepicker_daybox').value = initdate.getDate();
        if (usetimeselector) {
            document.getElementById(pickername+'datepicker_hourbox').selectedIndex = 8; // 8 ora a default
            document.getElementById(pickername+'datepicker_minutebox').selectedIndex = 0; // 8 ora a default
        }
    }
}

// 000000000000000000000000000000000000000000000000000000000000000000000000000000000

function showDatePicker(fieldname, fieldvalue, maxlength, disabled, fielderror, usetimeselector, actZIndex, fieldclass) {
    initdate = new Date();
    dpsource = new String();
    if ((fieldvalue=='') || (fieldvalue=='0000-00-00 00:00:00') || (fieldvalue=='0000-00-00')) {
        /*
        if (usetimeselector) {
            fieldvalue=initdate.getFullYear()+'-'+padZeroes(initdate.getMonth()+1,2)+'-'+padZeroes(initdate.getDate(),2)+' '+padZeroes(initdate.getHours(),2)+':'+padZeroes(initdate.getMinutes()+':'+padZeroes(initdate.getSeconds(),2)+':',2);
        } else {
            fieldvalue=initdate.getFullYear()+'-'+padZeroes(initdate.getMonth()+1,2)+'-'+padZeroes(initdate.getDate(),2);
        }
        */
        fieldvalue='';
    } else {
        if (usetimeselector) {
            var datetimePat = /^(\d{4})(\/|-)(\d{2})(\/|-)(\d{2})\ (\d{2})(\:)(\d{2})(\:)(\d{2})$/;
            var matchArray = fieldvalue.match(datetimePat); 
            if (matchArray == null) {
                fieldvalue=initdate.getFullYear()+'-'+padZeroes(initdate.getMonth()+1,2)+'-'+padZeroes(initdate.getDate(),2)+' '+padZeroes(initdate.getHours(),2)+':'+padZeroes(initdate.getMinutes()+':'+padZeroes(initdate.getSeconds(),2)+':',2);
            } else {
                initdate = new Date(fieldvalue.substr(0,4), fieldvalue.substr(5,2).valueOf()-1, fieldvalue.substr(8,2), fieldvalue.substr(11,2), fieldvalue.substr(14,2), fieldvalue.substr(17,2));
            }
        } else {
            var datetimePat1 = /^(\d{4})(\/|-)(\d{2})(\/|-)(\d{2})$/;
            var datetimePat2 = /^(\d{4})(\/|-)(\d{2})(\/|-)(\d{2})\ (\d{2})(\:)(\d{2})(\:)(\d{2})$/;
            var matchArray1 = fieldvalue.match(datetimePat1); 
            var matchArray2 = fieldvalue.match(datetimePat2); 
            if ((matchArray1 == null) && (matchArray2 == null)) {
                fieldvalue=initdate.getFullYear()+'-'+padZeroes(initdate.getMonth()+1,2)+'-'+padZeroes(initdate.getDate(),2);
            } else {
                initdate = new Date(fieldvalue.substr(0,4), fieldvalue.substr(5,2).valueOf()-1, fieldvalue.substr(8,2));
            }
        }
    }
    fclass = fieldclass ? fieldclass : "date";   
    dpsource+="<input size='10' class=\""+fclass+"\" style=\"position: absolute; size: 10; width: 100px;\" type=\"text\" "+disabled+" name=\""+fieldname+"\" id=\""+fieldname+"\" size=\""+maxlength+"\" value=\""+fieldvalue+"\" onFocus=\"b(this);\" onBlur=\"k(this);\">";
    if (fieldclass == 'short')
    {    
        dpsource+="<input type=button style=\"position: relative; left: 90px\" class=\"button_picker\" value=\"&#9660\" onclick=\"showHide('"+fieldname+"datepicker');checkPickerVal("+bool2str(usetimeselector)+", '"+fieldname+"');setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendar("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"'); \">";
        dpsource+="<input type=button style=\"position: relative; left: 96px; font-weight: bold;\" class=\"button_picker\" value=\"X\" onclick=\"document.getElementById('"+fieldname+"').value='';\">";
    }
    else
    {
        dpsource+="<input type=button style=\"position: relative; left: 100px\" class=\"button_picker\" value=\"&#9660\" onclick=\"showHide('"+fieldname+"datepicker');checkPickerVal("+bool2str(usetimeselector)+", '"+fieldname+"');setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendar("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"'); \">";
        dpsource+="<input type=button style=\"position: relative; left: 106px; font-weight: bold;\" class=\"button_picker\" value=\"X\" onclick=\"document.getElementById('"+fieldname+"').value='';\">";
    }   
    dpsource+="<div>"+fielderror+"</div>\n";
    dpsource+="<div class=\"datepickertrans\" style=\"z-index:"+actZIndex+"\" name=\""+fieldname+"datepicker\" id=\""+fieldname+"datepicker\">\n";
    dpsource+="<table class=\"datepickercol\" ><tr><td valign=top>\n";
    dpsource+="<table border=0 cellpadding=0 cellspacing=0 width=\"100%\" height=\"100%\">\n";
    dpsource+="<tr><td height=\"10\"><table width=\"100%\">\n";
    dpsource+="<td><table><tr>\n";
    dpsource+="<td><input type=button class=\"datepicker_yearstep\" onclick=\"document.getElementById('"+fieldname+"datepicker_yearbox').value--; setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendar("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"');\" value=\"&lt;\"></td>\n";
    dpsource+="<td>&nbsp;</td>\n";
    dpsource+="<td><input type=text disabled name=\""+fieldname+"datepicker_yearbox\" id=\""+fieldname+"datepicker_yearbox\" class=\"datepicker_yearbox\" value=\"\"></td>\n";
    dpsource+="<td>&nbsp;</td>\n";
    dpsource+="<td><input type=button class=\"datepicker_yearstep\" onclick=\"document.getElementById('"+fieldname+"datepicker_yearbox').value++; setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendar("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"');\" value=\"&gt;\"></td>\n";
    dpsource+="</tr></table></td>\n";
    dpsource+="<!-- DATE SELECTOR -->\n";
    dpsource+="<td align=right><select name="+fieldname+"datepicker_monthbox id="+fieldname+"datepicker_monthbox onchange=\"setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendar("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"');\">\n";
    for (i=1;i<13;i++) {
        dpsource+="<option value="+i+">"+monthNames[i]+"</option>\n";
    }
    dpsource+="</select></td>\n";
    dpsource+="</table><input type=hidden name=\""+fieldname+"datepicker_daybox\" id=\""+fieldname+"datepicker_daybox\" value=\"\"></td></tr>\n";
    dpsource+="<tr><td valign=top><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top bgcolor=\"black\"><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top>\n";
    dpsource+="<!-- MONTH CALENDAR -->\n";
    dpsource+="<table width=\"100%\">\n";
    dpsource+="<tr><td valign=top><div name=\""+fieldname+"datepicker_calendar\" id=\""+fieldname+"datepicker_calendar\"></div></td></tr>\n";
    dpsource+="</table>\n";
    dpsource+="</td></tr>\n";
    dpsource+="<tr><td valign=top><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top bgcolor=\"black\"><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top>\n";
    dpsource+="<table width=\"100%\">\n";
    dpsource+="<tr>\n";
    dpsource+="<td valign=top>&nbsp;<input type=button class=\"datepicker_todaybutton\" name=\""+fieldname+"datepicker_todaybutton\" id=\""+fieldname+"datepicker_todaybutton\" value=\""+todayStr+"\" onclick=\"showHide('"+fieldname+"datepicker');document.getElementById('"+fieldname+"datepicker_daybox').value=pickertoday.getDate();document.getElementById('"+fieldname+"datepicker_monthbox').selectedIndex=pickertoday.getMonth();document.getElementById('"+fieldname+"datepicker_yearbox').value=pickertoday.getFullYear();setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendar("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"');\"></td>\n";
    dpsource+="<td valign=top align=right>\n";
    if (usetimeselector) {
        dpsource+="<table><tr>\n";
        dpsource+="<td><select name="+fieldname+"datepicker_hourbox id="+fieldname+"datepicker_hourbox onchange=\"setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');\">\n";
        for (i=0;i<24;i++) {
            if (i==8) {
                dpsource+="<option selected value="+i+">"+padZeroes(i,2)+"</option>\n";
            } else {
                dpsource+="<option value="+i+">"+padZeroes(i,2)+"</option>\n";
            }
        }
        dpsource+="</select></td>\n";
        dpsource+="<td>:</td>\n";
        dpsource+="<td><select name="+fieldname+"datepicker_minutebox id="+fieldname+"datepicker_minutebox onchange=\"setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');\">\n";
        for (i=0;i<60;i=i+5) {
            dpsource+="<option value="+i+">"+padZeroes(i,2)+"</option>\n";
        }
        dpsource+="</select></td>\n";
        dpsource+="</tr></table>\n";
    } else {
        dpsource+=" ";
    }
    dpsource+="</td>\n";
    dpsource+="</tr>\n";
    dpsource+="</table>\n";
    dpsource+="</td></tr>\n";
    dpsource+="</table>\n";
    dpsource+="</td></tr></table>\n";
    dpsource+="</div>\n";

    document.write(dpsource);

    if (fieldvalue!='')    {
        document.getElementById(fieldname+'datepicker_yearbox').value = initdate.getFullYear();
        document.getElementById(fieldname+'datepicker_monthbox').selectedIndex = initdate.getMonth();
        document.getElementById(fieldname+'datepicker_daybox').value = initdate.getDate();
        setPickerDate(usetimeselector, document.getElementById(fieldname), fieldname);
        renderCalendar(usetimeselector, document.getElementById(fieldname+'datepicker_daybox').value, document.getElementById(fieldname+'datepicker_monthbox').value, document.getElementById(fieldname+'datepicker_yearbox').value, document.getElementById(fieldname+'datepicker_calendar'), fieldname);
    }
    return (actZIndex-1);
}


function showDatePickerEng(fieldname, fieldvalue, maxlength, disabled, fielderror, usetimeselector, actZIndex, fieldclass, onchange) {
    initdate = new Date();
    dpsource = new String();
    if ((fieldvalue=='') || (fieldvalue=='0000-00-00 00:00:00') || (fieldvalue=='0000-00-00')) {
        /*
        if (usetimeselector) {
            fieldvalue=initdate.getFullYear()+'-'+padZeroes(initdate.getMonth()+1,2)+'-'+padZeroes(initdate.getDate(),2)+' '+padZeroes(initdate.getHours(),2)+':'+padZeroes(initdate.getMinutes()+':'+padZeroes(initdate.getSeconds(),2)+':',2);
        } else {
            fieldvalue=initdate.getFullYear()+'-'+padZeroes(initdate.getMonth()+1,2)+'-'+padZeroes(initdate.getDate(),2);
        }
        */
        fieldvalue='';
    } else {
        if (usetimeselector) {
            var datetimePat = /^(\d{4})(\/|-)(\d{2})(\/|-)(\d{2})\ (\d{2})(\:)(\d{2})(\:)(\d{2})$/;
            var matchArray = fieldvalue.match(datetimePat); 
            if (matchArray == null) {
                fieldvalue=initdate.getFullYear()+'-'+padZeroes(initdate.getMonth()+1,2)+'-'+padZeroes(initdate.getDate(),2)+' '+padZeroes(initdate.getHours(),2)+':'+padZeroes(initdate.getMinutes()+':'+padZeroes(initdate.getSeconds(),2)+':',2);
            } else {
                initdate = new Date(fieldvalue.substr(0,4), fieldvalue.substr(5,2).valueOf()-1, fieldvalue.substr(8,2), fieldvalue.substr(11,2), fieldvalue.substr(14,2), fieldvalue.substr(17,2));
            }
        } else {
            var datetimePat1 = /^(\d{4})(\/|-)(\d{2})(\/|-)(\d{2})$/;
            var datetimePat2 = /^(\d{4})(\/|-)(\d{2})(\/|-)(\d{2})\ (\d{2})(\:)(\d{2})(\:)(\d{2})$/;
            var matchArray1 = fieldvalue.match(datetimePat1); 
            var matchArray2 = fieldvalue.match(datetimePat2); 
            if ((matchArray1 == null) && (matchArray2 == null)) {
                fieldvalue=initdate.getFullYear()+'-'+padZeroes(initdate.getMonth()+1,2)+'-'+padZeroes(initdate.getDate(),2);
            } else {
                initdate = new Date(fieldvalue.substr(0,4), fieldvalue.substr(5,2).valueOf()-1, fieldvalue.substr(8,2));
            }
        }
    }
    fclass = fieldclass ? fieldclass : "date";   
    dpsource+="<input size='10' class=\""+fclass+"\" style=\"position: absolute; size: 10; width: 100px;\" type=\"text\" "+disabled+" name=\""+fieldname+"\" id=\""+fieldname+"\" size=\""+maxlength+"\" value=\""+fieldvalue+"\" onFocus=\"b(this);\" onBlur=\"k(this);"+onchange+";renderCalendarFieldsEng('offeredit_archiveDate');\" onChange=\""+(onchange?onchange:"")+";renderCalendarFieldsEng('offeredit_archiveDate');\" >";
    if (fieldclass == 'short')
    {    
        dpsource+="<input type=button style=\"position: relative; left: 90px\" class=\"button_picker\" value=\"&#9660\" onclick=\"showHide('"+fieldname+"datepicker');checkPickerVal("+bool2str(usetimeselector)+", '"+fieldname+"');setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendarEng("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"'); \">";
        dpsource+="<input type=button style=\"position: relative; left: 96px; font-weight: bold;\" class=\"button_picker\" value=\"X\" onclick=\"document.getElementById('"+fieldname+"').value='';\">";
    }
    else
    {
        dpsource+="<input type=button style=\"position: relative; left: 100px\" class=\"button_picker\" value=\"&#9660\" onclick=\"showHide('"+fieldname+"datepicker');checkPickerVal("+bool2str(usetimeselector)+", '"+fieldname+"');setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendarEng("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"'); \">";
        dpsource+="<input type=button style=\"position: relative; left: 106px; font-weight: bold;\" class=\"button_picker\" value=\"X\" onclick=\"document.getElementById('"+fieldname+"').value='';\">";
    }   
    dpsource+="<div>"+fielderror+"</div>\n";
    dpsource+="<div class=\"datepickertrans\" style=\"z-index:"+actZIndex+"\" name=\""+fieldname+"datepicker\" id=\""+fieldname+"datepicker\">\n";
    dpsource+="<table class=\"datepickercol\" ><tr><td valign=top>\n";
    dpsource+="<table border=0 cellpadding=0 cellspacing=0 width=\"100%\" height=\"100%\">\n";
    dpsource+="<tr><td height=\"10\"><table width=\"100%\">\n";
    dpsource+="<td><table><tr>\n";
    dpsource+="<td><input type=button class=\"datepicker_yearstep\" onclick=\"document.getElementById('"+fieldname+"datepicker_yearbox').value--; setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendarEng("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"');\" value=\"&lt;\"></td>\n";
    dpsource+="<td>&nbsp;</td>\n";
    dpsource+="<td><input type=text disabled name=\""+fieldname+"datepicker_yearbox\" id=\""+fieldname+"datepicker_yearbox\" class=\"datepicker_yearbox\" value=\"\"></td>\n";
    dpsource+="<td>&nbsp;</td>\n";
    dpsource+="<td><input type=button class=\"datepicker_yearstep\" onclick=\"document.getElementById('"+fieldname+"datepicker_yearbox').value++; setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendarEng("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"');\" value=\"&gt;\"></td>\n";
    dpsource+="</tr></table></td>\n";
    dpsource+="<!-- DATE SELECTOR -->\n";
    dpsource+="<td align=right><select name="+fieldname+"datepicker_monthbox id="+fieldname+"datepicker_monthbox onchange=\"setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendarEng("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"');\">\n";
    for (i=1;i<13;i++) {
        dpsource+="<option value="+i+">"+monthNamesEng[i]+"</option>\n";
    }
    dpsource+="</select></td>\n";
    dpsource+="</table><input type=hidden name=\""+fieldname+"datepicker_daybox\" id=\""+fieldname+"datepicker_daybox\" value=\"\"></td></tr>\n";
    dpsource+="<tr><td valign=top><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top bgcolor=\"black\"><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top>\n";
    dpsource+="<!-- MONTH CALENDAR -->\n";
    dpsource+="<table width=\"100%\">\n";
    dpsource+="<tr><td valign=top><div name=\""+fieldname+"datepicker_calendar\" id=\""+fieldname+"datepicker_calendar\"></div></td></tr>\n";
    dpsource+="</table>\n";
    dpsource+="</td></tr>\n";
    dpsource+="<tr><td valign=top><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top bgcolor=\"black\"><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top><div class=\"s\"></div></td></tr>\n";
    dpsource+="<tr><td valign=top>\n";
    dpsource+="<table width=\"100%\">\n";
    dpsource+="<tr>\n";
    dpsource+="<td valign=top>&nbsp;<input type=button class=\"datepicker_todaybutton\" name=\""+fieldname+"datepicker_todaybutton\" id=\""+fieldname+"datepicker_todaybutton\" value=\""+todayStrEng+"\" onclick=\"showHide('"+fieldname+"datepicker');document.getElementById('"+fieldname+"datepicker_daybox').value=pickertoday.getDate();document.getElementById('"+fieldname+"datepicker_monthbox').selectedIndex=pickertoday.getMonth();document.getElementById('"+fieldname+"datepicker_yearbox').value=pickertoday.getFullYear();setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');renderCalendarEng("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"datepicker_daybox').value, document.getElementById('"+fieldname+"datepicker_monthbox').value, document.getElementById('"+fieldname+"datepicker_yearbox').value, document.getElementById('"+fieldname+"datepicker_calendar'), '"+fieldname+"');\"></td>\n";
    dpsource+="<td valign=top align=right>\n";
    if (usetimeselector) {
        dpsource+="<table><tr>\n";
        dpsource+="<td><select name="+fieldname+"datepicker_hourbox id="+fieldname+"datepicker_hourbox onchange=\"setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');\">\n";
        for (i=0;i<24;i++) {
            if (i==8) {
                dpsource+="<option selected value="+i+">"+padZeroes(i,2)+"</option>\n";
            } else {
                dpsource+="<option value="+i+">"+padZeroes(i,2)+"</option>\n";
            }
        }
        dpsource+="</select></td>\n";
        dpsource+="<td>:</td>\n";
        dpsource+="<td><select name="+fieldname+"datepicker_minutebox id="+fieldname+"datepicker_minutebox onchange=\"setPickerDate("+bool2str(usetimeselector)+", document.getElementById('"+fieldname+"'), '"+fieldname+"');\">\n";
        for (i=0;i<60;i=i+5) {
            dpsource+="<option value="+i+">"+padZeroes(i,2)+"</option>\n";
        }
        dpsource+="</select></td>\n";
        dpsource+="</tr></table>\n";
    } else {
        dpsource+=" ";
    }
    dpsource+="</td>\n";
    dpsource+="</tr>\n";
    dpsource+="</table>\n";
    dpsource+="</td></tr>\n";
    dpsource+="</table>\n";
    dpsource+="</td></tr></table>\n";
    dpsource+="</div>\n";

    document.write(dpsource);

    if (fieldvalue!='')    {
        document.getElementById(fieldname+'datepicker_yearbox').value = initdate.getFullYear();
        document.getElementById(fieldname+'datepicker_monthbox').selectedIndex = initdate.getMonth();
        document.getElementById(fieldname+'datepicker_daybox').value = initdate.getDate();
        setPickerDate(usetimeselector, document.getElementById(fieldname), fieldname);
        renderCalendarEng(usetimeselector, document.getElementById(fieldname+'datepicker_daybox').value, document.getElementById(fieldname+'datepicker_monthbox').value, document.getElementById(fieldname+'datepicker_yearbox').value, document.getElementById(fieldname+'datepicker_calendar'), fieldname);
    }
    return (actZIndex-1);
}

function renderCalendarFieldsEng(fieldname)
{
    if (fieldname!='')    {
        document.getElementById(fieldname+'datepicker_yearbox').value = initdate.getFullYear();
        document.getElementById(fieldname+'datepicker_monthbox').selectedIndex = initdate.getMonth();
        document.getElementById(fieldname+'datepicker_daybox').value = initdate.getDate();
        setPickerDate(usetimeselector, document.getElementById(fieldname), fieldname);
        renderCalendarEng(usetimeselector, document.getElementById(fieldname+'datepicker_daybox').value, document.getElementById(fieldname+'datepicker_monthbox').value, document.getElementById(fieldname+'datepicker_yearbox').value, document.getElementById(fieldname+'datepicker_calendar'), fieldname);
    }
}

