jQuery.extend({shopModel:function(){var bestelling=[];var gegevens=[];var me=this;var listeners=new Array();me.isMinimumBestelling=function(){var heeftOntbijt=false;var heeftLevering=false;var ontbijten=$.shopItems.ontbijten;var bestellingKeys=[];for(var id in bestelling)bestellingKeys.push(Number(id));for(var i=0,ilen=ontbijten.length;i<ilen;i++)
{if($.inArray(ontbijten[i]["id"],bestellingKeys)>=0){heeftOntbijt=true;break}}
if(gegevens["levering_postcode"]!=undefined&&gegevens["levering_postcode"]!=""&&gegevens["levering_gemeente"]!=undefined&&gegevens["levering_gemeente"]!="")heeftLevering=true;if(heeftLevering&&heeftOntbijt){return true;}
return false;}
me.bestellingCompleet=function(){var heeftLevering=false;var heeftFacturatie=false;var heeftDatum=false;var heeftBetalingswijze=false;if(gegevens["levering_naam"]!=undefined&&gegevens["levering_naam"]!=""&&gegevens["levering_straat"]!=undefined&&gegevens["levering_straat"]!=""&&gegevens["levering_postcode"]!=undefined&&gegevens["levering_postcode"]!=""&&gegevens["levering_gemeente"]!=undefined&&gegevens["levering_gemeente"]!=""&&gegevens["levering_telefoon"]!=undefined&&gegevens["levering_telefoon"]!="")heeftLevering=true;if(gegevens["facturatie_naam"]!=undefined&&gegevens["facturatie_naam"]!=""&&gegevens["facturatie_straat"]!=undefined&&gegevens["facturatie_straat"]!=""&&gegevens["facturatie_postcode"]!=undefined&&gegevens["facturatie_postcode"]!=""&&gegevens["facturatie_gemeente"]!=undefined&&gegevens["facturatie_gemeente"]!=""&&gegevens["facturatie_telefoon"]!=undefined&&gegevens["facturatie_telefoon"]!=""&&gegevens["facturatie_email"]!=undefined&&gegevens["facturatie_email"]!=""&&isEmail(gegevens["facturatie_email"]))heeftFacturatie=true;if(gegevens["levering_datum"]!=undefined&&gegevens["levering_datum"]!=""&&gegevens["levering_tijdstip"]!=undefined&&gegevens["levering_tijdstip"]!=""&&gegevens["levering_tijdstip"]!="--")heeftDatum=true;if(gegevens["betalingswijze"]!=undefined&&gegevens["betalingswijze"]!="")heeftBetalingswijze=true;if(heeftLevering&&heeftFacturatie&&heeftDatum&&heeftBetalingswijze)return true;return false;}
me.wisBestelling=function(){bestelling=[];gegevens=[];}
me.wijzigItem=function(ID,data){if(!isNaN(ID)){if(data>0){bestelling[ID]=Number(data);}else{delete(bestelling[ID]);}}else{if(data!=""){gegevens[ID]=data;}else{delete(gegevens[ID]);}}
me.notify("bestellingGewijzigd",berekenTotaal());}
me.totaal=function(){return berekenTotaal().toString().replace(/\./g,',');}
me.maakOverzicht=function()
{var overzicht="";overzicht+="<p><strong>Bestelling</strong><br />";overzicht+="Ontbijt(en) voor een totaal van &euro; "+berekenTotaal()+"</p>";overzicht+="<p><strong>Levering</strong><br />";if(gegevens["levering_naam"]==undefined||gegevens["levering_straat"]==undefined){overzicht+="Gelieve het leveringsadres volledig in te vullen.";}else if(gegevens["levering_datum_weergave"]==undefined||gegevens["levering_tijdstip"]==undefined||gegevens["levering_tijdstip"]=="--"){overzicht+="Gelieve de datum & het tijdstip van levering te selecteren.";}else{overzicht+="Thuislevering bij '"+gegevens["levering_naam"]+"' op "+gegevens["levering_datum_weergave"]+" tussen "+gegevens["levering_tijdstip"]+" op het adres:<br />"+gegevens["levering_straat"]+", "+gegevens["levering_postcode"]+" "+gegevens["levering_gemeente"]+"</p>";}
overzicht+="<p><strong>Facturatie</strong><br />";if(gegevens["facturatie_naam"]==undefined||gegevens["facturatie_straat"]==undefined||gegevens["facturatie_postcode"]==undefined||gegevens["facturatie_gemeente"]==undefined){overzicht+="Gelieve de facturatiegegevens volledig in te vullen."+"</p>";}else{overzicht+="Facturatie op naam van '"+gegevens["facturatie_naam"]+"' op het adres:<br />"+gegevens["facturatie_straat"]+", "+gegevens["facturatie_postcode"]+" "+gegevens["facturatie_gemeente"]+"</p>";}
return overzicht;}
me.verstuurBestelling=function(){var data='';for(var id in gegevens){if(id!=""){if(data.length>0)data+=', ';switch(id){case"levering_datum":data+='"levering_dag": '+gegevens[id].getDate()+', "levering_maand": '+(gegevens[id].getMonth()+1)+', "levering_jaar": '+gegevens[id].getFullYear();break;default:data+='"'+id+'": "'+gegevens[id]+'"';}}}
for(var id in bestelling){if(id!=""){if(data.length>0)data+=', ';data+='"item_'+id+'": "'+bestelling[id]+'"';}}
me.notify("bestellingVersturenBezig");$.ajax({url:site_url+"index.php/scripts/index",dataType:'json',contentType:'application/json',data:'{'+data+'}',type:'POST',success:function(json){if(json.result==0){me.notify("bestellingVerstuurd");}}});}
berekenTotaal=function(){var totaal=0;var aantal;for(var bestelItem in bestelling)
{var ontbijten=$.shopItems.ontbijten;for(var i=0,ilen=ontbijten.length;i<ilen;i++)
{if(ontbijten[i]["id"]==bestelItem)
{aantal=bestelling[bestelItem];prijs_enkel=(ontbijten[i]["price_single"]=="")?0:parseFloat(ontbijten[i]["price_single"].replace(/,/g,'.'));prijs_dubbel=(ontbijten[i]["price_double"]=="")?0:parseFloat(ontbijten[i]["price_double"].replace(/,/g,'.'));if(aantal==1){totaal+=prijs_enkel;}else if(aantal==2){if(prijs_dubbel>0){totaal+=prijs_dubbel;}else{totaal+=(2*prijs_enkel);}}else{if(prijs_enkel>0&&prijs_dubbel>0)
{var prijsExtra=(prijs_dubbel-prijs_enkel);totaal+=(prijs_enkel+((aantal-1)*prijsExtra));}else{totaal+=(aantal*prijs_enkel);}}}}
var supplementen=$.shopItems.supplementen;for(var i=0,ilen=supplementen.length;i<ilen;i++)
{if(supplementen[i]["id"]==bestelItem)
{aantal=bestelling[bestelItem];prijs=(supplementen[i]["price"]=="")?0:parseFloat(supplementen[i]["price"].replace(/,/g,'.'));totaal+=(aantal*prijs);}}}
for(var info in gegevens)
{if(info=="leveren")
{if(gegevens[info]==true)totaal+=(gegevens["forfait"]!=undefined)?gegevens["forfait"]:0;}}
return totaal;}
isEmail=function(email){var filter=/^([a-zA-Z0-9_.-])+@([a-zA-Z0-9_.-])+\.([a-zA-Z])+([a-zA-Z])+/;if(!filter.test(email)){return false;}
return true;}
this.addListener=function(list){listeners.push(list);}
me.notify=function(type){var myargs=arguments;$.each(listeners,function(i){if(myargs.length==2){if(typeof(listeners[i][type])=="function")listeners[i][type](myargs[1]);}else{if(typeof(listeners[i][type])=="function")listeners[i][type]();}});}},shopModelListener:function(list){if(!list)list={};return $.extend({bestellingGewijzigd:function(){},emailNietGeldig:function(){},bestellingVerstuurd:function(){},bestellingVersturenBezig:function(){},loadBegin:function(){},loadFinish:function(){},loadItem:function(){},loadFail:function(){}},list);}});;jQuery.extend({shopView:function(){var me=this;var listeners=new Array();var $logo=$(".logo");var $fotos=$(".photo");var $shop=$(".shop");var $ontbijten=$("ul.ontbijten");var $supplementen=$("ul.supplementen");var $ontbijt_aantallen=$("select",$ontbijten);var $supplement_aantallen=$("select",$supplementen);var $gemeente=$("#gemeente");var $reset_gemeente=$("#reset-gemeente");var $totaal=$("span.price");var $forfait=$("#forfait");var $levering_boodschap=$("#levering-boodschap");var $levering_adres_form=$("#levering-adres-form");var $levering_adres_ophalen=$("#levering-adres-ophalen");var $leveringsdatum=$("#leveringsdatum");var $leveringstijdstip=$("#leveringstijdstip");var $facturatie_als_levering=$("#facturatie-als-levering");var $bevestiging_info=$("#bevestiging-overzicht");var $bevestiging_betaling_info=$("#bevestiging-betaling-info");var $bestel=$("#bestel");var $dialoogBestel=$("#bestel-dialoog-bestellen");var $dialoogCancel=$("#bestel-dialoog-cancel");var $bestelling_leegmaken=$("#bestelling_leegmaken");var $order=$("#order");var $screen=$(".screen");var $didyouknow=$("#didyouknow");var $stepPrev=$("#bestel-dialoog-vorige");var $stepNext=$("#bestel-dialoog-volgende");var isIE=($.browser.msie);var $nav=$(".nav-ul");var levering_velden=[];levering_velden["levering-naam"]={id:"levering-naam",required:true,enabled:true,linked_id:"facturatie-naam",key:"levering_naam"};levering_velden["levering-straat"]={id:"levering-straat",required:true,enabled:true,linked_id:"facturatie-straat",key:"levering_straat"};levering_velden["levering-postcode"]={id:"levering-postcode",required:true,enabled:false,linked_id:"facturatie-postcode"};levering_velden["levering-gemeente"]={id:"levering-gemeente",required:true,enabled:false,linked_id:"facturatie-gemeente"};levering_velden["levering-telefoon"]={id:"levering-telefoon",required:true,enabled:true,linked_id:"facturatie-telefoon",key:"levering_telefoon"};var facturatie_velden=[];facturatie_velden["facturatie-naam"]={id:"facturatie-naam",required:true,enabled:true,key:"facturatie_naam"};facturatie_velden["facturatie-straat"]={id:"facturatie-straat",required:true,enabled:true,key:"facturatie_straat"};facturatie_velden["facturatie-postcode"]={id:"facturatie-postcode",required:true,enabled:true,key:"facturatie_postcode"};facturatie_velden["facturatie-gemeente"]={id:"facturatie-gemeente",required:true,enabled:true,key:"facturatie_gemeente"};facturatie_velden["facturatie-telefoon"]={id:"facturatie-telefoon",required:true,enabled:true,key:"facturatie_telefoon"};facturatie_velden["facturatie-btw"]={id:"facturatie-btw",required:false,enabled:true,key:"facturatie_btw"};facturatie_velden["facturatie-email"]={id:"facturatie-email",required:true,enabled:true,key:"facturatie_email"};$logo.html('<a href="'+site_url+'"><img src="'+site_url+'images/site/logo_lepari.jpg" width="276" height="142" border="0" /></a>');$("li:first .nav-description",$nav).animate({height:"toggle"},400);$("li:first",$nav).addClass("active");$("li:first h2",$nav).addClass("active");$fotos.show();currOntbijtID=$("li:first",$nav).attr("id").split("-")[1];$("li",$nav).bind('click',function(e){var $target=$(e.target);var $li=($target.is("li"))?$target:$target.parents("li");var id=$li.attr("id").split("-")[1];me.notify("ontbijtGeklikt",id);});$(".nav-center h1").remove();$("li:first",$didyouknow).show();$("li a.next",$didyouknow).bind('click',function(e){var $curr=$(e.target).parents("li");var $next;if($("li",$didyouknow).index($curr)<($("li",$didyouknow).size()-1)){$next=$curr.next();}else{$next=$("li:first",$didyouknow);}
$curr.hide();$next.show();});$("li a.prev",$didyouknow).bind('click',function(e){var $curr=$(e.target).parents("li");var $prev;if($("li",$didyouknow).index($curr)>0){$prev=$curr.prev();}else{$prev=$("li:last",$didyouknow);}
$curr.hide();$prev.show();});$bestel.bind('click',function(){me.notify("bestellenGeklikt");});var acc_options={fillSpace:true};if($.browser.msie){acc_options=$.extend(acc_options,{autoHeight:false,animated:false});}
$shop.accordion(acc_options).bind('accordionchange',function(event,ui){$(".ui-accordion-content").scrollTop(0);Cufon.refresh('.shop h3 a');});Cufon.replace('.shop h3 a');Cufon.replace('span.name a, span.item-title, .nav-title h2, #didyouknow h3',{letterSpacing:'-0.1em',color:'#66604b'});Cufon.replace('.nav-title h2.active, #didyouknow h2, #dialoogWachten h3, #dialoogVerstuurd h3',{letterSpacing:'-0.1em',color:'#6c270c'});$ontbijt_aantallen.val(0).bind('change',function(e){var $this=$(e.target);var aantal=Number($("option:selected",$this).attr("value"));var ontbijtID=Number($this.attr("name").split("-")[1]);me.notify("ontbijtAantal",{aantal:aantal,ID:ontbijtID});me.checkCombinatieOntbijten();me.notify("ontbijtGeklikt",ontbijtID);me.notify("updateBestelStatus");});$("a.ontbijt-link").bind('click',function(e){var $this;if($(e.target).is("a")){$this=$(e.target);}else{$this=$(e.target).parents("a");}
var id=$this.attr("ontbijt_id");me.notify("ontbijtGeklikt",id);return false;});$supplement_aantallen.val(0).bind('change',function(e){var $this=$(e.target);var aantal=Number($("option:selected",$this).attr("value"));var suppID=Number($this.attr("name").split("-")[1]);me.notify("supplementAantal",{aantal:aantal,ID:suppID});});$bestelling_leegmaken.bind('click',function(){me.bestellingWissen();});$("#gemeente").autocomplete($.shopCities.gemeentes,{minChars:1,formatItem:function(row,i,max){return row.gemeente;},formatMatch:function(row,i,max){return row.gemeente;},formatResult:function(row){return row.gemeente;},matchContains:true});$("#gemeente").result(function(event,data,formatted){if(data){var forfait=parseFloat(data.forfait.replace(/,/g,'.'));if(forfait==0){$levering_boodschap.html("Gratis levering");}else{$levering_boodschap.html("Levering forfait: &euro; "+data.forfait);}
$reset_gemeente.removeAttr("disabled");$gemeente.attr("disabled","disabled");$forfait.val(data.forfait);$("#levering-postcode").attr("value",data.postcode).trigger('change');$("#levering-gemeente").attr("value",data.gemeente_naam).trigger('change');me.notify("gemeenteGewijzigd",{forfait:forfait,postcode:data.postcode,gemeente:data.gemeente_naam});me.notify("leveringGewijzigd",true);me.notify("updateBestelStatus");}});$reset_gemeente.bind('click',function(){$gemeente.val("");$reset_gemeente.attr("disabled","disabled");$levering_boodschap.html("(vul gemeente of postcode in)");$gemeente.removeAttr("disabled");me.notify("gemeenteGewijzigd",{forfait:parseFloat("0"),postcode:"",gemeente:""});me.notify("updateBestelStatus");});$bestelling_leegmaken.removeAttr("disabled");$bestel.attr("disabled","disabled");$order.tabs({select:function(event,ui){me.notify("tabGeklikt",(ui.index+1));if(ui.index==2)me.notify("bevestigingsTabGeklikt");},show:function(event,ui){Cufon.replace('ul.ui-tabs-nav li.ui-state-default a',{color:'#d5d2c9'});Cufon.replace('ul.ui-tabs-nav li.ui-state-active a',{color:'#732413'});}});$dialoogBestel.bind('click',function(e){me.notify("dialoogBestellenGeklikt");$(e.target).attr("disabled","disabled");});$dialoogCancel.removeAttr("disabled").bind('click',function(e){$order.dialog("destroy");});$stepPrev.bind('click',function(){me.notify("prevStep");});$stepNext.bind('click',function(){me.notify("nextStep");});$leveringsdatum.datepicker({dateFormat:'DD d MM yy',constrainInput:true,minDate:+1,maxDate:'+36m',beforeShowDay:isLeveringsdag,altField:'#leveringsdatum-show',altFormat:'DD, d MM yy',dayNames:['Zondag','Maandag','Dinsdag','Woensdag','Donderdag','Vrijdag','Zaterdag'],dayNamesMin:['Zo','Ma','Di','Wo','Do','Vr','Za'],dayNamesShort:['Zon','Maa','Din','Woe','Don','Vri','Zat'],monthNames:['Januari','Februari','Maart','April','Mei','Juni','Juli','Augustus','September','Oktober','November','December'],monthNamesShort:['Jan','Feb','Maa','Apr','Mei','Jun','Jul','Aug','Sep','Okt','Nov','Dec'],onSelect:function(date,inst){var theDate=new Date(Date.parse($leveringsdatum.datepicker('getDate')));updateLeveringstijden(isFeestdag(theDate)[0]);me.notify("datumGewijzigd",{datum:theDate,datum_weergave:date});}}).datepicker("setDate",null);$facturatie_als_levering.bind('click',function(e){var $this=$(e.target);if($this.is(":checked")===true)
{for(id in levering_velden)$("#"+id).trigger('change');for(id in levering_velden)$("#"+levering_velden[id].linked_id).attr("disabled","disabled");}else{for(id in levering_velden)$("#"+levering_velden[id].linked_id).attr("value","").removeAttr("disabled");}
for(id in facturatie_velden)$("#"+id).trigger('change');});$leveringstijdstip.bind('change',function(e){var data={};var $this=$(e.target);var uur=$("option:selected",$this).attr("value");data["tijdstip"]=uur;me.notify("datumGewijzigd",data);});for(id in levering_velden)
{$("#"+id).bind('change',function(e){var $this=$(e.target);var id=$this.attr("id");if($facturatie_als_levering.is(":checked"))
{var linked_id=levering_velden[id].linked_id;$("#"+linked_id).attr("value",$this.attr("value")).trigger('change');}
if(levering_velden[id].key!=undefined){var data={};data[levering_velden[id].key]=$this.val();me.notify("adresGewijzigd",data);}});if(!levering_velden[id].enabled)$("#"+id).attr("disabled","disabled");}
for(id in facturatie_velden)
{$("#"+id).bind('change',function(e){var $this=$(e.target);var id=$this.attr("id");if(facturatie_velden[id].key!=undefined){var data={};data[facturatie_velden[id].key]=$this.val();me.notify("adresGewijzigd",data);}});}
$("input[name='bevestiging-betaling']:radio").bind('click',function(e){var $this=$(e.target);me.notify("betalingswijzeGewijzigd",$this.val());});$("#bevestiging-opmerkingen").bind('change',function(e){var data={};data["opmerkingen"]=$(e.target).val();me.notify("bevestigingGewijzigd",data);});$("#bevestiging-vanwege").bind('change',function(e){var data={};data["vanwege"]=$(e.target).attr("value");me.notify("bevestigingGewijzigd",data);});$("#bevestiging-gelegenheid").bind('change',function(e){var data={};data["gelegenheid"]=$(e.target).attr("value");me.notify("bevestigingGewijzigd",data);});$("#bevestiging-bron").bind('change',function(e){var data=[];data["bron"]=$(e.target).attr("value");me.notify("bevestigingGewijzigd",data);});clearFields(true);$(window).resize(function(){var $doc=$(window);var $body=$("body");var doc_width=$doc.width();var doc_height=$doc.height();if(doc_width<1024||doc_height<566){if($body.css("overflow")!="scroll")$body.css("overflow","scroll");}else{if($body.css("overflow")!="hidden")$body.css("overflow","hidden");}}).trigger('resize');me.bestellingWissen=function()
{$reset_gemeente.trigger('click');me.wisOntbijten();me.wisSupplementen();me.wisLevering();me.totaal(0);me.notify("wisBestelling");me.checkCombinatieOntbijten();me.notify("updateBestelStatus");}
me.bestellenDialoog=function()
{clearFields(false);$levering_adres_form.show();$levering_adres_ophalen.hide();$bevestiging_betaling_info.show();$facturatie_als_levering.parents("p").css("display","block");$bevestiging_betaling_info.css("display","inline");$order.tabs("select",0);$order.dialog({width:780,resizable:false,modal:true,open:function(event,ui){$("#levering, #facturatie, #bevestiging").addClass("ui-corner-top").removeClass("ui-corner-bottom");$(".ui-dialog-titlebar").remove();$("a.ui-dialog-titlebar-close").css("display","none");Cufon.replace('ul.ui-tabs-nav li.ui-state-default a',{color:'#d5d2c9'});Cufon.replace('ul.ui-tabs-nav li.ui-state-active a, #order h3, #order h4',{color:'#732413'});}});me.notify("adresGewijzigd",{});}
me.bestellenDialoogSluiten=function(){$dialoogCancel.trigger('click');}
me.dialoogBestelStatus=function(status){if($dialoogBestel){if(status===true){$dialoogBestel.removeAttr("disabled").removeClass("ui-state-disabled");}else{$dialoogBestel.attr("disabled","disabled").addClass("ui-state-disabled");}}}
me.emailStatus=function(status){if(status===true){$("#facturatie_email").addClass("required");}else{$("#facturatie_email").removeClass("required");}}
me.wisOntbijten=function()
{for(var i=0,ilen=$ontbijt_aantallen.size();i<ilen;i++)
{$ontbijt_aantallen.eq(i).val("0");}}
me.wisSupplementen=function()
{for(var i=0,ilen=$supplement_aantallen.size();i<ilen;i++)
{$supplement_aantallen.eq(i).val("0");}}
me.wisLevering=function()
{$gemeente.val("");}
me.totaal=function(bedrag)
{$totaal.html(bedrag.toString().replace(/\./g,','));}
me.maakOverzicht=function(overzicht)
{$bevestiging_info.html($(overzicht));}
me.zetBestelStatus=function(status)
{if(status===true){$bestel.removeAttr("disabled");}else{$bestel.attr("disabled","disabled");}}
me.zetDialoogBestelStatus=function(status)
{if(status===true){$dialoogBestel.removeAttr("disabled");}else{$dialoogBestel.attr("disabled","disabled");}}
me.checkCombinatieOntbijten=function()
{var combinatieMogelijk=false;for(var i=0,ilen=$ontbijt_aantallen.size();i<ilen;i++)
{if(!$ontbijt_aantallen.eq(i).hasClass("enkel-gecombineerd")){if(Number($ontbijt_aantallen.eq(i).val())>0){combinatieMogelijk=true;break;}}}
if(combinatieMogelijk)
{$("select.enkel-gecombineerd").removeAttr("disabled");}else{$("select.enkel-gecombineerd").each(function(n){var $this=$(this);var ontbijtID=Number($this.attr("name").split("-")[1]);me.notify("ontbijtAantal",{aantal:0,ID:ontbijtID});$this.val("0");}).attr("disabled","disabled");}}
me.highlightOntbijt=function(id){var $li=$("#nav-"+id);var $desc=$li.find(".nav-description")
var $title=$li.find(".nav-title h2");var cat_id=Number($li.attr("cat"));if(id!=currOntbijtID)
{currOntbijtID=id;$("li.active .nav-description",$nav).each(function(n){$this=$(this);if(!isIE){$this.animate({height:"toggle"},400);}else{$this.animate({height:"toggle"},0);}
$this.parent().removeClass("active");$this.parent().find(".nav-title h2").removeClass("active");});if(!isIE){$desc.animate({height:"toggle"},400);}else{$desc.animate({height:"toggle"},0);}
$li.addClass("active");$title.addClass("active");Cufon.replace('.nav-title h2',{letterSpacing:'-0.1em',color:'#66604b'});Cufon.replace('.nav-title h2.active',{letterSpacing:'-0.1em',color:'#6c270c'});if(cat_id!=6){var $photo=$("#photo-"+id);var $photos=$(".photo-container");var index=$("ul li",$photos).index($photo);var $ontbijten=$(".breakfast-photos");if(!isIE)
{$ontbijten.animate({opacity:0},400,function(){$screen.animate({top:"25px"},400,function(){$photos.css("top",(0-(index*274)));$screen.animate({top:"-210px"},400,function(){$ontbijten.css("top",-(index*240)).animate({opacity:1},400);});});});}else{$photos.css("top",(0-(index*274)));$ontbijten.css("top",-(index*240));}}}}
me.toonDialoog=function(type){var dialogOptions={width:300,resizable:false,modal:true,zIndex:9000};switch(type){case"wachten":dialogOptions=$.extend(dialogOptions,{open:function(event,ui){$(".ui-dialog-titlebar").remove();}});$("#dialoogWachten").dialog(dialogOptions);break;case"verstuurd":dialogOptions=$.extend(dialogOptions,{open:function(event,ui){$(".ui-dialog-titlebar").remove();},buttons:{"OK":function(){$(this).dialog("destroy");}}});$("#dialoogVerstuurd").dialog(dialogOptions);break;}}
me.verbergDialoog=function(type){switch(type){case"wachten":$("#dialoogWachten").dialog("destroy");break;}}
me.updateStepButtons=function(index){switch(index){case 1:$stepPrev.attr("disabled","disabled");$stepNext.removeAttr("disabled");break;case 2:$stepPrev.removeAttr("disabled");$stepNext.removeAttr("disabled");break;case 3:$stepPrev.removeAttr("disabled");$stepNext.attr("disabled","disabled");break;}}
me.nextStep=function(){var currIndex=$order.tabs("option","selected");if(currIndex<2)$order.tabs("select",(currIndex+1));}
me.prevStep=function(){var currIndex=$order.tabs("option","selected");if(currIndex>0)$order.tabs("select",(currIndex-1));}
function clearFields(clearAll){for(var id in levering_velden){if(!clearAll){if(levering_velden[id].enabled)$("#"+id).val("");}else{$("#"+id).val("");}}
for(var id in facturatie_velden){if(!clearAll){if(id!="facturatie-postcode"&&id!="facturatie-gemeente")$("#"+id).val("");}else{$("#"+id).val("");}}
$("#bevestiging-opmerkingen").val("");$("#bevestiging-vanwege").val("");$("#bevestiging-gelegenheid").val("");$("input[name='bevestiging-betaling']:checked").removeAttr("checked");}
function isFeestdag(date){var m=date.getMonth(),d=date.getDate(),y=date.getFullYear();for(i=0;i<feestdagen_vast.length;i++){if($.inArray((m+1)+'-'+d+'-'+y,feestdagen_vast)!=-1){return[true];}}
for(i=0;i<feestdagen_herhalend.length;i++){if($.inArray((m+1)+'-'+d,feestdagen_herhalend)!=-1){return[true];}}
return[false];}
function isLeveringsdag(date){return($.inArray(date.getDay(),leveringsdagen)!=-1||isFeestdag(date)[0])?[true]:[false];}
function updateLeveringstijden(neemFeestdagTijden){var tijden;if(!neemFeestdagTijden){tijden=["--","06:30 - 07:00","07:00 - 07:30","07:30 - 08:00","08:00 - 08:30","08:30 - 09:00","09:00 - 09:30","09:30 - 10:00","10:00 - 10:30","10:30 - 11:00","11:00 - 11:30","11:30 - 12:00"];$("span.comment",$("#levering-datum")).html("");}else{tijden=["--","06:00 - 07:00","07:00 - 08:00","08:00 - 09:00","09:00 - 10:00","10:00 - 11:00","11:00 - 12:00"];$("span.comment",$("#levering-datum")).html("(Is een feestdag. Speling van 1 uur)");}
$leveringstijdstip.removeAttr("disabled").html("");for(var i=0,ilen=tijden.length;i<ilen;i++)
{$('<option value="'+tijden[i]+'">'+tijden[i]+'</option>').appendTo($leveringstijdstip);}
$leveringstijdstip.trigger("change");}
me.updateStepButtons(1);me.addListener=function(list){listeners.push(list);}
me.notify=function(type){var myargs=arguments;$.each(listeners,function(i){if(myargs.length==2){if(typeof(listeners[i][type])=="function")listeners[i][type](myargs[1]);}else if(myargs.length==3){if(typeof(listeners[i][type])=="function")listeners[i][type](myargs[1],myargs[2]);}else{if(typeof(listeners[i][type])=="function")listeners[i][type]();}});}},shopViewListener:function(list){if(!list)list={};return $.extend({wisBestelling:function(){},tabGeklikt:function(){},prevStep:function(){},nextStep:function(){},bestellenGeklikt:function(){},bevestigingsTabGeklikt:function(){},ontbijtAantal:function(){},leveringGewijzigd:function(){},supplementAantal:function(){},gemeenteGewijzigd:function(){},adresGewijzigd:function(){},ontbijtGeklikt:function(){},betalingswijzeGewijzigd:function(){}},list);}});jQuery.extend({shopControl:function(model,view){var vlist=$.shopViewListener({wisBestelling:function(){model.wisBestelling();},bestellenGeklikt:function(){view.bestellenDialoog();},bevestigingsTabGeklikt:function(){view.maakOverzicht(model.maakOverzicht());},ontbijtAantal:function(gegevens){model.wijzigItem(gegevens.ID,gegevens.aantal);},supplementAantal:function(gegevens){model.wijzigItem(gegevens.ID,gegevens.aantal)},leveringGewijzigd:function(leveren){model.wijzigItem("leveren",leveren);},gemeenteGewijzigd:function(data){model.wijzigItem("forfait",data.forfait);model.wijzigItem("levering_postcode",data.postcode);model.wijzigItem("levering_gemeente",data.gemeente);},adresGewijzigd:function(data){for(var info in data)model.wijzigItem(info,data[info]);view.emailStatus(true);view.dialoogBestelStatus(model.bestellingCompleet());},datumGewijzigd:function(data){if(data.datum)model.wijzigItem("levering_datum",data.datum);if(data.datum_weergave)model.wijzigItem("levering_datum_weergave",data.datum_weergave);if(data.tijdstip)model.wijzigItem("levering_tijdstip",data.tijdstip);view.dialoogBestelStatus(model.bestellingCompleet());},betalingswijzeGewijzigd:function(data){model.wijzigItem("betalingswijze",data);view.dialoogBestelStatus(model.bestellingCompleet());},bevestigingGewijzigd:function(data){if(data.opmerkingen!=undefined){model.wijzigItem("opmerkingen",data.opmerkingen);}
if(data.vanwege!=undefined){model.wijzigItem("vanwege",data.vanwege);}
if(data.gelegenheid!=undefined){model.wijzigItem("gelegenheid",data.gelegenheid);}
if(data.bron!=undefined){model.wijzigItem("bron",data.bron);}},updateBestelStatus:function(){(model.isMinimumBestelling())?view.zetBestelStatus(true):view.zetBestelStatus(false);},ontbijtGeklikt:function(id){view.highlightOntbijt(id);},tabGeklikt:function(index){view.updateStepButtons(index);},nextStep:function(){view.nextStep();},prevStep:function(){view.prevStep();},dialoogBestellenGeklikt:function(){model.verstuurBestelling();}});view.addListener(vlist);var mlist=$.shopModelListener({bestellingGewijzigd:function(bedrag){view.totaal(bedrag);},bestellingVersturenBezig:function(){view.toonDialoog("wachten");},bestellingVerstuurd:function(){view.zetDialoogBestelStatus(true);view.verbergDialoog("wachten");view.toonDialoog("verstuurd");view.bestellenDialoogSluiten();view.bestellingWissen();},emailNietGeldig:function(){view.emailStatus(true);},loadBegin:function(){},loadFinish:function(){},loadItem:function(){},loadFail:function(){}});model.addListener(mlist);}});;$(document).ready(function(){var myModel=new $.shopModel();var myView=new $.shopView();var myControl=new $.shopControl(myModel,myView);});