var mode=''; var table=''; var waiter=''; var lang='bg'; var order={}; var new_order_ok=1; var cat_id=''; var type_id=''; var order_id=0; var orderMode=''; $(document).ready(function() { mode=$('input:hidden#mode').val(); table=$('input:hidden#table').val(); waiter=$('input:hidden#waiter').val(); orderMode=$('input:hidden#orderMode').val(); setTimeout(function() { lng(lang); list_cats(); get_bat(); $('.preload').addClass('hide'); }, 1000); $('#bbs').bbslider({auto: true, timer: 3000, controls: false, loop: true, pauseOnHit: false}); setInterval(function() { get_bat(); }, 60000); $('.switch_lang').bind('click', function() { var lang=$(this).attr('alt'); lng(lang); $('.switch_lang').toggle(); }); $('.content .menuBtn').bind('click',function() { $('.content .menuBtn').addClass('hide'); $('.content .menu.hide').removeClass('hide'); }); $('.content .cats').delegate('li div:not(.sel)','click',function() { $('.content .cats li div').removeClass('txt_shadow1 sel').addClass('txt_shadow1w').parent().removeClass('sel'); $('.content .types').removeClass('sel'); var this_cat=$(this); $('.content .cats li').addClass('mobileHide'); this_cat.parent().removeClass('mobileHide'); cat_id=this_cat.parent().attr('id'); this_cat.removeClass('txt_shadow1w').addClass('txt_shadow1 sel').parent().addClass('sel'); this_cat.find('span.back').addClass('mobileIcon'); list_types(cat_id); $('.content .cats').delegate('li div.sel','click',function() { $('.content .cats li div').addClass('txt_shadow1w').removeClass('txt_shadow1').find('span.back').removeClass('mobileIcon'); $('.content .cats li').removeClass('mobileHide').find('div').removeClass('sel'); $('.content .types').empty(); $('.content .items').empty().addClass('hide'); }); }); $('.content .types').delegate('li div','click',function() { $('.content .types li div').removeClass('txt_shadow1 sel').addClass('txt_shadow1w').parent().removeClass('sel'); var this_type=$(this); type_id=this_type.parent().attr('id'); this_type.removeClass('txt_shadow1w').addClass('txt_shadow1 sel').parent().addClass('sel').parent().addClass('sel'); list_items(type_id); }); /* orderMode */ if (orderMode) { setInterval(function() { check_check(); }, 5000); $('.content .items').delegate('li:not(".busy") .pic','click',function() { var item=$(this).parent(); var item_id=item.attr('id'); var item_name=item.find('.name').text(); var grouped=item.find('.descr').hasClass('grouped'); if (grouped) { var item_descr=item.find('.descr .ingredient').text(); } else { var item_descr={}; $.each(item.find('.descr .ingredient'), function(k,v) { var ingredient_name=$(this).text(); item_descr[ingredient_name]=true; }); $('.content .items li .descr .ingredient').removeClass('transperancy2').removeClass('active'); item.find('.descr .ingredient').addClass('active'); } var item_pic=item.find('.pic').css('background-image').match(/\((.*?)\)/)[1].replace(/('|")/g,''); var price=item.find('.price').text(); add2order(item_id,grouped,Math.round(parseFloat(price)*100),item_name,item_descr,item_pic); }); $('.content .items').delegate('li .minus','click',function() { var item=$(this).parent().parent(); var item_id=item.attr('id'); item.find('.descr .ingredient').removeClass('transperancy2').removeClass('active'); remove_from_order(item_id); }); $('.header .bell').bind('click',function() { $('.content .items li .descr .ingredient').removeClass('transperancy2').removeClass('active'); if (Object.keys(order).length || order_id) { list_order(); } else { ring_bell(); } $('.content .order_cloud .order_list').scrollTop(100000000); }); $('.content .order_cloud .minus').bind('click',function() { $('.content .order_cloud').addClass('hide'); }); $('.content .order_list').delegate('.make_order','click',function() { $.ajax({ type: "POST", url: "/ajax", data: "make_order=1&lang="+lang+"&table="+table+"&order_id="+order_id+"&order="+JSON.stringify(order), beforeSend: function() { $('.preload').removeClass('hide'); }, success: function(res) { // printToKitchen(order); order_id=parseInt(res); order={}; list_qty(); $('.preload').addClass('hide'); $('.content .order_cloud').addClass('hide'); $('.bell').removeClass('blink'); $('.content .items li .descr .ingredient').removeClass('transperancy2').removeClass('active'); } }); }); $('.content .order_list').delegate('.check_please','click',function() { $.ajax({ type: "POST", url: "/ajax", data: "check_please=1&table="+table+"&order_id="+order_id, beforeSend: function() { $('.preload').removeClass('hide'); }, success: function(res) { order_id=''; order={}; new_order_ok=0; list_qty(); list_cats(); $('.content .types').empty(); $('.switch_lang:not(.'+lang+')').show(); $('.video').attr('src', $('.video').attr('alt')); $('.video_container, #bbs').removeClass('hide'); $('.content .items li').addClass('busy'); $('.preload').addClass('hide'); $('.content .order_cloud').addClass('hide'); } }); }); $('.content .order_list').delegate('.minus', 'click', function() { var item=$(this).parent().parent(); var item_id=item.attr('id'); var sub_item_id=item.attr('alt'); remove_from_order(item_id,sub_item_id); if (sub_item_id) { item.fadeOut('fast', function() { list_order(); }); } else { list_order(); } }); $('.content').delegate('.items li .descr .ingredient.active:not(.transperancy2)', 'click', function() { $(this).addClass('transperancy2'); var ingrd=$(this); var ingredient=ingrd.text(); var item=$(this).parent().parent().parent(); var item_id=item.attr('id'); remove_ingredient(item_id,ingredient); }); $('.content').delegate('.items li .descr .ingredient.active.transperancy2', 'click', function() { $(this).removeClass('transperancy2'); var ingrd=$(this); var ingredient=ingrd.text(); var item=$(this).parent().parent().parent(); var item_id=item.attr('id'); add_ingredient(item_id,ingredient); }); } else { $('.content .items').delegate('li:not(".busy") .pic','click',function() { if (!$(this).hasClass('zoom')) { $('.content .items li .pic').removeClass('zoom'); $(this).addClass('zoom'); } else { $(this).removeClass('zoom'); } }); $('.header .bell').bind('click', function() { $(this).addClass('blink'); ring_bell(); }); } /* end of orderMode */ function check_check() { $.ajax({ type: "POST", // dataType: "json", url: "/ajax", data: "check_check=1&table="+table+"&order_id="+order_id, success: function(res) { if (res==1) { order={}; order_id=''; new_order_ok=0; list_qty(); } else if (res==2) { order={}; order_id=0; new_order_ok=1; list_qty(); } else { new_order_ok=1; } } }); } function lng(lng) { $.ajax({ type: "POST", dataType: "json", url: "/ajax", data: "get_lang="+lng, beforeSend: function() { $('.preload').removeClass('hide'); }, success: function(res) { $('.switch_lang:not(.'+lng+')').removeClass('hide'); $.each(res, function(k,v) { $('.lang#'+k).html(v); $('.lang#'+k).val(v); }); $('input:hidden#lang').val(lng); lang=lng; list_cats(); // list_types(); $('.content .types').empty(); // list_items(); $('.content .items').empty(); $('.preload').addClass('hide'); } }); } function list_cats() { $.ajax({ type: "POST", dataType: "json", url: "/ajax", data: "list_cats=1&lang="+lang, beforeSend: function() { $('.preload').removeClass('hide'); $('.content .types').removeClass('hide'); $('.content .items').empty().addClass('hide'); }, success: function(res) { if (typeof res=="object" && res!=null) { var cats_qty=Object.keys(res).length; $('.content .cats').empty(); $.each(res, function(k,v) { $('.content .cats').append('
  • ◀︎'+v+'
  • '); }); } $('.preload').addClass('hide'); } }); } function list_types(cat) { $.ajax({ type: "POST", dataType: "json", url: "/ajax", data: "list_types=1&cat_id="+cat+"&lang="+lang, beforeSend: function() { $('.video').prop('src',''); $('.video_container, #bbs').addClass('hide'); $('.preload').removeClass('hide'); $('.content .types').empty(); $('.content .items').empty().addClass('hide'); }, success: function(res) { if (typeof res=="object" && res!=null) { var types_qty=Object.keys(res).length; $.each(res, function(k,v) { $('.content .types').append('
  • '+v+'
  • '); }); $('.content .types').append('
  • '); } $('.preload').addClass('hide'); } }); } function list_items(type) { $.ajax({ type: "POST", dataType: "json", url: "/ajax", data: "list_items=1&type_id="+type+"&lang="+lang, beforeSend: function() { $('.video').prop('src',''); $('.video_container, #bbs').addClass('hide'); $('.preload').removeClass('hide'); $('.content .items').empty().addClass('hide'); }, success: function(res) { var items_html=''; if (new_order_ok==0) { var busy="busy"; } else { var busy=""; } $.each(res, function(k,v) { $('.content .items').removeClass('hide'); items_html+='
  • '; items_html+='
    '; items_html+='
    '; items_html+='
    '; items_html+='
    '; items_html+='
    '+v.price+'
    '; items_html+='
    '+v.name+'
    '; items_html+='
    '; if (!v.grouped) { var grouped=''; var ingredients_html=''; var ingredients=v.descr.split(","); $.each(ingredients, function(k,v) { ingredients_html+=''+v.trim()+''; }); } else { var grouped='grouped'; var ingredients_html=''+v.descr+''; } items_html+='
    '+ingredients_html+'
    '; items_html+='
    '; items_html+='
    '; items_html+='
  • '; }); $('.content .items').html(items_html); $('.preload').addClass('hide'); list_qty(); } }); } function list_order() { var curr_txt=$('input#curr:hidden').val(); var items_html=''; var new_order_available=''; var old_order=get_order(); var total_price=0; $.each(old_order, function(k,v) { items_html+='
  • '; items_html+='
    '; items_html+='
    '+v.qty+'
    '; items_html+='
    '; items_html+='
    '; items_html+='
    '+v.name+'
    '; items_html+='
    '+v.descr+'
    '; items_html+='
    '; var price_r=(v.price/100).toFixed(2).split('.') items_html+='
    '+price_r[0]+'.'+price_r[1]+' '+curr_txt+'
    '; items_html+='
    '; items_html+='
  • '; total_price=parseInt(total_price)+(parseInt(v.price)*v.qty); }); $.each(order, function(k,v) { new_order_available=1; if (v.grouped) { items_html+='
  • '; items_html+='
    '; items_html+='
    '+v.qty+'
    '; items_html+='
    '; items_html+='
    '; items_html+='
    '+v.name+'
    '; items_html+='
    '; items_html+='
    '+v.ingredients+'
    '; items_html+='
    '; var price_r=(v.price/100).toFixed(2).split('.') items_html+='
    '+price_r[0]+'.'+price_r[1]+' '+curr_txt+'
    '; items_html+='
    '; items_html+='
  • '; } else { $.each(v.ingredients, function(k1,v1) { items_html+='
  • '; items_html+='
    '; // items_html+='
    '+v.qty+'
    '; items_html+='
    '; items_html+='
    '; items_html+='
    '+v.name+'
    '; items_html+='
    '; items_html+='
    '; $.each(v1, function(k2,v2) { if (v2) { items_html+=''+k2+''; } else { items_html+=''+k2+''; } }); items_html+='
    '; items_html+='
    '; var price_r=(v.price/100).toFixed(2).split('.') items_html+='
    '+price_r[0]+'.'+price_r[1]+' '+curr_txt+'
    '; items_html+='
    '; items_html+='
  • '; }); } total_price=parseInt(total_price)+(parseInt(v.price)*v.qty); }); items_html+='

  • '; var total_r=(total_price/100).toFixed(2).split('.'); var order_txt=$('input#order:hidden').val(); var check_txt=$('input#check:hidden').val(); var total_txt=$('input#total:hidden').val(); items_html+='
  • '; if (new_order_available) { items_html+=''; } if (order_id && !new_order_available) { items_html+=''; } items_html+=''; items_html+='
    '+total_r[0]+'.'+total_r[1]+' '+curr_txt+'
    '+total_txt+':
    '; items_html+='
  • '; $('.content .order_cloud .order_list').html(items_html); $('.content .order_cloud').removeClass('hide'); } $('.content .order_list').delegate('.waiter_bell', 'click', function() { $(this).addClass('blink'); ring_bell(); }); function list_qty() { $('.content .items li').each(function() { var item=$(this); var item_id=$(this).attr('id'); if (order[item_id]) { item.find('.order_qty').text(order[item_id].qty).removeClass('hide'); item.find('.minus').removeClass('hide'); } else { item.find('.order_qty').empty().addClass('hide'); item.find('.minus').addClass('hide'); } }); var total=0; for (var property in order) { total+=order[property].qty*order[property].price; } var total_r=(total/100).toFixed(2).split('.') $('.total_price .ttl').html(total_r[0]+'.'+total_r[1]+''); if (Object.keys(order).length || order_id) { $('.total_price').removeClass('hide'); $('.bell').addClass('blink'); // $('.bell').removeClass('hide'); } else { $('.total_price').addClass('hide'); $('.bell').removeClass('blink'); // $('.bell').addClass('hide'); } } function add2order(item_id,grouped,price,name,descr,pic) { // var descr_k=descr.toString(); if (order[item_id]) { var item=order[item_id]; if (order[item_id].hasOwnProperty("qty")) { item.qty=order[item_id].qty+1; var ingredients=order[item_id].ingredients; } else { // item.qty=1; var ingredients=[]; } } else { var item={}; item.qty=1; var ingredients=[]; } item.price=price; item.name=name; item.pic=pic; if (grouped) { item.ingredients=descr; } else { ingredients.push(descr); item.ingredients=ingredients; } item.grouped=grouped; order[item_id]=item; $('.switch_lang').hide(); list_qty(); } function remove_ingredient(item_id,ingredient) { var ingredients=order[item_id].ingredients; ingredients[ingredients.length-1][ingredient]=false; } function add_ingredient(item_id,ingredient) { var ingredients=order[item_id].ingredients; ingredients[ingredients.length-1][ingredient]=true; } function remove_from_order(item_id,sub_item_id) { if (order[item_id].grouped) { order[item_id].qty=order[item_id].qty-1; if (order[item_id].qty==0) { delete order[item_id]; } } else { if (sub_item_id) { order[item_id].qty=order[item_id].qty-1; order[item_id].ingredients.splice(sub_item_id, 1); if (order[item_id].qty==0) { delete order[item_id]; } } else { delete order[item_id]; } } list_qty(); } function get_order() { var out=''; $.ajax({ type: "POST", async: false, dataType: "json", url: "/ajax", data: "get_order=1&table="+table+"&order_id="+order_id, success: function(res) { out=res; } }); return out; } function get_bat() { try { var level=android.getBatteryLevel(); } catch(e) { console.log(e); } if (level) { $.ajax({ type: "POST", dataType: "json", url: "/ajax", data: "bat_level=1&table="+table+"&level="+level, success: function(res) { // console.log(res); } }); } } function ring_bell() { $.ajax({ type: "POST", // dataType: "json", url: "/ajax", data: "ring_bell=1&table="+table, success: function(res) { // console.log(res); } }); } });