Sha256: 260f0a0bd142c29da1c30cc4dbd1079fd5cc682d8869fde4b49a69fdb8b0c471

Contents?: true

Size: 893 Bytes

Versions: 33

Compression:

Stored size: 893 Bytes

Contents

# frozen_string_literal: true

module Decidim
  # Helper that provides methods to enable or disable omniauth buttons
  module OmniauthHelper
    # Public: returns true if the social provider is enabled
    def social_provider_enabled?(provider)
      Rails.application.secrets.dig(:omniauth, provider.to_sym, :enabled)
    end

    # Public: returns true if any provider is enabled
    def any_social_provider_enabled?
      User.omniauth_providers.any? do |provider|
        social_provider_enabled? provider
      end
    end

    # Public: normalize providers names to they can be used for buttons
    # and icons.
    def normalize_provider_name(provider)
      provider.to_s.split("_").first
    end

    # Public: icon for omniauth buttons
    def oauth_icon(provider)
      name = provider == :developer ? "phone" : normalize_provider_name(provider)

      icon(name)
    end
  end
end

Version data entries

33 entries across 33 versions & 1 rubygems

Version Path
decidim-core-0.15.2 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.15.1 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.15.0 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.14.4 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.14.3 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.14.2 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.14.1 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.13.1 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.12.2 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.13.0 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.12.1 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.13.0.pre1 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.12.0 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.11.2 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.12.0.pre app/helpers/decidim/omniauth_helper.rb
decidim-core-0.11.1 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.11.0.pre1 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.10.1 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.10.0 app/helpers/decidim/omniauth_helper.rb
decidim-core-0.9.3 app/helpers/decidim/omniauth_helper.rb