isNav4 = false;
isNav6 = false;

if (navigator.appVersion.charAt(0) == "4") {
	if (navigator.appName.indexOf("Explorer") >= 0)
		isIE4 = true;
	else
		isNav4 = true;
} else if (navigator.appVersion.charAt(0) > "4")
		isNav6 = true;


// css ändern
function cxg_cssprop(id,property,value)
{
    if (isNav6)
    {
	   var styleObject = document.getElementById( id );
	   if (styleObject != null)
	   {
		  styleObject = styleObject.style;
		  styleObject[ property ] = value;
	   }
    }
    else if (isNav4)
	   document[id][property] = value;
    else if (isIE4)
		document.all[id].style[property] = value;
}

function setActiveStyleSheet(title) {
  var i, a, main;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == title) a.disabled = false;
    }
  }
}

/** aufruf: cxg_msie() **/
/** ???   : prueft den browser **/
/**         rueckgabe true wenn explorer, ansonsten false **/

function cxg_msie()
{
  code = navigator.appName;
  return(code.indexOf("Microsoft")!=-1);
};

/*****************/
/** ZUFALLSZAHL **/
/*****************/

/** aufruf: cxg_random(max) **/
/** ???   : gibt eine zufallszahl zwischen 0 und max-1 zurŸck **/
/**         max := maximal-wert+1 **/

function cxg_rnd(max)

{
  return(Math.floor(Math.random()*max));
};

/********************/
/** BILD ERSTELLEN **/
/********************/

/** aufruf: cxg_newimage(source) **/
/** ???   : erstellt ein objekt image **/
/**         source  := relativer pfad des bildes zur datei,
                       aus der die funktion aufgerufen wird **/

function cxg_newimage(source)
{
  rt = new Image;
  rt.src = source;
  return(rt);
};


/**********************/
/** BILD AUSTAUSCHEN **/
/**********************/

/** aufruf: cxg_image(welches,womit) **/
/** ???   : setzt die src eines images-objektes gleich eines anderen **/
/**         welches  := name des objektes das geaendert werden soll
            womit    := name des objektes das die neue src enthaelt **/

function cxg_image(welches,womit)
{
	if(document.images[welches])
		tausch = document.images[welches];
	else
	{
		if(cxg_msie())
		{
		}else
		{
			for(lala=0;lala<document.layers.length;lala++)
			  if(document.layers[lala].document.images[welches]) tausch = document.layers[lala].document.images[welches];
		};
	};
if(tausch)tausch.src = eval(womit).src;
};


/**************************************/
/** BILD AUSTAUSCHEN MIT STATUSZEILE **/
/**************************************/

/** aufruf: cxg_image_stat(welches,womit,text) **/
/** ???   : setzt die src eines images-objektes gleich eines anderen und **/
/**         schreibt einen text in die statuszeile **/
/**         welches  := name des objektes das geaendert werden soll
            womit    := name des objektes das die neue src enthaelt 
            text     := text der in der statuszeile erscheinen soll **/

function cxg_image_stat(welches,womit,text)
{
    document.images[welches].src = eval(womit).src;
    window.status = text;
};


/*****************/
/** STATUSZEILE **/
/*****************/

/** aufruf: cxg_stat(text) **/
/** ???   : schreibt einen text in die statuszeile **/
/**         text     := text der in der statuszeile erscheinen soll **/

function cxg_stat(text)
{
    window.status = text;
};


/********************/
/** FENSTER …FFNEN **/
/********************/

/** aufruf: cxg_remote(adr,ziel,w,h,roll) **/
/** ???   : šffnet ein neues fenster **/
/**         adr  := url, die in das neue fenster geladen werden soll
            ziel := ein EINDEUTIGER name fuer das neue fenster
          				  dieser name darf nicht gleich mit dem eines anderen objektes - egal welchen
						w,h  := breite und hoehe des neuen fensters
						roll := 'yes', wenn rollbalken mšglich sein sollen, ansonsten leer oder 'no' **/

function cxg_remote(adr,ziel,w,h,roll)
{
cx_win = window.open(adr,ziel,"width="+w+",height="+h+",toolbar=no,status=no,scrollbars="+roll+",scrolling="+roll);
};


/************************************************/
/** FRAMES TAUSCHEN IN DER OBERSTEN HIERARCHIE **/
/************************************************/

/** aufruf: cxg_frametausch_top(welchen,waqs_rein) **/
/** ???   : tauscht frames in der obersten hierarchie**/
/**         welchen  := der frame, der ersetzt werden soll
            was_rein := welches dokument reingeladen werden soll (in "")**/

function cxg_frametausch_top(welchen,was_rein)
{
  top.frames[welchen].location.href = was_rein;
};

/*************************************/
/** FRAMES TAUSCHEN IM ELTERN FRAME **/
/*************************************/

/** aufruf: cxg_frametausch_parent(welchen,waqs_rein) **/
/** ???   : tauscht frames im eltern frame**/
/**         welchen  := der frame, der ersetzt werden soll
            was_rein := welches dokument reingeladen werden soll (in "")**/

function cxg_frametausch_parent(welchen,was_rein)
{
  parent.frames[welchen].location.href = was_rein;
};

//------------------------------------------------------------------------------------
function isNumber (zahl)
{
	if (zahl == "") return (false);
	for (i=0; i<zahl.length; i++)
		if ((zahl.charAt(i)<"0") || (zahl.charAt(i)>"9"))
			return (false);
		
	return (true);
}
		
//------------------------------------------------------------------------------------
function isDate (dt)
{  
  days = new Array (31,28,31,30,31,30,31,31,30,31,30,31);
  
  today = new Date();
  
  Jahr = today.getYear();
  if(Jahr < 999) Jahr+=1900;
  
  if (dt == "")
  {
    d = today.getDay(); m = today.getMonth()+1; y = Jahr; 
  } else {
    dt = dt.split(".");
    
    switch (dt.length)
    {
      case 1:	d = dt[0];
      			m = today.getMonth()+1;
      			y = Jahr;
      			break; 
      case 2:	d = dt[0];
      			if (dt[1] != "")
      				m = dt[1];
      			else
      				m = today.getMonth()+1
      			y = Jahr;
      			break; 
      case 3:	d = dt[0];
      			m = dt[1]; 
      			if (dt[2] != "")
      				y = dt[2];
      			else
      				y = Jahr;
      			break;
    }
  }
  
  // zahlen?
  if (!isNumber (y)) return (false);
  if (!isNumber (m)) return (false);
  if (!isNumber (d)) return (false);
  
  // jahr prüfen
  if (y < 1000) y = (1 * y) + 1900;
  if (y > 9999) return (false);
  
  // schaltjahr?
	if ((y % 4 == 0) && ((y % 100 != 0) || (y % 400 == 0)))
    days[1] = 29;
  
  // monat prüfen
  if (m > 12) return (false);
  
  // tag prüfen
  if (d > days[m-1]) return (false);
  
  return (d + "." + m + "." + y);
}