Class: Storytime::Site

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/storytime/site.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.currentObject



32
33
34
# File 'app/models/storytime/site.rb', line 32

def self.current
  find(current_id) if current_id
end

.current_idObject



28
29
30
# File 'app/models/storytime/site.rb', line 28

def self.current_id
  Thread.current[:storytime_site_id]
end

.current_id=(id) ⇒ Object



24
25
26
# File 'app/models/storytime/site.rb', line 24

def self.current_id=(id)
  Thread.current[:storytime_site_id] = id
end

.setup_seedsObject



48
49
50
51
52
# File 'app/models/storytime/site.rb', line 48

def self.setup_seeds
  Storytime::Role.seed
  Storytime::Action.seed
  Storytime::Permission.seed
end

Instance Method Details

#active_email_subscriptionsObject



58
59
60
# File 'app/models/storytime/site.rb', line 58

def active_email_subscriptions
  subscriptions.active
end

#custom_view_pathObject



62
63
64
# File 'app/models/storytime/site.rb', line 62

def custom_view_path
  self.title.parameterize
end

#root_post_optionsObject



54
55
56
# File 'app/models/storytime/site.rb', line 54

def root_post_options
  Storytime::Post.published.where(type: ["Storytime::Page", "Storytime::Blog"])
end

#save_with_seeds(user) ⇒ Object



36
37
38
39
40
41
42
43
44
45
46
# File 'app/models/storytime/site.rb', line 36

def save_with_seeds(user)
  self.creator = user
  if save
    self.class.setup_seeds
    Storytime::Membership.create(user: user, site: self, storytime_role: Storytime::Role.find_by(name: "admin"))
    blog = Storytime::Blog.seed(self, user)
    self.update_column("root_post_id", blog.id)
  else
    false
  end
end