/*******************************************************************************
* Datei :           search.js   ***JAVASCRIPT***                               *
*                                                                              *
* Projekt :         NC EveCal                                                  *
* Version :         3.3                                                        *
* Datum :           30.08.2004                                                 *
* Autor :           Manuel Rennecke <info@netconcept24.de>                     *
* Herausgeber :     (c) 2001-2004 - Net Concept 24                             *
*                                                                              *
* Such-Funktionen                                                              *
*******************************************************************************/

//**** Formularangaben prüfen ***************************************
function checkform() {
  var form = 'form';
  if (checkdate('startdate',form) == false)
    return false;
  if (checkdate('enddate',form) == false)
    return false;
  if (comparedates('startdate','enddate',form) == false)
    return false;
  if (document.form.searchstring.value == '') {
    alert('Bitte geben Sie einen Suchbegriff an!');
    document.form.searchstring.focus();
    return false;
  }
}

//**** Datumsangaben überprüfen *************************************
function checkdate(field, form) {
  field = document.forms[form].elements[field];

  if (field.value != "") {
    check_date = field.value;
    check_date = check_date.split('.');
    if (check_date.length != 3) {
      alert("Das angegebene Datum ist ungültig!");
      field.focus();
      return false;
    }

    check_date[0] = parseInt(check_date[0],10);
    check_date[1] = parseInt(check_date[1],10)-1;

    if (check_date[2].length == 2) 
      check_date[2] = '20' + check_date[2];
    test_date = new Date(check_date[2],check_date[1],check_date[0]);
    if (test_date.getDate() != check_date[0] || test_date.getMonth() != check_date[1] || test_date.getFullYear() != check_date[2]) {
      alert("Das angegebene Datum ist ungültig!");
      field.focus();
      return false;
	}
  }
} 

//**** Datumsangaben vergleichen ************************************
function comparedates(sfield, efield, form) {
  start_field = document.forms[form].elements[sfield];
  end_field   = document.forms[form].elements[efield];
  
  if (end_field.value != "") {
    start = start_field.value.split('.');
    end   = end_field.value.split('.');
  
    start[0] = parseInt(start[0],10);
    start[1] = parseInt(start[1],10)-1;
    if (start[2].length == 2) 
      start[2] = '20' + start[2];
    end[0] = parseInt(end[0],10);
    end[1] = parseInt(end[1],10)-1;
    if (end[2].length == 2) 
      end[2] = '20' + end[2];

    test_start = new Date(start[2],start[1],start[0]);
    test_end   = new Date(end[2],end[1],end[0]);
    if (test_end.getTime() < test_start.getTime()) {
      alert("Das angegebene Startdatum ist größer als das Enddatum!");
      end_field.focus();
      return false;
	}
  }
}
