Class: MultiformSubmission

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

Constant Summary collapse

@@plugins =
[]

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.pluginsObject



38
39
40
# File 'app/models/multiform_submission.rb', line 38

def self.plugins
  @@plugins
end

.register_plugin(clazz) ⇒ Object

Plugins will be called as follows: Clazz.on_submission(submission)



12
13
14
15
16
# File 'app/models/multiform_submission.rb', line 12

def self.register_plugin(clazz)
  @@plugins.push(clazz)
  @@plugins.uniq!
  puts "Registered Multiform Submission Plugin: #{clazz}"
end

Instance Method Details

#apply_template(html = false) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# File 'app/models/multiform_submission.rb', line 22

def apply_template(html = false)
  s = YAML.load raw
  res = multiform.report_template
  res.gsub!(/##created_at##/,self.created_at.to_s)
  res.scan(/##([^#]+)##/).each do |md|
    begin
      res.gsub!(/\#\##{md[0]}\#\#/,s[md[0]])
    rescue
    end
  end
  if html
    res.gsub!(/\n/,"<br />")
  end
  return res
end

#titleObject



18
19
20
# File 'app/models/multiform_submission.rb', line 18

def title
  "#{created_at.strftime('%D %H:%M%P')} - #{multiform.title}"
end