Sha256: c317fed4c2e66b5d4a4602e1a49a550131f1c37c0b789fbe6fb5c873dcc54d2a
Contents?: true
Size: 673 Bytes
Versions: 4
Compression:
Stored size: 673 Bytes
Contents
module FinePrint class Signature < ActiveRecord::Base belongs_to :contract, :inverse_of => :signatures belongs_to :user, :polymorphic => true validate :contract_published, :on => :create validates :contract, :presence => true, :uniqueness => {:scope => [:user_type, :user_id]} validates :user, :presence => true default_scope { order(:contract_id, :user_type, :user_id) } protected ############## # Validation # ############## def contract_published return if contract.is_published? errors.add(:contract, 'needs to be published before it can be signed') false end end end
Version data entries
4 entries across 4 versions & 1 rubygems