lib/simple_captcha/utils.rb in glebtv-simple_captcha-0.3.1 vs lib/simple_captcha/utils.rb in glebtv-simple_captcha-0.4.1

- old
+ new

@@ -22,20 +22,22 @@ def self.simple_captcha_value(key) #:nodoc SimpleCaptchaData.get_data(key).value rescue nil end + def self.random_str() + charset = SimpleCaptcha.charset.split(//) + size = SimpleCaptcha.length + + (0...size).map{ charset.to_a[rand(charset.size)] }.join + end + def self.simple_captcha_new_value(key) #:nodoc begin - # very unsafe to display same code over and over - value = '' - # SimpleCaptcha.length.times{value << (48 + rand(10)).chr} - - SimpleCaptcha.length.times{value << (65 + rand(26)).chr} d = SimpleCaptchaData.get_data(key) - d.value = value + d.value = self.random_str d.save! - value + d.value rescue nil end end