diff --git a/app/controllers/settings/promotions_controller.rb b/app/controllers/settings/promotions_controller.rb
index 7272ab0c..123f01d8 100755
--- a/app/controllers/settings/promotions_controller.rb
+++ b/app/controllers/settings/promotions_controller.rb
@@ -103,9 +103,10 @@ class Settings::PromotionsController < ApplicationController
arr_inst = []
item_inst = MenuItemInstance.find_by_item_instance_code(params[:item_instance_code])
if item_inst.nil?
- product = Product.where("item_code = ?",params[:item_instance_code]).pluck(:name,:item_code)
- res.push(product.name)
- res.push(product.item_code)
+ product = Product.where("item_code = ?",params[:item_instance_code])
+ product.each do |pdt|
+ res.push({pdt.item_code => pdt.name})
+ end
else
# menu_item = item_inst.menu_item.pluck(:name,:item_code)
# res.push(item_inst.item_instance_name)
diff --git a/app/models/customer.rb b/app/models/customer.rb
index 3c72d3bb..4db65146 100755
--- a/app/models/customer.rb
+++ b/app/models/customer.rb
@@ -56,38 +56,43 @@ class Customer < ApplicationRecord
end
def self.get_membership_transactions(customer,receipt_no = nil)
- membership = MembershipSetting.find_by_membership_type("paypar_url")
- memberaction = MembershipAction.find_by_membership_type("get_member_transactions")
- merchant_uid = memberaction.merchant_account_id.to_s
- auth_token = memberaction.auth_token.to_s
- url = membership.gateway_url.to_s + memberaction.gateway_url.to_s
-# urltest =self.url_exist?(url)
+ membership = MembershipSetting.active.find_by_membership_type("paypar_url")
+ memberaction = MembershipAction.active.find_by_membership_type("get_member_transactions")
+ if !membership.nil? && !memberaction.nil?
+ merchant_uid = memberaction.merchant_account_id.to_s
+ auth_token = memberaction.auth_token.to_s
+ url = membership.gateway_url.to_s + memberaction.gateway_url.to_s
+ # urltest =self.url_exist?(url)
- begin
- response = HTTParty.get(url,
- :body => { membership_id: customer.membership_id,
- receipt_no:receipt_no,
- merchant_uid:merchant_uid,auth_token:auth_token
- }.to_json,
- :headers => {
- 'Content-Type' => 'application/json',
- 'Accept' => 'application/json; version=3'
- },
- :timeout => 10
- )
- rescue HTTParty::Error
- response = {status: false, message: "Can't open membership server " }
+ begin
+ response = HTTParty.get(url,
+ :body => { membership_id: customer.membership_id,
+ receipt_no:receipt_no,
+ merchant_uid:merchant_uid,auth_token:auth_token
+ }.to_json,
+ :headers => {
+ 'Content-Type' => 'application/json',
+ 'Accept' => 'application/json; version=3'
+ },
+ :timeout => 10
+ )
+ rescue HTTParty::Error
+ response = {status: false, message: "Can't open membership server " }
- rescue Net::OpenTimeout
- response = { status: false , message: "Server Time out"}
+ rescue Net::OpenTimeout
+ response = { status: false , message: "Server Time out"}
- rescue OpenURI::HTTPError
- response = { status: false, message: "Can't connect server"}
+ rescue OpenURI::HTTPError
+ response = { status: false, message: "Can't connect server"}
- rescue SocketError
- response = { status: false, message: "Can't connect server"}
+ rescue SocketError
+ response = { status: false, message: "Can't connect server"}
+ end
+ else
+ response = {status: false, message: "There is no membership."}
end
-
+ Rails.logger.debug "get membership transactions !!!!!!!"
+ Rails.logger.debug response
return response;
end
diff --git a/app/models/membership_action.rb b/app/models/membership_action.rb
index 93a4b3d8..dbf7c51c 100755
--- a/app/models/membership_action.rb
+++ b/app/models/membership_action.rb
@@ -1,2 +1,3 @@
class MembershipAction < ApplicationRecord
+ scope :active, -> { where(is_active: true) }
end
diff --git a/app/models/membership_setting.rb b/app/models/membership_setting.rb
index 3b60c781..9ab0ee96 100755
--- a/app/models/membership_setting.rb
+++ b/app/models/membership_setting.rb
@@ -1,3 +1,5 @@
class MembershipSetting < ApplicationRecord
+ scope :active, -> { where(is_active: true) }
+
MembershipSetting = MembershipSetting.find_by_id(1)
end
diff --git a/app/views/settings/promotions/_form.html.erb b/app/views/settings/promotions/_form.html.erb
index dc018ce3..c5b0a931 100755
--- a/app/views/settings/promotions/_form.html.erb
+++ b/app/views/settings/promotions/_form.html.erb
@@ -385,14 +385,18 @@
if(result.length > 0){
var iteminstlists;
- $.each(arr_item_inst,function(k2,v2al){
- $("select#"+select_id).empty();
- var selected = "";
- $.each(v2al,function(k3,v3al){
- if(k3 == item_code) selected = "selected";
- iteminstlists += "";
+ if(arr_item_inst instanceof Array){
+ $.each(arr_item_inst,function(k2,v2al){
+ $("select#"+select_id).empty();
+ var selected = "";
+ $.each(v2al,function(k3,v3al){
+ if(k3 == item_code) selected = "selected";
+ iteminstlists += "";
+ });
});
- });
+ }else if(arr_item_inst != ""){
+ iteminstlists += "";
+ }
$("select#"+select_id).append(iteminstlists);
$("select#"+select_id).parent().parent().siblings("div.menu_item_choose").find("select").find("option[value='"+par_item_code+"']").attr("selected","true")