Sha256: 0c137bc467b67f07fd8a9bd5bac2fcd837fcfa2bfb4d588bfb5172cbe7541b68
Contents?: true
Size: 727 Bytes
Versions: 4
Compression:
Stored size: 727 Bytes
Contents
module ActiveRecordSurvey # Can hold a value on a scale (e.g. from 0-10) class Node::Answer::Scale < Node::Answer include Answer::Chained # Accept integer, float, or empty values def validate_instance_node(instance_node) # super - all validations on this node pass super && (instance_node.value.to_s.empty? || !instance_node.value.to_s.match(/^(\d+(\.\d+)?)$/).nil?) end # Scale answers are considered answered if they have a value of greater than "0" def is_answered_for_instance?(instance) if instance_node = self.instance_node_for_instance(instance) # Answered if not empty and > 0 !instance_node.value.to_s.empty? && instance_node.value.to_i >= 0 else false end end end end
Version data entries
4 entries across 4 versions & 1 rubygems