class AgentStep < ActiveRecord::Base belongs_to :mission_agent has_many :step_validations, :dependent => :destroy has_many :step_submissions accepts_nested_attributes_for :step_validations, allow_destroy:true acts_as_list scope: :mission_agent def create_submission(step_submission, contents) submission = StepSubmission.new(step_submission) submission.agent_step = self validation_number = 0 self.step_validations.each do |validation| if validation.validation_type == 'ValidationText' submission.submission_contents << SubmissionContent.new submission_text = contents[validation_number][:submission_text] submission.submission_contents.last.build_submission('SubmissionText', submission_text) end end validation_number = validation_number + 1 return submission end def is_completed self.step_submissions.each do |s| if s.validated == true return true end end return false end def is_validating if self.step_submissions.count > 0 && self.step_submissions.last.validated == nil return true else return false end end def icons icons = '' if self.step_validations.count > 0 self.step_validations.each do |validation| case validation.validation_type when 'ValidationText' icons = icons + '' when 'ValidationImage' icons = icons + '' else icons = icons + '' end end else icons = icons + '' end return icons end end