Sha256: 57bcd366f011797d42c2ef74b84942d45489f759d7b3b6381c9cb29993ebbe73

Contents?: true

Size: 1.38 KB

Versions: 63

Compression:

Stored size: 1.38 KB

Contents

class ApplicationController < ActionController::Base
  protect_from_forgery with: :exception
  before_filter :authenticate_usuario!, :unless => :devise_controller?
  around_filter :set_current_usuario
  
  rescue_from CanCan::AccessDenied do |exception|
    respond_to do |format|
      format.html {
        flash[:notice] = "Acesso negado!"
        redirect_to main_app.root_path
      }
      format.js {
        flash.now[:notice] = "Acesso negado!"
        render "shared/acesso_negado"
      }
      format.pdf {
        flash[:notice] = "Acesso negado!"
        redirect_to main_app.root_path
      }
    end
  end
  
  def current_ability
    @current_ability ||= Ability.new(current_usuario)
  end

  def set_current_usuario
    Usuario.current = current_usuario
    yield 
  ensure
    Usuario.current = nil
  end
  
  def query
    @resource = Module.const_get(params[:model].classify)
    @q = @resource.search(params[:q])
    @q.sorts = 'updated_at desc' if @q.sorts.empty?
    results = @q.result(distinct: true).accessible_by(current_ability).page(params[:page])
    instance_variable_set("@#{params[:var]}", results)
    unless request.wiselinks_partial?
      if request[:controller] == "crud"
        redirect_to "/#{request[:controller]}/#{params[:model]}"
      else
        redirect_to "/#{request[:controller]}"
      end
    else
      render :partial => params[:partial]
    end
  end
  
end

Version data entries

63 entries across 63 versions & 1 rubygems

Version Path
templus_models-2.0.16 test/dummy/app/controllers/application_controller.rb
templus_models-1.6.9 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.15 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.14 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.12 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.11 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.9 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.8 test/dummy/app/controllers/application_controller.rb
templus_models-1.6.8 test/dummy/app/controllers/application_controller.rb
templus_models-1.6.7 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.7 test/dummy/app/controllers/application_controller.rb
templus_models-1.6.6 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.6 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.5 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.4 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.3 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.2 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.1 test/dummy/app/controllers/application_controller.rb
templus_models-3.0.4 test/dummy/app/controllers/application_controller.rb
templus_models-2.0.0 test/dummy/app/controllers/application_controller.rb