/*
var suchansichtOpen = false;
function changeSuchansicht() {
	var suchbutton = document.getElementById('suchbutton');
	var suchen = document.getElementById('suchen');
	if (!suchansichtOpen) {
		suchansichtOpen = true;
		suchbutton.firstChild.nodeValue = 'Suche';
		suchen.className = 'erweiterteSuche';
	} else {
		suchansichtOpen = false;
		suchbutton.firstChild.nodeValue = 'Suche erweitern';
		suchen.className = 'normaleSuche';
	}
}*/
function changeSuchansicht() {
	var suchbutton = document.getElementById('suchbutton');
	var suchen = document.getElementById('suchen');
	if (suchen.className == 'normaleSuche') {
		suchansichtOpen = true;
		suchbutton.firstChild.nodeValue = 'zurück';
		suchen.className = 'erweiterteSuche';
		document.forms.schnellsuchform.style.display = 'none';
		document.forms.erweitertsuchen.style.display = 'block';
		document.cookie = "suche=erweiterteSuche;";
	} else {
		suchansichtOpen = false;
		suchbutton.firstChild.nodeValue = 'erweitert';
		suchen.className = 'normaleSuche';
		document.forms.schnellsuchform.style.display = 'block';
		document.forms.erweitertsuchen.style.display = 'none';
		document.cookie = "suche=normaleSuche;";
	}
}


function changeSortansicht() {
	var sortbutton = document.getElementById('sortbutton');
	var sort = document.getElementById('sort');
	if (sort.className == 'normaleSortierung') {
		sortansichtOpen = true;
		sortbutton.firstChild.nodeValue = 'zurück';
		sort.className = 'erweiterteSortierung';
		document.cookie = "sort=erweiterteSortierung;";
	} else {
		sortansichtOpen = false;
		sortbutton.firstChild.nodeValue = 'erweitert';
		sort.className = 'normaleSortierung';
		document.cookie = "sort=normaleSortierung;";
	}
}

function changeTeaseransicht() {
	var teaserbutton = document.getElementById('teaserbutton');
	var teaser = document.getElementById('teaser');
	
	if (teaser.className == 'eingeklappt') {
		teaseransichtOpen = true;
		teaserbutton.firstChild.nodeValue = 'zurück';
		teaser.className = 'ausgeklappt';
		document.cookie = "teaser=ausgeklappt;";
	} else {
		teaseransichtOpen = false;
		teaserbutton.firstChild.nodeValue = 'erweitert';
		teaser.className = 'eingeklappt';
		document.cookie = "teaser=ausgeklappt;";
	}
}


/*
var sortansichtOpen = false;
function changeSortansicht() {
	var sortbutton = document.getElementById('sortbutton');
	var sort = document.getElementById('sort');
	if (!sortansichtOpen) {
		sortansichtOpen = true;
		sortbutton.firstChild.nodeValue = 'Sortierung';
		sort.className = 'erweiterteSortierung';
	} else {
		sortansichtOpen = false;
		sortbutton.firstChild.nodeValue = 'Sortierung ändern';
		sort.className = 'normaleSortierung';
	}
}*/


var win=null;
var merkliste = new Array ();
var warenkorb = new Array ();

function NewWindow(mypage,myname,w,h,scroll,pos){
	if(pos=="random"){LeftPosition=(screen.availWidth)?Math.floor(Math.random()*(screen.availWidth-w)):10;TopPosition=(screen.availHeight)?Math.floor(Math.random()*((screen.availHeight-h)-75)):10;}
	if(pos=="center"){LeftPosition=(screen.availWidth)?(screen.availWidth-w)/2:10;TopPosition=(screen.availHeight)?(screen.availHeight-h)/2:10;}
	if(pos=="default"){LeftPosition=10;TopPosition=10}
	else if((pos!="center" && pos!="random" && pos!="default") || pos==null){LeftPosition=0;TopPosition=20}
	settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no';
	win=window.open(mypage,myname,settings);
	if(win.focus){win.focus();}
	}

function CloseNewWin()
	{
	if(win!=null && win.open)win.close()
	}

window.onfocus=CloseNewWin;


//Funktionen zur feldprüfung:
//#########################################################################################

var form = "";
var submitted = false;
var error = false;
var error_message = "";

function check_input(field_name, field_size, message) {
  if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    var field_value = form.elements[field_name].value;

    if (field_value == '' || field_value.length < field_size) {
      error_message = error_message + "* " + message + "\n";
      error = true;
    }
  }
}

function check_radio(field_name, message) {
  var isChecked = false;

  if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    var radio = form.elements[field_name];

    for (var i=0; i<radio.length; i++) {
      if (radio[i].checked == true) {

        isChecked = true;
        break;
      }
    }

    if (isChecked == false) {
      error_message = error_message + "* " + message + "\n";
      error = true;
    }
  }
}

function check_select(field_name, field_default, message) {
  if (form.elements[field_name] && (form.elements[field_name].type != "hidden")) {
    var field_value = form.elements[field_name].value;

    if (field_value == field_default) {
      error_message = error_message + "* " + message + "\n";
      error = true;
    }
  }
}

function check_password(field_name_1, field_name_2, field_size, message_1, message_2) {
  if (form.elements[field_name_1] && (form.elements[field_name_1].type != "hidden")) {
    var password = form.elements[field_name_1].value;
    var confirmation = form.elements[field_name_2].value;

    if (password == '' || password.length < field_size) {
      error_message = error_message + "* " + message_1 + "\n";
      error = true;
    } else if (password != confirmation) {
      error_message = error_message + "* " + message_2 + "\n";
      error = true;
    }
  }
}

function check_password_new(field_name_1, field_name_2, field_name_3, field_size, message_1, message_2, message_3) {
  if (form.elements[field_name_1] && (form.elements[field_name_1].type != "hidden")) {
    var password_current = form.elements[field_name_1].value;
    var password_new = form.elements[field_name_2].value;
    var password_confirmation = form.elements[field_name_3].value;

    if (password_current == '' || password_current.length < field_size) {
      error_message = error_message + "* " + message_1 + "\n";
      error = true;
    } else if (password_new == '' || password_new.length < field_size) {
      error_message = error_message + "* " + message_2 + "\n";
      error = true;
    } else if (password_new != password_confirmation) {
      error_message = error_message + "* " + message_3 + "\n";
      error = true;
    }
  }
}

function check_form(form_name) {
  if (submitted == true) {
    alert("Diese Seite wurde bereits bestätigt. Betätigen Sie bitte OK und warten bis der Prozess durchgeführt wurde.");
    return false;
  }

  error = false;
  form = form_name;
  error_message = "Notwendige Angaben fehlen!\nBitte richtig ausfüllen.\n\n";

  check_radio("gender", "Bitte das Geschlecht angeben.");

  //check_input("firstname", 2, "Der Vorname sollte mindestens 2 Zeichen enthalten.");
  //check_input("lastname", 2, "Der Nachname sollte mindestens 2 Zeichen enthalten.");

  //check_input("dob", 10, "Bitte geben Sie Ihr Geburtsdatum in folgendem Format ein: TT.MM.JJJJ (z.B. 21.05.1970)");

  check_input("email_address", 6, "Die eMail Adresse sollte mindestens 6 Zeichen enthalten.");
  check_input("street_address", 5, "Die Strassenadresse sollte mindestens 5 Zeichen enthalten.");
  check_input("postcode", 4, "Die Postleitzahl sollte mindestens 4 Zeichen enthalten.");
  check_input("city", 3, "Die Stadt sollte mindestens 3 Zeichen enthalten.");

  /*check_input("state", 2, "Das Bundesland sollte mindestens 2 Zeichen enthalten.");*/

  check_select("country", "", "Bitte wählen Sie ein Land aus der Liste.");

  check_input("telephone", 3, "Die Telefonnummer sollte mindestens 3 Zeichen enthalten.");

  check_password("password", "confirmation", 5, "Das Passwort sollte mindestens 5 Zeichen enthalten.", "Beide eingegebenen Passwörter müssen identisch sein.");
  check_password_new("password_current", "password_new", "password_confirmation", 5, "Das Passwort sollte mindestens 5 Zeichen enthalten.", "Das neue Passwort sollte mindestens 5 Zeichen enthalten.", "Die Passwort-Bestätigung muss mit Ihrem neuen Passwort übereinstimmen.");

  if (error == true) {
    alert(error_message);
    return false;
  } else {
    submitted = true;
    return true;
  }
}

function check_addressform(form_name) {
  if (submitted == true) {
    alert("Diese Seite wurde bereits bestätigt. Betätigen Sie bitte OK und warten bis der Prozess durchgeführt wurde.");
    return false;
  }

  error = false;
  form = form_name;

  var adressfeld = form.elements['adressid'];

  if(adressfeld[adressfeld.length-1].checked == true)
	{
	  error_message = "Notwendige Angaben fehlen!\nBitte richtig ausfüllen.\n\n";

	  check_radio("gender", "Bitte das Geschlecht angeben.");

	  //check_input("firstname", 2, "Der Vorname sollte mindestens 2 Zeichen enthalten.");
	  //check_input("lastname", 2, "Der Nachname sollte mindestens 2 Zeichen enthalten.");

	  check_input("email_address", 6, "Die eMail Adresse sollte mindestens 6 Zeichen enthalten.");
	  check_input("street_address", 5, "Die Strassenadresse sollte mindestens 5 Zeichen enthalten.");
	  check_input("postcode", 4, "Die Postleitzahl sollte mindestens 4 Zeichen enthalten.");
	  check_input("city", 3, "Die Stadt sollte mindestens 3 Zeichen enthalten.");

	  /*check_input("state", 2, "Das Bundesland sollte mindestens 2 Zeichen enthalten.");*/

	  check_select("country", "", "Bitte wählen Sie ein Land aus der Liste.");

	}
  if (error == true) {
    alert(error_message);
    return false;
  } else {
    submitted = true;
    return true;
  }
}

/*
* Funktion zum Anzeigen von Feldbezeichnungen in den Login-Feldern selbst.
* Sinn: es kann viel Platz gespart werden und es is einfach cool
* Parameter: action kann entweder 'uf' für focus oder 'ub' für blur sein
*
* Passendes html:
* <input id="smallloginbox_user" type="text" name="email_address" onfocus="loginForm('uf')" onblur="loginForm('ub')" value="Email od. Kundenr" />
*/

function loginForm(action) {
	var userval = 'Email od. KundenNr'; //String im Anmeldefeld
	var passval = 'passwd'; //String im Passwortfeld
	if (action == 'uf' && document.getElementById('smallloginbox_user').value == userval) {
		document.getElementById('smallloginbox_user').value = '';

	} else if (action == 'ub' && document.getElementById('smallloginbox_user').value == '') {
		document.getElementById('smallloginbox_user').value = userval;

	} else if (action == 'pf' && document.getElementById('smallloginbox_pw').value == passval) {
		document.getElementById('smallloginbox_pw').value = '';

	} else if (action == 'pb' && document.getElementById('smallloginbox_pw').value == '') {
		document.getElementById('smallloginbox_pw').value = passval;
	}
}

function suchForm(action) {
	var userval = 'Stichwörter od. Bestellnummern';
	if (action == 'uf' && document.getElementById('schnellsuchstrfeld').value == userval) {
		document.getElementById('schnellsuchstrfeld').value = '';

	} else if (action == 'ub' && document.getElementById('schnellsuchstrfeld').value == '') {
		document.getElementById('schnellsuchstrfeld').value = userval;
	}
}

function suchformSubmit(art) {
	document.getElementById('hidden_suchform_handler').value = art;
	document.forms.erweitertsuchen.submit();
}

function setPflichtfeld(feldid) {
	if(feldid == 'firma') {
		document.getElementById('stern_vorn').style.visibility='hidden';
		document.getElementById('stern_nachn').style.visibility='hidden';
		
		document.getElementById('stern_firm').style.visibility='visible';
	}
	else if(feldid == 'name') {
		document.getElementById('stern_firm').style.visibility='hidden';
		
		document.getElementById('stern_vorn').style.visibility='visible';
		document.getElementById('stern_nachn').style.visibility='visible';
	}
}

