diff --git a/app/assets/javascripts/addorder.js b/app/assets/javascripts/addorder.js index 6d2fee7b..7b98d03a 100755 --- a/app/assets/javascripts/addorder.js +++ b/app/assets/javascripts/addorder.js @@ -842,10 +842,47 @@ $(function() { item = get_item(item_data,"add_icon"); customer_display_view(item,"add"); } + show_item_detail(item_data,"add_icon"); + code = $(this).data('item-code'); + element = $('#order-detail-slimscroll').find(`[data-code='${code}']`); + item_qty = element.find('#item_qty').text() + + // auto scroll to last order item + if (item_qty == 1) { + $('#order-detail-slimscroll').animate({ + scrollTop: $('.summary-items tbody tr:last').position().top - $('.summary-items tbody tr:first').position().top + }) + } + // set border to current item + $('.summary-items tbody tr').css('background-color', '') + + element.css({'background-color': '#2091F3'}) + + setTimeout(function() { + element.css('background-color', ''); + }, 500); + calculate_sub_total(); + + if (isNotInView(element)) { + element.css({'background-color': '#2091F3'}); + scrollToELement(element); + } }); //End Add Icon Click + function isNotInView(elem){ + // for scroll up | for scroll down + result = (($(elem).offset().top - 100) < $(elem).height() || $('#order-detail-slimscroll').height() < (elem.position().top + elem.outerHeight(true))); + console.log(result) + return result // reutn boolean + } + + function scrollToELement(elem) { + console.log('Scroll into view') + elem[0].scrollIntoView(); + } + function show_item_detail(data,click_type){ testqty = parseInt($('.item_box').children('data_qty').text()); qty = parseInt(data.attr('data-qty')); diff --git a/app/views/foodcourt/orders/app_orders.html.erb b/app/views/foodcourt/orders/app_orders.html.erb index 03e922f4..85f90e73 100644 --- a/app/views/foodcourt/orders/app_orders.html.erb +++ b/app/views/foodcourt/orders/app_orders.html.erb @@ -8,8 +8,13 @@ <%= javascript_include_tag 'custom', 'data-turbolinks-track': 'reload' %> + + -