Sha256: a0896d1fd6bf1d470f05da9161e25a67a5d629f539c8c43b52eff0df99c2e9a9
Contents?: true
Size: 1.01 KB
Versions: 20
Compression:
Stored size: 1.01 KB
Contents
module Imap; end module Imap::Backup class Setup; end class Setup::Asker EMAIL_MATCHER = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]+$/i.freeze attr_reader :highline def initialize(highline) @highline = highline end def email(default = "") highline.ask("email address: ") do |q| q.default = default q.validate = EMAIL_MATCHER q.responses[:not_valid] = "Enter a valid email address " end end def password password = highline.ask("password: ") { |q| q.echo = false } confirmation = highline.ask("repeat password: ") { |q| q.echo = false } if password != confirmation return nil if !highline.agree( "the password and confirmation did not match.\nContinue? (y/n) " ) return self.password end password end def self.email(default = "") new(Setup.highline).email(default) end def self.password new(Setup.highline).password end end end
Version data entries
20 entries across 20 versions & 1 rubygems