Sha256: eb240a7cfb58d580d9a30d548450148b8c1fe118d9cd08e5e17de7876f9fed8f
Contents?: true
Size: 1.15 KB
Versions: 2
Compression:
Stored size: 1.15 KB
Contents
module TextMagic class API module Validation MAX_LENGTH_GSM = [160, 306, 459].freeze MAX_LENGTH_UNICODE = [70, 134, 201].freeze # Validates message text length. Returns +true+ if the text length is # within the limits for the unicode/parts combination, otherwise it # returns +false+. # # Note: <em>Maximum lengths for 1, 2 and 3-part GSM 03.38 messages are # 160, 306 and 459 respectively. # Maximum lengths for 1, 2 and 3-part unicode messages are # 70, 134 and 201 respectively.</em> def validate_text_length(text, unicode, parts = 3) max_text_length = (unicode ? MAX_LENGTH_UNICODE : MAX_LENGTH_GSM)[parts - 1] real_length(text, unicode) <= max_text_length end # Validates a list of phone numbers. Returns +true+ if the list is not empty # and all phone numbers are digit-only strings of maximum length of 15, # otherwise it returns +false+. def validate_phones(*phones) phones.flatten! return false if phones.empty? phones.each { |phone| return false unless phone =~ /^\d{1,15}$/ } true end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
textmagic-0.7.1 | lib/textmagic/validation.rb |
textmagic-0.7.0 | lib/textmagic/validation.rb |