var win=null;
var ziel;
var boCoCha = false;

function closeme()
{	if(win) win.close();
}

function zurueck(page)
{	document.form2.target='_self';
	document.form2.action = page;
	return true;
}

function vor(page)
{	document.form2.target='_self';
	document.form2.action = page;
	return true;
}

function NewWindow(mypage,myname,w,h,bars)
{ if(win)
  	win.close ();

  var winl = (screen.width-w)/2;
  var wint = (screen.height-h)/2;
  var settings  ='height='+h+',';
      settings +='width='+w+',';
      settings +='top='+wint+',';
      settings +='left='+winl+',';

  if(bars) settings += 'scrollbars=1,';

   settings +='toolbar=0,location=0,directories=0,status=0,menubar=0,resizable=1,dependent=0';

  win=window.open(mypage,myname,settings);
  if(parseInt(navigator.appVersion) >= 4){win.window.focus();}
}

function get(id)
{	return typeof id == 'string' ? document.getElementById(id) : id;
}

function setError(id)
{		get(id).focus();
		get(id).className += ' error';
}

function removeError(id)
{	get(id).className = get(id).className.replace(/ error/g, '');
}

function checkExistance(id, error)
{	if(!get(id).value)
	{	setError(id);
		alert(error);
		return false;
	}else 
	{ removeError(id);
		return true;
	}
}

function checkNumeric(id, error)
{	var num = parseInt(get(id).value);
	if(isNaN(num)) 
	{	setError(id);
		alert(error+"\nEingabewert: "+get(id).value);
		return false;
	}else
	{	get(id).value=num;
		return true;
	}
}

function EingabenUeberpruefen()
{	if(!checkExistance('jahr','Bitte geben Sie Ihr Geburtsjahr an!'))
		return false;

	if(!checkExistance('sex','Bitte geben Sie Ihr Geschlecht an!'))
		return false;
	
	if(!checkNumeric('jahr','Das Geburtsjahr enthält ungültige Zeichen!'))
		return false;


	if(!checkExistance('brutto','Bitte geben Sie Ihr monatliches Bruttoeinkommen an!'))
		return false;

	if(!checkNumeric('brutto','Das Bruttoeinkommen enthält ungültige Zeichen!'))
		return false;
		
	return true;
}

function EingabenUeberpruefen_s2()
{	if(!checkNumeric('pa_65','Der Betrag aus der Altersrente mit 65 (private Altersvorsorge) enthält ungültige Zeichen!'))
		return false;

	if(!checkNumeric('pa_heute','Der Betrag der bereits heute garantierten Altersrente (private Altersvorsorge) enthält ungültige Zeichen!'))
			return false;

	if(!checkNumeric('ba_65','Der Betrag aus der Altersrente mit 65 (betriebliche Altersvorsorge) enthält ungültige Zeichen!'))
			return false;

	if(!checkNumeric('ba_heute','Der Betrag der bereits heute garantierten Altersrente (betriebliche Altersvorsorge) enthält ungültige Zeichen!'))
			return false;

	if(!checkNumeric('gr','Der Betrag aus der gesetzlichen Rente enthält ungültige Zeichen!'))
			return false;
			
	if(!checkNumeric('kl_65','Der Betrag aus Lebensversicherung oder anderem Vermögen enthält ungültige Zeichen!'))
			return false;

	if(!checkNumeric('li_pv','Der Betrag monatliche Leistungen im Invaliditätsfall (private Altersvorsorge) enthält ungültige Zeichen!'))
			return false;

	if(!checkNumeric('li_bv','Der Betrag monatliche Leistungen im Invaliditätsfall (betriebliche Altersvorsorge) enthält ungültige Zeichen!'))
			return false;

	if(!checkNumeric('li_gr','Der Betrag monatliche Leistungen im Invaliditätsfall (gesetzliche Rente) enthält ungültige Zeichen!'))
			return false;

	return true;
}

function check( e, n )
{ v = parseInt(e.value);
  if( isNaN(v) )return;
  if( v>=n )
  { setError(e); 
  	alert('Bitte überprüfen Sie Ihre Eingabe! Der von Ihnen angegebene Wert ist außergewöhnlich hoch.'); 
	} else if(!boCoCha)removeError(e);
}

function minCheck( e, n )
{ var c = parseInt(e.value);
  if( isNaN(c) )return;

  if( c<n ) 
  { setError(e);
  	alert('Das von Ihnen angegebene Geburtsjahr darf 19'+n+' nicht unterschreiten. Bitte geben Sie einen anderen Wert ein.');
  	e.value=n;
	} else removeError(e);
}

function comPcheck( id_, e, t )
{ var i2 = parseInt(document.getElementById(id_).value);
  boCoCha = false;
  if( isNaN(i2)||i2==0||i2=='0')return;
  v = parseInt(e.value);
  if( isNaN(v)||v==0||v=='0' )return;
  
  if( !t && v>i2 || t && v<i2 )
  { setError(e);
  	alert('Bitte überprüfen Sie Ihre Eingabe! Der garantierte Wert kann den Wert inklusive Überschussbeteiligung nicht übersteigen.');
  	boCoCha = true; 
	} else 
	{ removeError(e);
		removeError(id_);
	}
}

function sendForm(page) {
	switch(ziel)
	{	case 3:
			document.form2.target='_self';
			document.form2.action = 'seite_4.php';
		break;
		case 4:
			document.form2.target='_self';
			document.form2.action = page;
		break;
		case 5:
			document.form2.target='_blank';
			document.form2.action = 'druck.php';
		break;
	}

	return true;
}

function getElementsByClassName(className)
{
    var hasClassName = new RegExp("(?:^|\\s)" + className + "(?:$|\\s)");
    var allElements = document.getElementsByTagName("*");
    var results = [];

    var element;
    for (var i = 0; (element = allElements[i]) != null; i++) {
        var elementClass = element.className;
        if (elementClass && elementClass.indexOf(className) != -1 && hasClassName.test(elementClass))
            results.push(element);
    }

    return results;
}


function BerechnungEinblenden(className)
{
  var classNames = new Array("berechnung_an", "berechnung_aus");
  for(i=0;i<classNames.length;i++)
  {
    var elements = getElementsByClassName(classNames[i]);
    for(j=0;j<elements.length;j++)
    {
      if(className == classNames[i])
        elements[j].style.display = 'table-row';
      else
        elements[j].style.display = 'none';
    }
  }
}

