module DMap::Validations::Core::Numbers
Public Class Methods
run(valid)
click to toggle source
# File lib/dmap/validations/core.rb, line 33 def self.run(valid) validation = valid # Let's get the minimum/maximum numbers e.g. 20min50max minimum = validation[/(\d+)min/, 1] # fetch min unless minimum.nil? # take it out validation.sub!(/\d+min/i, '') end maximum = validation[/(\d+)max/, 1] unless maximum.nil? # take it out validation.sub!(/\d+max/i, '') end # Now for the min..max e.g. 20..50 within = validation[/(\d+\.\.\d+)/, 1] unless minimum or maximum validation.sub!(/\d+\.\.\d+/, '') # Just equals? e.g. length_of=5 equals = validation[/^(\d+)$/, 1] unless minimum or maximum validation.sub!(/^\d+$/, '') Hash[:cmd => validation, :min => minimum, :max => maximum, :within => within, :equals => equals] end