Sha256: 78fa95eb142362dbce3434e98eb404bcf3fbffc284381874e6f80df407d7bd9d
Contents?: true
Size: 1.13 KB
Versions: 7
Compression:
Stored size: 1.13 KB
Contents
module TextMagic class API module Validation MAX_LENGTH_GSM = [160, 306, 459] MAX_LENGTH_UNICODE = [70, 134, 201] # 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
7 entries across 7 versions & 2 rubygems