Sha256: 50a00044aba1a43e8833c049c53ed4822c9600e58b3c264489ba83a008edfdc5
Contents?: true
Size: 846 Bytes
Versions: 10
Compression:
Stored size: 846 Bytes
Contents
# frozen_string_literal: true module Decidim module Admin # A Rails routes constraint to only allow access to an Organization admin to # the organization dashboard. class OrganizationDashboardConstraint # Initializes the contraint. # # request [Rack::Request] def initialize(request) @request = request end # Checks if the user can access the organization dashboard. # # Returns boolean. def matches? OrganizationPolicy.new(user, organization).update? end private attr_reader :request def organization request.env["decidim.current_organization"] end def user return unless request.env["warden"].authenticate!(scope: :user) @user ||= request.env["warden"].user("user") end end end end
Version data entries
10 entries across 10 versions & 2 rubygems