'
+'
'
- +'
'+ menu_items[field].name +'
'
- +"'
+ +"'
+'
'
diff --git a/app/assets/javascripts/cable.js b/app/assets/javascripts/cable.js
index 55bfd46b..1668e17f 100755
--- a/app/assets/javascripts/cable.js
+++ b/app/assets/javascripts/cable.js
@@ -8,7 +8,7 @@
// Temp Disable
(function() {
this.App || (this.App = {});
-
+
App.cable = ActionCable.createConsumer();
}).call(this);
diff --git a/app/assets/javascripts/channels/bill.js b/app/assets/javascripts/channels/bill.js
index 97666e32..7fa2b77e 100755
--- a/app/assets/javascripts/channels/bill.js
+++ b/app/assets/javascripts/channels/bill.js
@@ -6,15 +6,19 @@ App.order = App.cable.subscriptions.create('BillChannel', {
disconnected: function() {},
received: function(data) {
- if($('.table_'+data.table.id).hasClass('blue')){
- $('.table_'+data.table.id).removeClass('blue');
- $('.table_'+data.table.id).addClass('red');
- }else{
- $('.table_'+data.table.id).removeClass('orange');
- $('.table_'+data.table.id).addClass('red');
- }
- $('.new_text_'+data.table.id).removeClass('hide');
- $('.new_text_'+data.table.id).text('billed');
+ var hostname = location.hostname.trim();
+ if(data.from == "" || hostname == data.from)
+ {
+ if($('.table_'+data.table.id).hasClass('blue')){
+ $('.table_'+data.table.id).removeClass('blue');
+ $('.table_'+data.table.id).addClass('red');
+ }else{
+ $('.table_'+data.table.id).removeClass('orange');
+ $('.table_'+data.table.id).addClass('red');
+ }
+ $('.new_text_'+data.table.id).removeClass('hide');
+ $('.new_text_'+data.table.id).text('billed');
+ }
}
});
diff --git a/app/assets/javascripts/channels/order.js b/app/assets/javascripts/channels/order.js
index 9598ed6f..26c7897e 100755
--- a/app/assets/javascripts/channels/order.js
+++ b/app/assets/javascripts/channels/order.js
@@ -1,6 +1,4 @@
App.order = App.cable.subscriptions.create('OrderChannel', {
-// App.messages = App.cable.subscriptions.create('MessagesChannel', {
-
connected: function() {},
disconnected: function() {},
diff --git a/app/channels/application_cable/connection.rb b/app/channels/application_cable/connection.rb
index 4efdb70d..14561a4e 100755
--- a/app/channels/application_cable/connection.rb
+++ b/app/channels/application_cable/connection.rb
@@ -1,7 +1,27 @@
module ApplicationCable
class Connection < ActionCable::Connection::Base
+ identified_by :current_subdomain
def connect
+ if ENV["server_mode"] == "cloud"
+ self.current_subdomain = verified_subdomain
+ end
logger.add_tags "SX-ActionCable"
end
+
+ private
+ def verified_subdomain
+ from = request.subdomain.downcase + "." + request.domain.downcase
+ file_path = "config/shops.json"
+ shop_data = File.read(file_path)
+
+ shop_json = JSON.parse(shop_data)
+ shop_json["data"].each do |j|
+ if j["lookup"] == from
+ verified_subdomain = from
+ else
+ reject_unauthorized_connection
+ end
+ end
+ end
end
end
diff --git a/app/channels/order_channel.rb b/app/channels/order_channel.rb
index d261e48b..6f899707 100755
--- a/app/channels/order_channel.rb
+++ b/app/channels/order_channel.rb
@@ -1,5 +1,5 @@
class OrderChannel < ApplicationCable::Channel
- def subscribed
+ def subscribed
stream_from "order_channel"
end
diff --git a/app/controllers/origami/request_bills_controller.rb b/app/controllers/origami/request_bills_controller.rb
index 0c50a5da..3d2c90aa 100755
--- a/app/controllers/origami/request_bills_controller.rb
+++ b/app/controllers/origami/request_bills_controller.rb
@@ -38,10 +38,13 @@ class Origami::RequestBillsController < ApplicationController
# Promotion Activation
Promotion.promo_activate(@sale)
- #bill channel
- #if ENV["SERVER_MODE"] != 'cloud'
- ActionCable.server.broadcast "bill_channel",table: table
- #end
+ #bill channel
+ if ENV["SERVER_MODE"] == 'cloud'
+ from = request.subdomain + "." + request.domain
+ else
+ from = ""
+ end
+ ActionCable.server.broadcast "bill_channel",table: table, from: from
if order.source == "quick_service"
result = {:status=> @status, :data => @sale.sale_id }
render :json => result.to_json
diff --git a/app/models/menu_category.rb b/app/models/menu_category.rb
index 218bacb8..21d95770 100755
--- a/app/models/menu_category.rb
+++ b/app/models/menu_category.rb
@@ -9,7 +9,7 @@ class MenuCategory < ApplicationRecord
validates_presence_of :code, :name, :menu, :order_by
validates_uniqueness_of :code
- default_scope { order('order_by asc') }
+ default_scope { order('name asc') }
scope :active, -> {where("is_available = 1")}
def self.destroyCategory(menu_category)
diff --git a/app/models/menu_item.rb b/app/models/menu_item.rb
index 03e90011..e184cd51 100755
--- a/app/models/menu_item.rb
+++ b/app/models/menu_item.rb
@@ -16,7 +16,7 @@ class MenuItem < ApplicationRecord
validates_presence_of :item_code, :name, :type, :min_qty,:account_id
validates_uniqueness_of :item_code
- default_scope { order('item_code asc') }
+ default_scope { order('name asc') }
scope :simple_menu_item, -> { where(type: 'SimpleMenuItem') }
scope :set_menu_item, -> { where(type: 'SetMenuItem') }
diff --git a/app/models/order.rb b/app/models/order.rb
index 66ac883f..8a0e52b3 100755
--- a/app/models/order.rb
+++ b/app/models/order.rb
@@ -71,9 +71,9 @@ class Order < ApplicationRecord
BookingOrder.create({:booking_id => booking.booking_id, :order => self})
#Send order to queue one it done!
- # if self.source != "quick_service"
+ if self.source != "quick_service"
process_order_queue
- # end
+ end
#send order to broadcast job
send_order_broadcast(booking)
diff --git a/app/models/order_queue_station.rb b/app/models/order_queue_station.rb
index 1541828c..70b28c1f 100755
--- a/app/models/order_queue_station.rb
+++ b/app/models/order_queue_station.rb
@@ -116,6 +116,7 @@ class OrderQueueStation < ApplicationRecord
order = Order.find(order_id)
order_items = order.order_items
+ Order.pay_process_order_queue(order_id,table_id)
if table_id.to_i > 0
# get dining
dining = DiningFacility.find(table_id)
diff --git a/config/initializers/action_controller.rb b/config/initializers/action_controller.rb
index e0eb7455..b84bca54 100644
--- a/config/initializers/action_controller.rb
+++ b/config/initializers/action_controller.rb
@@ -20,11 +20,11 @@ class ActionController::Base
end
else
#check for license file
- if check_license
- current_license(ENV["SX_PROVISION_URL"])
- else
- redirect_to activate_path
- end
+ # if check_license
+ # current_license(ENV["SX_PROVISION_URL"])
+ # else
+ # redirect_to activate_path
+ # end
end
end