Sha256: aec6a2cc1ebbb1bba372610f8b1455333a563a364a058a4f7603cef5c37ec5e8
Contents?: true
Size: 1004 Bytes
Versions: 7
Compression:
Stored size: 1004 Bytes
Contents
# coding: utf-8 class Formily::Submit < ActiveRecord::Base self.table_name = 'formily_submits' has_paper_trail after_destroy :delete_data belongs_to :form has_many :input_values, foreign_key: :submit_id, class_name: 'Formily::InputValue', dependent: :destroy validates :form_id, presence: true validates :resource_id, presence: true validates :resource_type, presence: true STATES = { 0 => 'Not Started', 1 => 'In Progress', 2 => 'Complete' } def is_complete? self.state == 2 end def data ids = self.form.inputs.map do |i| if i.try(:inputs) i.inputs.map(&:id) else i.id end end values = self.input_values.to_a ids.map do |i| if i.is_a?(Array) values.select{|x| i.include?(x.input_id)}.map(&:get_value).join(', ') else values.select{|x| x.input_id == i}.first.get_value rescue '' end end end private def delete_data input_values.destroy_all end end
Version data entries
7 entries across 7 versions & 1 rubygems