Module: Moderated::InstanceMethods

Defined in:
lib/moderated.rb

Instance Method Summary collapse

Instance Method Details

#approved?Boolean

Returns:

  • (Boolean)


75
76
77
# File 'lib/moderated.rb', line 75

def approved?
  !self.flagged? && !self.blocked?
end

#block!Object



95
96
97
98
99
100
101
102
# File 'lib/moderated.rb', line 95

def block!
  self.flagged      = false
  self.blocked      = true
  self.moderated_at = Time.now
  self.save({:validate => false})
  
  self.after_block if(self.respond_to?(:after_block))
end

#blocked?Boolean

Returns:

  • (Boolean)


71
72
73
# File 'lib/moderated.rb', line 71

def blocked? 
  eval("self.#{blocked_column} == true")
end

#blocked_columnObject Also known as: block_column



62
63
64
# File 'lib/moderated.rb', line 62

def blocked_column
  self.class.blocked_column
end

#flag!Object



79
80
81
82
83
84
85
# File 'lib/moderated.rb', line 79

def flag!
  # don't re-flag items that were already moderated
  if self.moderated_at.blank? 
    self.update_attribute(flagged_column, true)
    self.after_flag if(self.respond_to?(:after_flag))
  end
end

#flagged?Boolean

Returns:

  • (Boolean)


67
68
69
# File 'lib/moderated.rb', line 67

def flagged?
  eval("self.#{flagged_column} == true")
end

#flagged_columnObject Also known as: flag_column



57
58
59
# File 'lib/moderated.rb', line 57

def flagged_column
  self.class.flagged_column
end

#unblock!Object



104
105
106
107
108
109
110
# File 'lib/moderated.rb', line 104

def unblock!
  self.flagged = self.blocked = false
  self.moderated_at = Time.now
  self.save({:validate => false})
  
  self.after_unblock if(self.respond_to?(:after_unblock))
end

#unflag!Object



87
88
89
90
91
92
93
# File 'lib/moderated.rb', line 87

def unflag!
  self.flagged      = false
  self.moderated_at = Time.now
  self.save({:validate => false})
  
  self.after_unflag if(self.respond_to?(:after_unflag))
end