name = "hauptfenster";

function openwin(verweis) {
  fenster = open(verweis,"Shopinfo","toolbar=no,scrollbars=yes,location=no,status=no,menubar=no,height=450,width=430");
}
function picwin(verweis) {
  fenster = open(verweis,"Detail","toolbar=no,scrollbars=yes,location=no,status=no,menubar=no,height=450,width=450");
}
function infowin(verweis) {
  fenster = open(verweis,"Detail","toolbar=no,scrollbars=yes,location=no,status=no,menubar=no,height=450,width=560,resizable=yes");
}
function wk_check( form) {
    if( maxAusfuehrungen > 0) {
      for( i = 0; i < maxAusfuehrungen; i++)   {
         valField = eval("form.wkausf"+i+".value");
         if( valField == "xxnoinputxx" || valField == "xxnoinputxx2" || valField == "")  {
             //            alert( shoptext_19);
            return false;
         }
      }
    }
    return true;
}





function feld_not_ok(feld,msg) {
  alert(msg);
  feld.select();
   feld.focus();
}
function format_float(float){
  
  var fix_stellen = (format_float.arguments.length>1)?format_float.arguments[1]:false;
  
  if(fix_stellen){
      float = runde(float,fix_stellen);
  }else{
      float = parseFloat(float);
      float *=100;
      float = Math.round(float);
      float /= 100;
  }
  return format_float_nicely(float);
}

function format_price(price){
    var nachkomma;
    if(format_price.arguments[1])
        nachkomma = format_price.arguments[1];
    else if(get_setup('kommastellen')!='')
        nachkomma =  get_setup('kommastellen');  
    else
        nachkomma = 2;
    
    price = runde(price,nachkomma);
    return format_float_nicely(price);
}

function format_float_nicely(float){
    
    var str_dez_trenner = (get_setup('dezimaltrenner')!='')?get_setup('dezimaltrenner'):'Komma';
    var dez_trenner,tausend_trenner;
    
    if(str_dez_trenner == 'Komma'){
        dez_trenner = ',';
        tausend_trenner = '.';   
    }else{
        dez_trenner = '.';
        tausend_trenner = ',';
    }
    
    var str =  new String(float);  
    var tmp = str.split(".");
    var vorkomma = tmp[0];
    var nachkomma = tmp[1];
    
    //tausender
    var n = vorkomma;
    var a = [];
	while(n.length > 3){
		var nn = n.substr(n.length-3);
		a.unshift(nn);
		n = n.substr(0,n.length-3);
	}
	if(n.length > 0) { a.unshift(n); }
	var betrag = a.join(tausend_trenner);
    if(typeof(nachkomma) != 'undefined' && nachkomma!=''){
        betrag += dez_trenner + nachkomma;   
    }
    return betrag;
}


function get_setup(key){
    if( typeof(global_js_setup) == 'undefined' )return '';
    if( typeof(global_js_setup[key]) == 'undefined' )return '';
    return global_js_setup[key];
    
}

function runde(x, n) {
    if (n < 1 || n > 14) return false;
    var e = Math.pow(10, n);
    var k = (Math.round(x * e) / e).toString();
    if (k.indexOf('.') == -1) k += '.';
    k += e.toString().substring(1);
    return k.substring(0, k.indexOf('.') + n+1);
}

function toggle_zahlart(za_id)  {
    top.za_id = za_id;
    if (el('bankdaten_tabelle')) {
	if ((zahlart_kennung[za_id] != "Einzug") && (zahlart_kennung[za_id] != "Sofortueberweisung"))
	    el('bankdaten_tabelle').style.display = 'none';
        else
	    el('bankdaten_tabelle').style.display = 'inline';
    }
    if (el('kkdaten_tabelle')) {
	if ((zahlart_kennung[za_id] != "Kreditkarte") && (zahlart_kennung[za_id] != "CC-Bank"))
	    el('kkdaten_tabelle').style.display = 'none';
        else
	{
	    el('kkdaten_tabelle').style.display = 'inline';
	    if ((zahlart_namen[za_id].search(/visa/ig) >= 0) || ((zahlart_namen[za_id].search(/master/ig) >= 0) && (zahlart_namen[za_id].search(/card/ig) >= 0)))
	    {
		el('best_kknummer_block1').style.width = "40px";
		el('best_kknummer_block2').style.display = "inline";
		el('best_kknummer_block3').style.display = "inline";
		el('best_kknummer_block4').style.display = "inline";
	    }
	    else
	    {
		el('best_kknummer_block1').style.width = "175px";
		el('best_kknummer_block2').style.display = "none";
		el('best_kknummer_block3').style.display = "none";
		el('best_kknummer_block4').style.display = "none";
	    }
	}
    }

    //Zusatzinfos zur Zahlung:
    var zusatzInfoCont =  el('za_zusatzinfo');
    if(registeredZAInfo[zahlart_kennung[za_id]]){
          zusatzInfoCont.innerHTML =  registeredZAInfo[zahlart_kennung[za_id]];
    }else{
         zusatzInfoCont.innerHTML = '';
    }
}
function toggle_versandart(va_id) {
    for (i=0; i < zahlart_namen.length; i++) {
	if (va_id && zahlart_namen[i]) {
	    key = (100 * i) + Math.floor(va_id);
	    if (el('zahlart_'+i)) {
		if (zahl_versand_kombi[key] == true)
		    el('zahlart_'+i).style.display='inline';
		else
		    el('zahlart_'+i).style.display='none';
	    }
	}
    }
}

/*ermöglicht mehrfaches, voneinander unabhängiges Setzen von onload-Handlern */

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

/*wrapper um document.getElementById
    aufruf á la: el('preisanzeige').innerHTML='xxx'; */
function el(id){
    return document.getElementById(id);
}

function changePicQuicktime () {
    document.getElementById("quicktime").style.display = 'inline';
    document.getElementById("quicktime_icon").style.display = 'none';
    if( document.getElementById("flash"))
      document.getElementById("flash").style.display = 'none';
    if( document.getElementById("flash_icon"))
      document.getElementById("flash_icon").style.display = 'inline';
    if( document.getElementById("flashzoomer"))
      document.getElementById("flashzoomer").style.display = 'none';
    if( document.getElementById("flashzoomer_icon"))
      document.getElementById("flashzoomer_icon").style.display = 'inline';

    document.getElementById("hbildcontainer").style.display = 'none';
    if (document.getElementById("hbildsmall"))
      document.getElementById("hbildsmall").style.display = 'inline';
    if( document.getElementById("hauptbild_icon"))
      document.getElementById("hauptbild_icon").style.display = 'inline';
}

function changePicFlash () {
    document.getElementById("flash").style.display = 'inline';
    document.getElementById("flash_icon").style.display = 'none';
    if( document.getElementById("flashzoomer"))
      document.getElementById("flashzoomer").style.display = 'none';
    if( document.getElementById("flashzoomer_icon"))
      document.getElementById("flashzoomer_icon").style.display = 'inline';
    if( document.getElementById("quicktime"))
      document.getElementById("quicktime").style.display = 'none';
    if( document.getElementById("quicktime_icon"))
      document.getElementById("quicktime_icon").style.display = 'inline';

    document.getElementById("hbildcontainer").style.display = 'none';
    if (document.getElementById("hbildsmall"))
      document.getElementById("hbildsmall").style.display = 'inline';
    if( document.getElementById("hauptbild_icon"))
      document.getElementById("hauptbild_icon").style.display = 'inline';
}

function changePicFlashZoomer () {
    document.getElementById("flashzoomer").style.display = 'inline';
    document.getElementById("flashzoomer_icon").style.display = 'none';

    if( document.getElementById("quicktime"))
      document.getElementById("quicktime").style.display = 'none';
    if( document.getElementById("quicktime_icon"))
      document.getElementById("quicktime_icon").style.display = 'inline';
    if( document.getElementById("flash"))
      document.getElementById("flash").style.display = 'none';
    if( document.getElementById("flash_icon"))
      document.getElementById("flash_icon").style.display = 'inline';

    document.getElementById("hbildcontainer").style.display = 'none';
    if (document.getElementById("hbildsmall"))
      document.getElementById("hbildsmall").style.display = 'inline';
    if( document.getElementById("hauptbild_icon"))
      document.getElementById("hauptbild_icon").style.display = 'inline';
}

function open_newsletter(form){
  var email = form.email.value
  if(!email || email==form.email.defaultValue ) return false;
  f_url = "";
  f_name= "newsletter";
  f_props = "left=500,top=300,width=200,height=200,resizable=yes";
  f = open(f_url,f_name,f_props);
  f.focus();
  return true;
}


var bundeslaender_definition = {};
function toggleBLandDropdown(land_select,bland_sel_name){

    var sel_land = land_select.options[land_select.selectedIndex].value;

    //das JS-Array bundeslaender_definition muss auf der seite definiert sein
    var bundeslaender = bundeslaender_definition[sel_land];

    var bland_select =    el(bland_sel_name);
    //var bland_container = el(bland_sel_name + '_container');
    var bland_container = jQuery('#'+bland_sel_name + '_container');
    if(bundeslaender){
        //bland_container.style.display = 'table-row';
        bland_container.show();
        formLib_setOptions(bland_select,formLib_getOptionHashFromArray(bundeslaender));
    }else{
        //bland_container.style.display = 'none';
        bland_container.hide();
    }

}

function validate_email(e) { // Email Validation. Written by PerlScriptsJavaScripts.com
  ok = "1234567890qwertyuiop[]asdfghjklzxcvbnm.@-_QWERTYUIOPASDFGHJKLZXCVBNM";

  for(i=0; i < e.length ;i++){
    if(ok.indexOf(e.charAt(i))<0){ 
      return (false);
    }	
  } 

  if (document.images) {
    re = /(@.*@)|(\.\.)|(^\.)|(^@)|(@$)|(\.$)|(@\.)/;
    re_two = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,8}|[0-9]{1,3})(\]?)$/;
    if (!e.match(re) && e.match(re_two)) {
      return (-1);		
    } 
  }
}

function open_layer_view (url) {
    if (ajax_layer(url)) {
        _open_layer_view();
        return false;
    }
    return true;
}

function _open_layer_view(){
    el('black_overlay').style.display='inline';
    el('layer_view').style.display='inline';   
}

function close_layer_view () {
    el('black_overlay').style.display='none';
    el('layer_view').style.display='none';
    el('layer_view_container').innerHTML = '';
}

function ajax_layer (url){         
    url = url.replace(/lshop\.cgi/, "lshopAJAX.cgi");
    try{
        req = new XMLHttpRequest();
        req.open("GET", url, true);
    }
    catch (e){
        try{
            req = new ActiveXObject("Msxml2.XMLHTTP");
            req.open("GET", url, true);
        } 
        catch (e){
            try{
                req = new ActiveXObject("Microsoft.XMLHTTP");
                req.open("GET", url, true);
            } 
            catch (failed){
                req = null;
            }
        }  
    }
    if (req == null)
        return false;
    req.onreadystatechange = handle_ajax_layer;
    req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    req.send(null);
    return true;
}

function handle_ajax_layer () {
    switch(req.readyState) {
    case 4:
        if (req.status == 0)
            break;
        if(req.status!=200) {
            //            alert("Fehler:"+req.status); 
        } else {
            xml = req.responseXML;
            var html_code = xml.getElementsByTagName("html")[0].firstChild.nodeValue;
            var init_code = xml.getElementsByTagName("init")[0].firstChild.nodeValue;
            if (el('layer_view_container'))
                el('layer_view_container').innerHTML = html_code;
            if (init_code.length > 0)
                eval(init_code);
        }
        break;
    default:
        return false;
        break;     
    }
}

function vkr_toggle_land (id) {
    js_land = id;
}

function vkr_toggle_zahlart (id) {
    js_zahlart = id;
}

function vkr_toggle_versandart (id) {
    js_versandart = id;
}

function vk_rechner () {
    var alle_versandarten = new Array();
    var alle_zahlarten = new Array();
    for (i = 0; i < land_versandarten.length; i++) {
        if (land_versandarten[i]) {
            var temp_versandarten = land_versandarten[i].split(/\,/);
            for (j = 0; j < temp_versandarten.length; j++)
                alle_versandarten[temp_versandarten[j]] = temp_versandarten[j]; 
        }
    }        
    for (i = 0; i < land_zahlarten.length; i++) {
        if (land_zahlarten[i]) {
            var temp_zahlarten = land_zahlarten[i].split(/\,/);
            for (j = 0; j < temp_zahlarten.length; j++)
                alle_zahlarten[temp_zahlarten[j]] = temp_zahlarten[j]; 
        }
    }        
    
    var this_versandarten = land_versandarten[js_land].split(/\,/);
    var this_zahlarten = land_zahlarten[js_land].split(/\,/);
    for (i = 0; i < alle_versandarten.length; i++) {
        if (alle_versandarten[i]) {
            gefunden = false;
            for (j = 0; j < this_versandarten.length; j++) {
                if (alle_versandarten[i] == this_versandarten[j]) 
                    gefunden = true;
            }
            if (gefunden) {
                var key = (100 * Math.abs(js_zahlart)) + Math.abs(+alle_versandarten[i]);
                if (zahl_versand_kombi[key]) {
                    if (el('vkr_versandart_label_'+alle_versandarten[i]))
                        el('vkr_versandart_label_'+alle_versandarten[i]).style.color = 'black';
                } else {
                    if (el('vkr_versandart_label_'+alle_versandarten[i]))
                        el('vkr_versandart_label_'+alle_versandarten[i]).style.color = 'red';
                }
                if (el('vkr_versandart_radio_'+alle_versandarten[i]))
                    el('vkr_versandart_radio_'+alle_versandarten[i]).disabled = false;
            } else {
                if (el('vkr_versandart_label_'+alle_versandarten[i]))
                    el('vkr_versandart_label_'+alle_versandarten[i]).style.color = '#AAAAAA';
                if (el('vkr_versandart_radio_'+alle_versandarten[i]))
                    el('vkr_versandart_radio_'+alle_versandarten[i]).disabled = true;
            }
        }
    }
    for (i = 0; i < alle_zahlarten.length; i++) {
        if (alle_zahlarten[i]) {
            gefunden = false;
            for (j = 0; j < this_zahlarten.length; j++) {
                if (alle_zahlarten[i] == this_zahlarten[j])
                    gefunden = true;
            }
            if (gefunden) {
                var key = (100 * Math.abs(alle_zahlarten[i])) + Math.abs(+js_versandart);
                if (zahl_versand_kombi[key]) {
                    if (el('vkr_zahlart_label_'+alle_zahlarten[i]))
                        el('vkr_zahlart_label_'+alle_zahlarten[i]).style.color = 'black';
                } else {
                    if (el('vkr_zahlart_label_'+alle_zahlarten[i]))
                        el('vkr_zahlart_label_'+alle_zahlarten[i]).style.color = 'red';
                }
                if (el('vkr_zahlart_radio_'+alle_zahlarten[i]))
                    el('vkr_zahlart_radio_'+alle_zahlarten[i]).disabled = false;
            } else {
                if (el('vkr_zahlart_label_'+alle_zahlarten[i]))
                    el('vkr_zahlart_label_'+alle_zahlarten[i]).style.color = '#999999';
                if (el('vkr_zahlart_radio_'+alle_zahlarten[i]))
                    el('vkr_zahlart_radio_'+alle_zahlarten[i]).disabled = true;
            }
        }
    }
    var key = (100 * Math.abs(js_zahlart)) + Math.abs(js_versandart);
    var gesamt = '---';
    if ((el('vkr_zahlart_radio_'+js_zahlart).disabled == false) && (el('vkr_versandart_radio_'+js_versandart).disabled == false) && (zahl_versand_kombi[key])) {
        this_zahlungskosten = 1 * kosten_zahlart[js_zahlart];
        this_vkfrei = 1 * land_vk_frei[js_land];
        this_versandkosten = (1 * kosten_versandart[js_versandart]) + (1 * kosten_land[js_land]);
        if ((this_vkfrei > 0) && ((1 * warenwert) >= this_vkfrei))
            this_versandkosten = 0;
        el('js_zahlungskosten').innerHTML = waehrung+' '+format_price(this_zahlungskosten);
        if (this_vkfrei == 0) {
            if (el('js_vkfrei'))
                el('js_vkfrei').innerHTML = '---';
        } else {
            if (el('js_vkfrei'))
                el('js_vkfrei').innerHTML = waehrung+' '+format_price(this_vkfrei);
        }
        el('js_versandkosten').innerHTML = waehrung+' '+format_price(this_versandkosten);
        el('js_gesamt').innerHTML = waehrung+' '+format_price(this_zahlungskosten + this_versandkosten + (1 * warenwert));
    } else {
        el('js_zahlungskosten').innerHTML = '---';
        if (el('js_vkfrei'))
            el('js_vkfrei').innerHTML = '---';
        el('js_versandkosten').innerHTML = '---';
        el('js_gesamt').innerHTML = '---';
    }
}

function toggle_versand (id) {
    for (i = 0; i < versandarten.length; i++) {
        var box = el('boxinfo_versandart_'+versandarten[i]);
        if (box) {
            if (versandarten[i] == id)
                box.style.display = 'inline';
            else
                box.style.display = 'none';
        }
    }
    var erlaubte_zahlarten = zahlarten_kombi[id].split(/\,/);
    for (i = 0; i < zahlarten.length; i++) {
        var radio = el('best_zahlart_'+zahlarten[i]);
        var label = el('zahlart_label_'+zahlarten[i]);
        if (radio) {
            var erlaubt = false;
            for (j = 0; j < erlaubte_zahlarten.length; j++)
                if (zahlarten[i] == erlaubte_zahlarten[j])
                    erlaubt = true;
            if (erlaubt) {
                radio.disabled = false;
                if (label)
                    label.style.color = 'black';
                //                    label.style.fontWeight = 'bold';
            } else {
                radio.disabled = true;
                radio.checked = false;
                if (label)
                    label.style.color = '#888888';
                //                    label.style.fontWeight = 'normal';
            }
        }
        
    }    
}

function toggle_zahlung (id) {
    for (i = 0; i < zahlarten.length; i++) {
        var box = el('boxinfo_zahlart_'+zahlarten[i]);
        if (box) {
            if (zahlarten[i] == id)
                box.style.display = 'inline';
            else
                box.style.display = 'none';
        }
    }
    var checkbox = el('telecash_checkbox');
    if (checkbox) {
        if (zahlart_kennungen && (zahlart_kennungen[id] == 'telecashipg_Bankeinzug' || zahlart_kennungen[id] == 'Telecash_Bankeinzug'))
            checkbox.style.display = 'inline';
        else
            checkbox.style.display = 'none';
    }
    var checkbox2 = el('billpay_checkbox');
    if (checkbox2) {
        if (zahlart_kennungen && (zahlart_kennungen[id] == 'billpay'))
            checkbox2.style.display = 'inline';
        else
            checkbox2.style.display = 'none';
    }
}


function js_debug(data){
    var k;
    var str = '';
    for (k in data){
        str += k+':'+data[k]+"\n";   
    }
    alert(str);  
}  
