module Newsletter
Constants
- PLUGIN_ROOT
an easy way to get the root of the gem's directory structure
- VERSION
Public Class Methods
abilities()
click to toggle source
# File lib/newsletter/engine.rb, line 87 def self.abilities <<-EOT if ::Newsletter.authorized?(user, ::Newsletter::Design) can :manage, [ ::Newsletter::Design, ::Newsletter::Element, ::Newsletter::Area, ::Newsletter::Field ] end if ::Newsletter.authorized?(user, ::Newsletter::Newsletter) can :manage, [ ::Newsletter::Newsletter, ::Newsletter::Piece, ::Newsletter::FieldValue ] can :read, [ ::Newsletter::Design, ::Newsletter::Element, ::Newsletter::Area, ::Newsletter::Field ] can [:sort,:publish,:unpublish], ::Newsletter::Newsletter can :sort, ::Newsletter::Area end can :read, [ ::Newsletter::Newsletter, ::Newsletter::Piece, ::Newsletter::FieldValue ] can :archive, ::Newsletter::Newsletter EOT end
assets_path()
click to toggle source
an easy way to get the root of the gem's assets
# File lib/newsletter/engine.rb, line 124 def self.assets_path File.join(PLUGIN_ROOT,'assets') end
initialize_with_config(conf)
click to toggle source
initializes the configuration options pulled from config/newsletter.yml and overrides with config/newsletter.local.yml if it exists
# File lib/newsletter/engine.rb, line 129 def self.initialize_with_config(conf) if conf.params.has_key?('table_prefix') ::Newsletter.table_prefix ||= conf.table_prefix.to_s # allow empty else ::Newsletter.table_prefix ||= 'newsletter_' end ::Newsletter.designs_path ||= conf.designs_path || "#{Rails.root}/designs" rescue "#{Rails.root}/designs" default_url_options = ActionController::Base.default_url_options default_site_url = "#{default_url_options[:protocol]||'http'}://#{default_url_options[:domain]}" ::Newsletter.site_url ||= conf.site_url || default_site_url rescue default_site_url ::Newsletter.site_path ||= conf.site_path || '/' rescue '/' ::Newsletter.layout ||= conf.layout || 'application' rescue 'application' ::Newsletter.archive_layout ||= conf.archive_layout || 'application' rescue 'application' ::Newsletter.use_show_for_resources ||= conf.use_show_for_resources || false rescue false ::Newsletter.asset_path ||= conf.asset_path || 'newsletter_assets' rescue 'newsletter_assets' ::Newsletter.show_title ||= conf.show_title || true rescue true ::Newsletter.designs_require_authentication ||= conf.designs_require_authentication || false rescue false ::Newsletter.newsletters_require_authentication ||= conf.newsletters_require_authentication || false rescue false ::Newsletter.design_authorized_roles ||= conf.design_authorized_roles || [] rescue [] ::Newsletter.newsletter_authorized_roles ||= conf.newsletter_authorized_roles || [] rescue [] ::Newsletter.roles_method ||= conf.roles_method || '' rescue '' end