// Functions for Date Operating
// Copyright 2000 by DSD-Corp
// <script language="JavaScript" src="date.js"></script>

nn4 = (document.layers)? true : false;
ie4 = (document.all)? true : false;
var _objects_used = (window['_objects_used']);

function GenDayCombo(_formname,id_name, sel_num, Month, Year) {
var currentdate = new Date();
var monthlength = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
var rYear = (Year)? Year:currentdate.getFullYear();

  if (rYear/4==Math.floor(rYear/4) || rYear/400==Math.floor(rYear/400)) {
    monthlength[1] = 29
  }
//  top.status = rYear;
  var daycount = monthlength[(Month)?Month-1:currentdate.getMonth()];

  document.write('<select id='+id_name+' name="'+id_name+'"></select>');
  document.all[id_name]._formname = _formname;


  document.all[id_name].length=0;
  for (var i=1;i<=daycount;i++) {
      NewOpt=document.createElement('OPTION');
      NewOpt.value=(i<10)?"0"+i:i;
      NewOpt.text=i;
      if (sel_num && sel_num==i+1) NewOpt.selected=true;
      if (!sel_num && currentdate.getDate()==i+1) NewOpt.selected=true;
      document.all[id_name].add(NewOpt);
      }
  document.all[id_name].selectedIndex=((!sel_num)?(currentdate.getDate()-1):sel_num-1);

}


function GenMonthCombo(_formname,id_name,sel_num,rod_pad) {
var currentdate = new Date();
var months = new Array('Januar','Februar','Marz','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember');
var monthsr = new Array('Januar','Februar','Marz','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember');
if (rod_pad) {months = monthsr;}

  document.write('<select id='+id_name+' name="'+id_name+'"></select>');
  document.all[id_name]._formname = _formname;
//  onchange="top.status=this.value"
  document.all[id_name].length=0;
  for (var i=0;i<months.length;i++) {
      NewOpt=document.createElement('OPTION');
      NewOpt.value=i+1;
      NewOpt.text=months[i];
      if (sel_num && sel_num==i+1) NewOpt.selected=true;
      if (!sel_num && currentdate.getMonth()==i) NewOpt.selected=true;
      document.all[id_name].add(NewOpt);
      }
  document.all[id_name].selectedIndex=((!sel_num)?(currentdate.getMonth()):sel_num-1);
//  top.status=currentdate.getMonth();
}

function GenYearCombo(_formname,id_name,sel_num,arr_diap,y_len) {
var currentdate = new Date();
if (arr_diap) {
    var y_from = arr_diap[0];
    var y_to = arr_diap[1];
    }
var _y_from = (y_from)?y_from:((y_len)?currentdate.getFullYear()-y_len/2:currentdate.getFullYear()-3);
var _y_to = (y_to)?y_to:((y_len)?y_from+y_len:currentdate.getFullYear()+3);

var _y_len = (y_len)?y_len:_y_to+1-_y_from;


  document.write('<select id='+id_name+' name="'+id_name+'"></select>');
  document.all[id_name]._formname = _formname;
  document.all[id_name].length=0;
  for (var i=0;i<_y_len;i++) {
      NewOpt=document.createElement('OPTION');
      NewOpt.value=i+_y_from;
      NewOpt.text=i+_y_from;
      if (sel_num && sel_num==i+_y_from) NewOpt.selected=true;
      if (!sel_num && currentdate.getFullYear()==i+_y_from) NewOpt.selected=true;
      document.all[id_name].add(NewOpt);
      }
  document.all[id_name].selectedIndex=((!sel_num)?(currentdate.getFullYear()-_y_from):sel_num-_y_from);
  if (document.all[id_name].selectedIndex<0) document.all[id_name].selectedIndex=document.all[id_name].length-1;
}

function dtToInt(_Arg) {
  var Result = 0;
  if (parseInt(_Arg,10)>0) Result = parseInt(_Arg,10);
  return Result;
}

function GenDateForm(a_date,a_formname, a_rod_pad, arr_diap) {
var _date = (a_date&&a_date[0]&&a_date[1]&&a_date[2]&&(a_date[0]>0)&&(a_date[1]>0)&&(a_date[2]>0))?new Date(a_date[2]*1,a_date[1]-1,a_date[0]*1):new Date();
var _formname = (a_formname)?a_formname:'';
var _rod_pad = (a_rod_pad)?a_rod_pad:false;


   if (a_date.constructor!=Array) _date.setTime(dtToInt(a_date)*1000);
   GenDayCombo(_formname,_formname+'day',_date.getDate(),_date.getMonth()+1,_date.getFullYear());
   GenMonthCombo(_formname,_formname+'month',_date.getMonth()+1,_rod_pad);
   GenYearCombo(_formname,_formname+'year',_date.getFullYear(), arr_diap);

   document.all[_formname+'month'].onchange=DateChange;
   document.all[_formname+'year'].onchange=DateChange;
   document.all[_formname+'year'].onchange();
//   document.write('<b>'+_date+'</b>');
}

function DateChange() {
_formname = this._formname;
// _formname = 'vform1';
id_day = _formname+'day';
Month = document.all[_formname+'month'][document.all[_formname+'month'].selectedIndex].value;
Year = document.all[_formname+'year'][document.all[_formname+'year'].selectedIndex].value;
var sel_num = document.all[id_day].selectedIndex+1;
var currentdate = new Date();      
var monthlength = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
var rYear = (Year)? Year:currentdate.getFullYear();
  if (rYear/4==Math.floor(rYear/4) || rYear/400==Math.floor(rYear/400)) {
    monthlength[1] = 29;
  }
//  top.status = Month;
  var daycount = monthlength[(Month)?Month-1:currentdate.getMonth()];
  if (sel_num+1>daycount) {sel_num=daycount;}

  document.all[id_day].length=0;
  for (var i=1;i<=daycount;i++) {
      NewOpt=document.createElement('OPTION');
      NewOpt.value=(i<10)?"0"+i:i;
      NewOpt.text=i;
      document.all[id_day].add(NewOpt);
      }
  document.all[id_day].selectedIndex=((!sel_num)?(currentdate.getDate()):sel_num-1);
}



function GenTimeForm(a_time,a_formname) {
   if (_objects_used) { document.write('<script language="JavaScript">GenEdit("'+((a_formname)?a_formname:'time')+'",[8,8,false],"",true);</script>'); }
      else { document.write('<input type=text id='+((a_formname)?a_formname:'time')+' name="'+a_formname+'time" value="">'); }
   var _this = document.all[((a_formname)?a_formname:'time')];
   x_time = a_time.split(":");
   _this.value = GetTime(x_time[0],x_time[1],x_time[2]);
   _this.onkeypress = TimeForm_keypress;

}

function TimeForm_keypress() {
var _e = event;
var _Key = event.keyCode;
var _RealKey = String.fromCharCode(_Key);
var _is_num_key = ((_Key>47)&&(_Key<59));
   top.status = _Key+":"+_RealKey+":"+((_is_num_key)?"Yes":"No");
   event.returnValue=_is_num_key;
//   if (_Key==46) { document.all.del.click(); }
//   if (_Key==45) {
//       if (_e.ctrlKey) { document.all.change.click(); }
//       else { document.all.add.click(); }
//   }
}

function GetTime(_hh, _mm, _ss) {
var dd = new Date();
if ((_hh)&&(_hh>-1)&&(_hh<24)) { dd.setHours(_hh); }
if ((_mm)&&(_mm>-1)&&(_mm<60)) { dd.setMinutes(_mm); }
if ((_ss)&&(_ss>-1)&&(_ss<60)) { dd.setSeconds(_ss); }
var hh = dd.getHours();
var mm = dd.getMinutes();
var ss = dd.getSeconds();
    return ((hh<10)?"0"+hh:hh)+":"+((mm<10)?"0"+mm:mm)+":"+((ss<10)?"0"+ss:ss);
}

//function AddChar(_str,_char,_length) {
//  for (var i=0;i<=(_length-_str.length)+1;i++) {
//      _str += _char;
//  }
//  return _str;
//}

//function AddCharL(_str,_char,_length) {
//  for (var i=0;i<=(_length-_str.length);i++) {
//      _str =+ _char;
//  }
//  return _str;
//}


