Sha256: 65f8125f51076c95b0f06989bad617803c104be93d95ab716e241615a31d4171

Contents?: true

Size: 801 Bytes

Versions: 2

Compression:

Stored size: 801 Bytes

Contents

# frozen_string_literal: true

module Decidim
  module DecidimAwesome
    class Permissions < Decidim::DefaultPermissions
      def permissions
        return permission_action unless user

        return Decidim::DecidimAwesome::Admin::Permissions.new(user, permission_action, context).permissions if permission_action.scope == :admin

        editor_image_action?

        permission_action
      end

      def editor_image_action?
        return false unless permission_action.subject == :editor_image

        config = context.fetch(:awesome_config, {})

        return allow! if user.admin?
        return allow! if config[:allow_images_in_proposals]
        return allow! if config[:allow_images_in_editors]
        return allow! if config[:allow_videos_in_editors]
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
decidim-decidim_awesome-0.11.2 app/permissions/decidim/decidim_awesome/permissions.rb
decidim-decidim_awesome-0.11.1 app/permissions/decidim/decidim_awesome/permissions.rb