module Utilities
Public Instance Methods
fetch_user_data()
click to toggle source
# File lib/git/profile.rb, line 18 def fetch_user_data username = ask("enter your username:") email = ask("enter your email:") unless email =~ /\A[\w+\-.]+@[a-z\d\-]+(\.[a-z\d\-]+)*\.[a-z]+\z/i say("Invalid email address, Try Again! \n") self.fetch_user_data end return [username, email] end
save(username, email)
click to toggle source
# File lib/git/profile.rb, line 30 def save(username, email) profiles = File.join(Dir.home, "/.git-profile/profiles.yml") if File.zero?(profiles) users = {users: [{username: "#{username}", email: "#{email}"}]} File.open(profiles, "w") { |file| file.write(users.to_yaml) } else if user_exists?(email) say("User already exists!") exit end users = YAML.load(File.read(profiles)) user = {username: "#{username}", email: "#{email}"} users[:users].push(user) File.open(profiles, "w") { |file| file.write(users.to_yaml) } end say("User #{username} <#{email}> has been added!") end
user_exists?(email)
click to toggle source
# File lib/git/profile.rb, line 7 def user_exists?(email) profiles = File.join(Dir.home, "/.git-profile/profiles.yml") users = YAML.load(File.read(profiles)) emails = users[:users].filter do |user| user[:email] == email end emails.empty? ? false : true end