Sha256: d771b47d9b044f2fc74cba23348687338b514019da4865e0c505a223d973d646

Contents?: true

Size: 1.83 KB

Versions: 13

Compression:

Stored size: 1.83 KB

Contents

module DeviseInvitable
  module Generators
    class InstallGenerator < Rails::Generators::Base
      source_root File.expand_path("../../templates", __FILE__)
      desc "Add DeviseInvitable config variables to the Devise initializer and copy DeviseInvitable locale files to your application."
      
      # def devise_install
      #   invoke "devise:install"
      # end
      
      def add_config_options_to_initializer
        devise_initializer_path = "config/initializers/devise.rb"
        if File.exist?(devise_initializer_path)
          old_content = File.read(devise_initializer_path)
          
          if old_content.match(Regexp.new(/^\s# ==> Configuration for :invitable\n/))
            false
          else
            inject_into_file(devise_initializer_path, :before => "  # ==> Configuration for :confirmable\n") do
<<-CONTENT
  # ==> Configuration for :invitable
  # The period the generated invitation token is valid, after
  # this period, the invited resource won't be able to accept the invitation.
  # When invite_for is 0 (the default), the invitation won't expire.
  # config.invite_for = 2.weeks
  
  # Number of invitations users can send.
  # If invitation_limit is nil, users can send unlimited invitations.
  # If invitation_limit is 0, users can't send invitations.
  # If invitation_limit n > 0, users can send n invitations.
  # Default: nil
  # config.invitation_limit = 5
  
  # The key to be used to check existing users when sending an invitation
  # config.invite_key = :email
  
  # Flag that force a record to be valid before being actually invited 
  # Default: false
  # config.validate_on_invite = true

CONTENT
            end
          end
        end
      end
      
      def copy_locale
        copy_file "../../../config/locales/en.yml", "config/locales/devise_invitable.en.yml"
      end
      
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
devise_invitable-1.0.1 lib/generators/devise_invitable/install_generator.rb
devise_invitable-1.0.0 lib/generators/devise_invitable/install_generator.rb
devise_invitable-0.6.1 lib/generators/devise_invitable/install_generator.rb
devise_invitable-0.6.0 lib/generators/devise_invitable/install_generator.rb
devise_invitable-0.5.7 lib/generators/devise_invitable/install_generator.rb
devise_invitable-0.5.6 lib/generators/devise_invitable/install_generator.rb
devise_invitable-0.5.5 lib/generators/devise_invitable/install_generator.rb
devise_invitable-0.5.4 lib/generators/devise_invitable/install_generator.rb
devise_invitable-0.5.3 lib/generators/devise_invitable/install_generator.rb
devise_invitable-0.5.2 lib/generators/devise_invitable/install_generator.rb
devise_invitable-0.5.1 lib/generators/devise_invitable/install_generator.rb
devise_invitable-0.5.0 lib/generators/devise_invitable/install_generator.rb
devise_invitable-0.4.2 lib/generators/devise_invitable/install_generator.rb