module Hancock::Seo::Models::Seo

Public Class Methods

admin_cannot_actions() click to toggle source

def self.admin_can_default_actions

[:show, :read, :edit, :update].freeze

end def self.manager_can_default_actions

[:show, :read, :edit, :update].freeze

end

# File lib/hancock/seo/models/seo.rb, line 57
def self.admin_cannot_actions
  [:new, :create].freeze
end
clear_empty_objects() click to toggle source
# File lib/hancock/seo/models/seo.rb, line 81
def self.clear_empty_objects
  Hancock::Seo::Seo.where(:id.in => with_empty_objects).delete_all
end
goto_hancock() click to toggle source
# File lib/hancock/seo/models/seo.rb, line 25
def self.goto_hancock
  self.where(seoable_type: /^Enjoy/).all.map { |s|
    unless s.seoable.blank?
      s.seoable_type = s.seoable_type.sub("Enjoy", "Hancock")
      s.seoable_type = "Hancock::Pages::Page" if s.seoable_type == "Hancock::Page"
      s.seoable_type = "Hancock::Catalog::Category" if s.seoable_type == "Hancock::Catalog::ItemCategory"
      s.seoable_type = "Hancock::News::Category" if s.seoable_type == "Hancock::News::NewsCategory"
    end
    s.save
  }
end
manager_can_add_actions() click to toggle source
# File lib/hancock/seo/models/seo.rb, line 64
def self.manager_can_add_actions
  ret = [:robots_txt_for_model]
  # ret += [:multiple_file_upload, :sort_embedded] if Hancock::Seo.mongoid?
  ret << :model_settings if Hancock::Seo.config.model_settings_support
  # ret << :model_accesses if Hancock::Seo.config.user_abilities_support
  ret += [:comments, :model_comments] if Hancock::Seo.config.ra_comments_support
  ret.freeze
end
manager_cannot_actions() click to toggle source
# File lib/hancock/seo/models/seo.rb, line 60
def self.manager_cannot_actions
  [:new, :create].freeze
end
rails_admin_add_visible_actions() click to toggle source
# File lib/hancock/seo/models/seo.rb, line 72
def self.rails_admin_add_visible_actions
  ret = [:robots_txt_for_model]
  # ret += [:multiple_file_upload, :sort_embedded] if Hancock::Seo.mongoid?
  ret << :model_settings if Hancock::Seo.config.model_settings_support
  ret << :model_accesses if Hancock::Seo.config.user_abilities_support
  ret += [:comments, :model_comments] if Hancock::Seo.config.ra_comments_support
  ret.freeze
end
with_empty_objects() click to toggle source
# File lib/hancock/seo/models/seo.rb, line 85
def self.with_empty_objects
  Hancock::Seo::Seo.all.select { |s|
    !s.seoable.nil? rescue true
  }.map(&:id)
end

Public Instance Methods

og_image_jcrop_options() click to toggle source
# File lib/hancock/seo/models/seo.rb, line 108
def og_image_jcrop_options
  {}
end
og_image_styles() click to toggle source
# File lib/hancock/seo/models/seo.rb, line 104
def og_image_styles
  {thumb: "160x120>", standard: "800x600>"}
end
set_default_seo() click to toggle source
# File lib/hancock/seo/models/seo.rb, line 93
def set_default_seo
  _obj = self.seoable
  if _obj and _obj.set_default_seo?
    self.h1           = _obj.default_seo_h1           if self.h1.blank?
    self.title        = _obj.default_seo_title        if self.title.blank?
    self.keywords     = _obj.default_seo_keywords     if self.keywords.blank?
    self.description  = _obj.default_seo_description  if self.description.blank?
    self.title        = _obj.default_seo_og_title     if self.title.blank?
  end
end