module Printos::Helpers

Public Instance Methods

check_admin_permission() click to toggle source
# File lib/printos/helpers.rb, line 12
def check_admin_permission
  redirect_to signin_url unless has_admin_permission?
end
has_admin_permission?() click to toggle source
# File lib/printos/helpers.rb, line 8
def has_admin_permission?
  user_permissions&.include?('admin')
end
printos_login() click to toggle source
# File lib/printos/helpers.rb, line 16
def printos_login
  authenticated = false
  token = cookies[Printos.config.auth_token_key]
  if token
    begin
      PrintosClient.set_instance(token)
      authenticated = user_permissions.any?
    rescue RestClient::Unauthorized
    end
  end
  unless authenticated
    if request.format.json?
      render json: '', status: 401, head: :no_content
    else
      redirect_to signin_url
    end
  end
end
signin_url() click to toggle source
# File lib/printos/helpers.rb, line 35
def signin_url
  "#{Printos.config.api_host}/start/#/signin"
end
user_permissions() click to toggle source
# File lib/printos/helpers.rb, line 4
def user_permissions
  @permissions ||= PrintosClient.get_instance.permissions
end