Sha256: 81092279da20a58c48ce754ffd46fdfd657334b379bed31456d16ab9b22def35

Contents?: true

Size: 1.11 KB

Versions: 10

Compression:

Stored size: 1.11 KB

Contents

class SessionsController < ActionController::Base
  include ShopifyApp::SessionsConcern

  def referral
    cookies[DiscoApp::SOURCE_COOKIE_KEY] = params[:source] if params[:source].present?
    cookies[DiscoApp::CODE_COOKIE_KEY] = params[:code] if params[:code].present?
    redirect_to root_path
  end

  def failure
    flash[:notice] = 'There was an issue while trying to authenticate, please retry'
    redirect_to root_path
  end

  protected

    # Override the authenticate method to allow skipping OAuth in development
    # mode. Skipping OAuth still requires a shop with Shopify domain specified
    # by the `shop` parameter to be present in the local database.
    def authenticate
      if Rails.env.development? and DiscoApp.configuration.skip_oauth?
        shop = DiscoApp::Shop.find_by_shopify_domain!(sanitized_shop_name)

        sess = ShopifyAPI::Session.new(shop.shopify_domain, shop.shopify_token)
        session[:shopify] = ShopifyApp::SessionRepository.store(sess)
        session[:shopify_domain] = sanitized_shop_name

        redirect_to disco_app.frame_path and return
      end
      super
    end

end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
disco_app-0.16.1.pre.sidekiq.pre.6.pre.release app/controllers/sessions_controller.rb
disco_app-0.14.1 app/controllers/sessions_controller.rb
disco_app-0.14.2 app/controllers/sessions_controller.rb
disco_app-0.15.0 app/controllers/sessions_controller.rb
disco_app-0.16.0 app/controllers/sessions_controller.rb
disco_app-0.14.4 app/controllers/sessions_controller.rb
disco_app-0.14.3 app/controllers/sessions_controller.rb
disco_app-0.16.1 app/controllers/sessions_controller.rb
disco_app-0.15.2 app/controllers/sessions_controller.rb
disco_app-0.14.0 app/controllers/sessions_controller.rb