license update for token
This commit is contained in:
@@ -1,10 +1,11 @@
|
|||||||
class ApplicationController < ActionController::Base
|
class ApplicationController < ActionController::Base
|
||||||
include LoginVerification
|
include LicenseVerification
|
||||||
|
|
||||||
#before_action :check_installation
|
#before_action :check_installation
|
||||||
protect_from_forgery with: :exception
|
protect_from_forgery with: :exception
|
||||||
|
|
||||||
# lookup domain for db from provision
|
# lookup domain for db from provision
|
||||||
before_action :lookup_domain, :set_locale
|
before_action :set_locale
|
||||||
|
|
||||||
helper_method :current_company,:current_login_employee,:current_user
|
helper_method :current_company,:current_login_employee,:current_user
|
||||||
# alias_method :current_user, :current_login_employee,:current_user
|
# alias_method :current_user, :current_login_employee,:current_user
|
||||||
@@ -22,68 +23,6 @@ class ApplicationController < ActionController::Base
|
|||||||
{ locale: I18n.locale }
|
{ locale: I18n.locale }
|
||||||
end
|
end
|
||||||
|
|
||||||
def lookup_domain
|
|
||||||
if request.subdomain.present? && request.subdomain != "www"
|
|
||||||
from = request.subdomain.downcase + "." + request.domain.downcase
|
|
||||||
@license = cache_license(ENV["SX_PROVISION_URL"], from) # request.subdomain.downcase
|
|
||||||
if (!@license.nil?)
|
|
||||||
# logger.info "Location - " + @license.name
|
|
||||||
ActiveRecord::Base.establish_connection(website_connection(@license))
|
|
||||||
authentication
|
|
||||||
# logger.info "Connecting to - " + @license.subdomain + " - "+ @license.dbhost + "@" + @license.dbschema
|
|
||||||
else
|
|
||||||
# reconnect_default_db
|
|
||||||
logger.info 'License is nil'
|
|
||||||
# redirect_to root_url(:host => request.domain) + "store_error"
|
|
||||||
render :json => [{ status: false, message: 'Invalid Access!'}]
|
|
||||||
end
|
|
||||||
else
|
|
||||||
# check for license file
|
|
||||||
# if check_license
|
|
||||||
# current_license(ENV["SX_PROVISION_URL"])
|
|
||||||
# else
|
|
||||||
# redirect_to activate_path
|
|
||||||
# end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def current_license(url)
|
|
||||||
@license = License.new(url)
|
|
||||||
flag = @license.detail_with_local_file()
|
|
||||||
if (flag == 0)
|
|
||||||
flash[:notice] = 'Expired or No License!'
|
|
||||||
elsif (flag == 2)
|
|
||||||
flash[:notice] = 'Expiring! Please, License extend...'
|
|
||||||
else
|
|
||||||
puts "RUN SAY BYAR"
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def cache_license(url, lookup)
|
|
||||||
@license = License.new(url, lookup)
|
|
||||||
|
|
||||||
if (@license.detail_with_local_cache(lookup) == true)
|
|
||||||
return @license
|
|
||||||
else
|
|
||||||
return nil
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
def website_connection(license)
|
|
||||||
default_connection.dup.update(:host => license.dbhost, :database => license.dbschema.to_s.downcase,
|
|
||||||
:username => license.dbusername, :password => license.dbpassword)
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
def reconnect_default_db
|
|
||||||
ActiveRecord::Base.establish_connection(Rails.env)
|
|
||||||
end
|
|
||||||
|
|
||||||
# Regular database.yml configuration hash
|
|
||||||
def default_connection
|
|
||||||
@default_config ||= ActiveRecord::Base.connection.instance_variable_get("@config").dup
|
|
||||||
end
|
|
||||||
|
|
||||||
rescue_from CanCan::AccessDenied do |exception|
|
rescue_from CanCan::AccessDenied do |exception|
|
||||||
flash[:warning] = exception.message
|
flash[:warning] = exception.message
|
||||||
redirect_to root_path
|
redirect_to root_path
|
||||||
@@ -112,14 +51,6 @@ class ApplicationController < ActionController::Base
|
|||||||
@employee = Employee.find_by_token_session(session[:session_token])
|
@employee = Employee.find_by_token_session(session[:session_token])
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
private
|
|
||||||
def check_license
|
|
||||||
if License.check_license_file
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
return false
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
class BaseCrmController < ActionController::Base
|
class BaseCrmController < ActionController::Base
|
||||||
include LoginVerification
|
include LicenseVerification
|
||||||
layout "CRM"
|
layout "CRM"
|
||||||
|
|
||||||
#before_action :check_installation
|
#before_action :check_installation
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
class BaseInventoryController < ActionController::Base
|
class BaseInventoryController < ActionController::Base
|
||||||
include LoginVerification
|
include LicenseVerification
|
||||||
layout "inventory"
|
layout "inventory"
|
||||||
|
|
||||||
#before_action :check_installation
|
#before_action :check_installation
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
class BaseOqsController < ActionController::Base
|
class BaseOqsController < ActionController::Base
|
||||||
include LoginVerification
|
include LicenseVerification
|
||||||
layout "OQS"
|
layout "OQS"
|
||||||
|
|
||||||
#before_action :check_installation
|
#before_action :check_installation
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
class BaseOrigamiController < ActionController::Base
|
class BaseOrigamiController < ActionController::Base
|
||||||
include LoginVerification
|
include LicenseVerification
|
||||||
layout "origami"
|
layout "origami"
|
||||||
|
|
||||||
# before_action :checkin_process
|
# before_action :checkin_process
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
class BaseReportController < ActionController::Base
|
class BaseReportController < ActionController::Base
|
||||||
include LoginVerification
|
include LicenseVerification
|
||||||
layout "application"
|
layout "application"
|
||||||
|
|
||||||
#before_action :check_installation
|
#before_action :check_installation
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
class BaseWaiterController < ActionController::Base
|
class BaseWaiterController < ActionController::Base
|
||||||
include LoginVerification
|
include LicenseVerification
|
||||||
layout "waiter"
|
layout "waiter"
|
||||||
|
|
||||||
#before_action :check_installation
|
#before_action :check_installation
|
||||||
|
|||||||
83
app/controllers/concerns/license_verification.rb
Normal file
83
app/controllers/concerns/license_verification.rb
Normal file
@@ -0,0 +1,83 @@
|
|||||||
|
module LicenseVerification
|
||||||
|
extend ActiveSupport::Concern
|
||||||
|
|
||||||
|
included do
|
||||||
|
before_action :lookup_domain
|
||||||
|
end
|
||||||
|
|
||||||
|
protected
|
||||||
|
def lookup_domain
|
||||||
|
if request.subdomain.present? && request.subdomain != "www"
|
||||||
|
from = request.subdomain.downcase + "." + request.domain.downcase
|
||||||
|
@license = cache_license(ENV["SX_PROVISION_URL"], from) # request.subdomain.downcase
|
||||||
|
if (!@license.nil?)
|
||||||
|
# logger.info "Location - " + @license.name
|
||||||
|
ActiveRecord::Base.establish_connection(website_connection(@license))
|
||||||
|
authenticate_session_token
|
||||||
|
# logger.info "Connecting to - " + @license.subdomain + " - "+ @license.dbhost + "@" + @license.dbschema
|
||||||
|
else
|
||||||
|
# reconnect_default_db
|
||||||
|
logger.info 'License is nil'
|
||||||
|
# redirect_to root_url(:host => request.domain) + "store_error"
|
||||||
|
render :json => [{ status: false, message: 'Invalid Access!'}]
|
||||||
|
end
|
||||||
|
else
|
||||||
|
# check for license file
|
||||||
|
# if check_license
|
||||||
|
# current_license(ENV["SX_PROVISION_URL"])
|
||||||
|
# else
|
||||||
|
# redirect_to activate_path
|
||||||
|
# end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def authenticate_session_token
|
||||||
|
token = session[:session_token]
|
||||||
|
if (token)
|
||||||
|
#@current_user = User.find_by(api_key: token)
|
||||||
|
#Rails.logger.debug "token - " + token.to_s
|
||||||
|
|
||||||
|
@user = Employee.authenticate_by_token(token)
|
||||||
|
if !@user
|
||||||
|
flash[:notice] = 'Invalid Access!'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def current_license(url)
|
||||||
|
@license = License.new(url)
|
||||||
|
flag = @license.detail_with_local_file()
|
||||||
|
if (flag == 0)
|
||||||
|
flash[:notice] = 'Expired or No License!'
|
||||||
|
elsif (flag == 2)
|
||||||
|
flash[:notice] = 'Expiring! Please, License extend...'
|
||||||
|
else
|
||||||
|
puts "RUN SAY BYAR"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def cache_license(url, lookup)
|
||||||
|
@license = License.new(url, lookup)
|
||||||
|
|
||||||
|
if (@license.detail_with_local_cache(lookup) == true)
|
||||||
|
return @license
|
||||||
|
else
|
||||||
|
return nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def website_connection(license)
|
||||||
|
default_connection.dup.update(:host => license.dbhost, :database => license.dbschema.to_s.downcase,
|
||||||
|
:username => license.dbusername, :password => license.dbpassword)
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
|
def reconnect_default_db
|
||||||
|
ActiveRecord::Base.establish_connection(Rails.env)
|
||||||
|
end
|
||||||
|
|
||||||
|
# Regular database.yml configuration hash
|
||||||
|
def default_connection
|
||||||
|
@default_config ||= ActiveRecord::Base.connection.instance_variable_get("@config").dup
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -2,9 +2,8 @@ module LoginVerification
|
|||||||
extend ActiveSupport::Concern
|
extend ActiveSupport::Concern
|
||||||
|
|
||||||
included do
|
included do
|
||||||
# before_action :authenticate
|
before_action :authenticate
|
||||||
helper_method :current_company,:current_login_employee
|
helper_method :current_company,:current_login_employee
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
@@ -24,6 +23,8 @@ module LoginVerification
|
|||||||
if @user
|
if @user
|
||||||
return true
|
return true
|
||||||
#Maybe log - login?
|
#Maybe log - login?
|
||||||
|
else
|
||||||
|
flash[:notice] = 'Invalid Access!'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -50,6 +51,10 @@ module LoginVerification
|
|||||||
end
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
def check_license
|
||||||
|
License.check_license_file
|
||||||
|
end
|
||||||
|
|
||||||
def check_installation
|
def check_installation
|
||||||
if current_company.nil?
|
if current_company.nil?
|
||||||
redirect_to install_path
|
redirect_to install_path
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
class HomeController < ApplicationController
|
class HomeController < ApplicationController
|
||||||
# layout "application", except: [:index, :show]
|
# layout "application", except: [:index, :show]
|
||||||
skip_before_action :authenticate, only: [:index, :show, :create, :update, :destroy]
|
skip_before_action only: [:index, :show, :create, :update, :destroy]
|
||||||
|
|
||||||
def index
|
def index
|
||||||
# @employees = Employee.all_emp_except_waiter.order("name asc")
|
# @employees = Employee.all_emp_except_waiter.order("name asc")
|
||||||
|
|||||||
Reference in New Issue
Block a user