// shop functions meisterpianos

  // Konstanten:
  
  var scriptname = '';    // Name des Hauptskriptes z.B. 'index.php' oder '' = "meisterpianos.ch/shop/"
  var ajaxscriptpfad = '';
  
  var sema = 0;
  var hash = ''; //location.hash;
  var current_kat_id = 0;
  var current_kat_name = '';
  var current_suche = '';
  var current_page = 1;
  var current_sort = '';
  var lastmode = ''; // suche or kategorie
  
  function show_wait_icon() {
    $("#maincontent").html('<br><br><br><br><br><br><br><br><br><br><center><img src="grafiken/ajaxload.gif" border="0"></center>');
  }
  
  function change_url_to(params) {
    sema = 1;
    location.href=scriptname + ajaxscriptpfad + "#" + escape(params); //escape(params.replace(' ','%20'));
    hash = location.hash;
    sema = 0;
  }

  function lade_uebersicht(id,name,sort,page) {
    show_wait_icon();
    if(sort==null) {
	    sort='';
	    sortierer_reset();
    }
    if(page==null) page=1;
    $("#maincontent").load(ajaxscriptpfad+"ajax_uebersicht.php?kategorie_id="+id+"&sort="+sort+"&page="+page,'',
	      function (responseText, textStatus, XMLHttpRequest) { update_bestand_felder(); }
    );
    change_url_to('kategorie@'+name+'@'+id+'@'+sort+'@'+page);
    set_title(name);
    current_kat_id = id;
    current_kat_name = name;
    lastmode = 'kategorie';
    current_page = page;
    current_sort = sort;
    scrollTo(0,0);
  }
  
  function lade_uebersicht_id(id,name) {
	sortierer_reset();
    if ($("#maincontent").size()==0) {
      document.location.href='http://www.meisterpianos.ch/shop/#' + escape('kategorie@'+name+'@'+id);
    }
    show_wait_icon();
    $("#maincontent").load(ajaxscriptpfad+"ajax_uebersicht.php?kategorie_id="+id+"&sort=&page=1",'',
      function (responseText, textStatus, XMLHttpRequest) { update_bestand_felder(); }
    );
    change_url_to('kategorie@'+name+'@'+id);
    set_title(name);
    current_kat_id = id;
    current_kat_name = name;
    lastmode = 'kategorie';
    current_page = 1;
    current_sort = '';
    scrollTo(0,0);
  }

  function lade_detail(id,name) {
    show_wait_icon();
    if(name==null) name='';
    name = name.replace(/ |-/g, '_');
    $("#maincontent").load(ajaxscriptpfad+"ajax_detail.php?id="+id+"&name="+name);
    if (name=='') {
	  change_url_to('artikel@'+id);
    }
    else {
	  change_url_to(name);
    }
    scrollTo(0,0);
  }

  function suche_uebersicht(suche,page,sort) {
   show_wait_icon();
   if(page==null) page=1;
    if(sort==null) {
	    sort='';
	    sortierer_reset();
    }
   $("#maincontent").load(ajaxscriptpfad+"ajax_uebersicht.php?suche="+escape(suche)+  "&page=" + page + "&sort=" + sort,'',
	      function (responseText, textStatus, XMLHttpRequest) { update_bestand_felder(); }
   );
   change_url_to('suche@'+page+'@'+sort+'@'+suche);
   set_title('Suchergebnisse');
   current_suche = suche;
   current_page = page;
   lastmode = 'suche';
   current_sort = sort;
  }
  
  function reload_aktuelle_seite() {
      if (lastmode=='kategorie') {
        lade_uebersicht(current_kat_id, current_kat_name, current_sort, current_page);
      }
      else {
        suche_uebersicht(current_suche, current_page, current_sort);
      }  	  
  }
  
  function lade_edit(id) {
    // dummy function
  }
  
  function lade_admin(page) {
    // dummy function
  }
  
  function show_bestellung(id) {
    // dummy function	  
  }
  
  function lade_startseite() {
	  $("#maincontent").load('startseite.php');
	  $("#sortierdiv").hide();
  }
  
  function back_butten_check(param) {
    if (param.substr(0,9)=='warenkorb') {
	  lade_warenkorb_liste();
    }
    else if (param.substr(0,5)=='suche') {
	  params = param.split('@');
	  $("input[name=sucheingabe]").val(params[3]);
	  suche_uebersicht(params[3],params[1],params[2]);
    }
    else if (param.substr(0,9)=='kategorie') {
      params = param.split('@');
      if (params.length==5) {
        lade_uebersicht(params[2],params[1],params[3],params[4]);
      }
      else {
        lade_uebersicht_id(params[2],params[1]);
      }
    }
    else if (param.substr(0,7)=='artikel') {
      params = param.split('@');
      lade_detail(params[1]);
    }
    else if (param.substr(0,10)=='newarticle') {
      lade_edit(0);
    }
    else if (param.substr(0,4)=='edit') {
      params = param.split('@');
      lade_edit(params[1]);
    }
    else if (param.substr(0,5)=='admin') {
      params = param.split('@');
      lade_admin(params[1]);
    }
    else if (param.substr(0,14)=='showbestellung') {
      params = param.split('@');
      show_bestellung(params[1],params[2]);
    }
    else {
      lade_detail('',param);
    }    
  }

  function next_page() {
	  goto_page(parseInt(current_page)+1);
  }

  function prev_page() { 
	  goto_page(parseInt(current_page)-1);
  }  
  
  function goto_page(pagenum) {
      if (lastmode=='kategorie') {
        lade_uebersicht(current_kat_id, current_kat_name, current_sort, pagenum);
      }
      else {
        suche_uebersicht(current_suche, pagenum, current_sort);
      }
  }  
  

  function set_title(name) {
    $("#titeltext").text(name);
  }

  // Warenkorb Funktionen
  
  function zum_korb(produktid,nettopreis) {
   $("#warenkorb").load("ajax_warenkorb.php?produktid="+produktid+"&nettopreis="+nettopreis);
  }
  
  function lade_warenkorb_adresse() {
	var versandart = $("input:radio[name='versandart']:checked").val();
	var zahlungsart = $("input:radio[name='zahlungsart']:checked").val();
	var warenwert = $("#warendiv").html();
	var versandwert = $("#versanddiv").html();
	var gebuehrenwert = $("#gebuehrendiv").html();
	var rabattbetrag = $("#rabatt_total").html();
	var totalwert = $("#totaldiv").html();
	var zuschlag = $("#zuschlag").html();
	// Teste Sinn der Kombination von Versandart und Zahlungsart:
	if (versandart == 'Abholung' && zahlungsart == 'Nachnahme') {
	  alert ('Diese Kombination von Versandart und Zahlungsart ist leider nicht m�glich. Bitte w�hlen Sie eine andere Zahlungsart bei Abholung.');	
	}
	else if (zahlungsart == 'Abholung' && versandart != 'Abholung') {
	  alert ('Diese Kombination von Versandart und Zahlungsart ist leider nicht m�glich. Bitte w�hlen Sie die Versandart "Abholung", falls Sie eine Abholung w�nschen.');	
	}
	else {
      show_wait_icon();
      $("#maincontent").load("ajax_warenkorb_adresse.php?versandart="+versandart+"&zahlungsart="+zahlungsart+
        "&w="+warenwert+"&v="+versandwert+"&g="+gebuehrenwert+"&t="+totalwert+"&r="+rabattbetrag+"&z="+zuschlag);
      change_url_to("warenkorb2");
    }
  }
  
  function lade_warenkorb_liste() {
	show_wait_icon();
	$('#maincontent').load('ajax_warenkorbliste.php');
	change_url_to("warenkorb1");
  }

  function sortierer_reset() {
      $("#sortierer img").each(function(){
	    $(this).attr('src',$(this).attr('reset'))
	  });
      $('#defaultsortimg').attr('src',$('#defaultsortimg').attr('select'));  
  }
  
  // Hauptfunktionen
  
  setInterval(function()
  {
    if (location.hash != hash && sema == 0)
    {
        //alert("Changed from " + hash + " to " + location.hash);
        //$("#maincontent").load("ajax_back.php?text="+location.hash.substring(1));
        if (location.hash!='' && location.hash!='#') {
          back_butten_check(location.hash.substring(1));
        }
        else {
	      lade_startseite();   
        }
        hash = location.hash;
    }
  }, 300);
  

  $(document).ready(function() {
    $("#warenkorb").load("ajax_warenkorb.php");

    $("#menupunkt A").click(function () {
	    
	   // hide previously aufgeklappt:
	   if (! $(this).parent().hasClass('menustyle2')) { 
	   $(this).parent().parent().children().each(function(){
		  if ($(this).hasClass('menustyle2')) {
			  if (! $(this).hasClass('unsichtbar')) {
				$(this).toggleClass('unsichtbar'); 
			  }
		  } 
	   });
   	   }
	   
	   sub = "." + $(this).parent().attr('submenus');
       $(sub).toggleClass('unsichtbar').each(function(){
	     subsub = $(this).attr('submenus');
	     if ($(this).hasClass('unsichtbar')) {
		     $('.'+subsub).addClass('unsichtbar');
	     }
	   });
    });

    $("#sortierer img").click(function () {
      $("#sortierer img").each(function(){
	    $(this).attr('src',$(this).attr('reset'))
	  });
      $(this).attr('src',$(this).attr('select'));
      show_wait_icon();
      if (lastmode=='kategorie') {
        lade_uebersicht(current_kat_id, current_kat_name, $(this).attr('sort'));
      }
      else {
        suche_uebersicht(current_suche, current_page, $(this).attr('sort'));
      }
    });
    
    $("input[name=sucheingabe]").keyup(function(e) {
	  if (e.keyCode == 13) {
	    //$(this).blur();
	    $(this).change();
	  }
    });

    $("input[name=sucheingabe]").change(function () {
      $("#maincontent").html('<br>');
      suche_uebersicht($(this).val(),1);
    });
    
  });



