Class: Orcid::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- Orcid::InstallGenerator
- Defined in:
- lib/generators/orcid/install/install_generator.rb
Instance Method Summary collapse
- #install_devise_multi_auth ⇒ Object
- #install_initializer ⇒ Object
- #install_migrations ⇒ Object
- #install_omniauth_strategies ⇒ Object
- #mount_orcid_engine ⇒ Object
Instance Method Details
#install_devise_multi_auth ⇒ Object
9 10 11 12 13 14 15 |
# File 'lib/generators/orcid/install/install_generator.rb', line 9 def install_devise_multi_auth if [:devise] generate 'devise:multi_auth:install --install_devise' else generate 'devise:multi_auth:install' end end |
#install_initializer ⇒ Object
42 43 44 |
# File 'lib/generators/orcid/install/install_generator.rb', line 42 def install_initializer template 'orcid_initializer.rb.erb', 'config/orcid_initializer.rb' end |
#install_migrations ⇒ Object
17 18 19 |
# File 'lib/generators/orcid/install/install_generator.rb', line 17 def install_migrations rake "orcid:install:migrations" end |
#install_omniauth_strategies ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/generators/orcid/install/install_generator.rb', line 21 def install_omniauth_strategies config_code = ", :omniauthable, :omniauth_providers => [:orcid]" insert_into_file 'app/models/user.rb', config_code, { :after => /:validatable/, :verbose => false } init_code = %( config.omniauth(:orcid, Orcid.provider.id, Orcid.provider.secret, scope: Orcid.provider.authentication_scope, client_options: { site: Orcid.provider.site_url, authorize_url: Orcid.provider.authorize_url, token_url: Orcid.provider.token_url } ) ) insert_into_file 'config/initializers/devise.rb', init_code, {after: /Devise\.setup.*$/, verbose: true} end |
#mount_orcid_engine ⇒ Object
38 39 40 |
# File 'lib/generators/orcid/install/install_generator.rb', line 38 def mount_orcid_engine route 'mount Orcid::Engine => "/orcid"' end |