class Sufia::Models::InstallGenerator

Public Instance Methods

banner() click to toggle source
cached_stats() click to toggle source

Sets up cached usage stats

# File lib/generators/sufia/models/install_generator.rb, line 95
def cached_stats
  generate 'sufia:models:cached_stats'
end
clamav() click to toggle source

Adds clamav initializtion

# File lib/generators/sufia/models/install_generator.rb, line 110
def clamav
  generate 'sufia:models:clamav'
end
configure_usage_stats() click to toggle source
# File lib/generators/sufia/models/install_generator.rb, line 80
def configure_usage_stats
  generate 'sufia:models:usagestats'
end
copy_migrations() click to toggle source

Setup the database migrations

# File lib/generators/sufia/models/install_generator.rb, line 25
def copy_migrations
  [
    "acts_as_follower_migration.rb",
    "add_social_to_users.rb",
    "create_single_use_links.rb",
    "add_ldap_attrs_to_user.rb",
    "add_avatars_to_users.rb",
    "create_checksum_audit_logs.rb",
    "create_version_committers.rb",
    "add_groups_to_users.rb",
    "create_local_authorities.rb",
    "create_trophies.rb",
    'add_linkedin_to_users.rb',
    'create_tinymce_assets.rb',
    'create_content_blocks.rb',
    'create_featured_works.rb',
    'add_external_key_to_content_blocks.rb'
  ].each do |file|
    better_migration_template file
  end
end
create_collection() click to toggle source
# File lib/generators/sufia/models/install_generator.rb, line 72
def create_collection
  copy_file 'app/models/collection.rb', 'app/models/collection.rb'
end
create_configuration_files() click to toggle source
# File lib/generators/sufia/models/install_generator.rb, line 60
def create_configuration_files
  append_file 'config/initializers/mime_types.rb',
              "\nMime::Type.register 'application/x-endnote-refer', :endnote", verbose: false
  copy_file 'config/sufia.rb', 'config/initializers/sufia.rb'
  copy_file 'config/redis.yml', 'config/redis.yml'
  copy_file 'config/resque-pool.yml', 'config/resque-pool.yml'
  copy_file 'config/redis_config.rb', 'config/initializers/redis_config.rb'
  copy_file 'config/resque_admin.rb', 'config/initializers/resque_admin.rb'
  copy_file 'config/resque_config.rb', 'config/initializers/resque_config.rb'
  copy_file 'config/resque.rake', 'lib/tasks/resque.rake'
end
full_text_indexing() click to toggle source

Sets up full-text indexing (Solr config + jars)

# File lib/generators/sufia/models/install_generator.rb, line 85
def full_text_indexing
  generate "sufia:models:fulltext"
end
inject_sufia_user_behavior() click to toggle source

Add behaviors to the user model

# File lib/generators/sufia/models/install_generator.rb, line 48
def inject_sufia_user_behavior
  file_path = "app/models/#{model_name.underscore}.rb"
  if File.exist?(file_path)
    inject_into_file file_path, after: /include Hydra\:\:User.*$/ do
      "# Connects this user object to Sufia behaviors. " +
        "\n include Sufia::User\n"
    end
  else
    puts "     \e[31mFailure\e[0m  Sufia requires a user object. This generators assumes that the model is defined in the file #{file_path}, which does not exist.  If you used a different name, please re-run the generator and provide that name as an argument. Such as \b  rails -g sufia client"
  end
end
install_mailboxer() click to toggle source
# File lib/generators/sufia/models/install_generator.rb, line 76
def install_mailboxer
  generate "mailboxer:install"
end
minimagick_config() click to toggle source

Add mini-magick configuration

# File lib/generators/sufia/models/install_generator.rb, line 115
def minimagick_config
  generate 'sufia:models:minimagick_config'
end
orcid_field() click to toggle source

Adds orcid field to user model

# File lib/generators/sufia/models/install_generator.rb, line 100
def orcid_field
  generate 'sufia:models:orcid_field'
end
proxies() click to toggle source

Sets up proxies and transfers

# File lib/generators/sufia/models/install_generator.rb, line 90
def proxies
  generate "sufia:models:proxies"
end
user_stats() click to toggle source

Adds user stats-related migration & methods

# File lib/generators/sufia/models/install_generator.rb, line 105
def user_stats
  generate 'sufia:models:user_stats'
end