Class: AddAuthkitFieldsToUsers

Inherits:
ActiveRecord::Migration
  • Object
show all
Defined in:
lib/generators/authkit/templates/db/migrate/add_authkit_fields_to_users.rb

Overview

Generated by Authkit.

Add fields to the users table for managing authentication.

Class Method Summary collapse

Class Method Details

.downObject



63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# File 'lib/generators/authkit/templates/db/migrate/add_authkit_fields_to_users.rb', line 63

def self.down
  drop_column :users, :email
  drop_column :users, :password_digest
  drop_column :users, :username

  drop_column :users, :time_zone
  drop_column :users, :first_name
  drop_column :users, :last_name
  drop_column :users, :bio
  drop_column :users, :website
  drop_column :users, :phone_number

  drop_column :users, :otp_secret_key

  # Tracking
  drop_column :users, :sign_in_count
  drop_column :users, :current_sign_in_at
  drop_column :users, :last_sign_in_at
  drop_column :users, :current_sign_in_ip
  drop_column :users, :last_sign_in_ip

  # Analytics
  drop_column :users, :original_source
  drop_column :users, :session_source
  drop_column :users, :first_visit_at
  drop_column :users, :last_visit_at

  # Forgot password / Password reset
  drop_column :users, :reset_password_token
  drop_column :users, :reset_password_created_at

  # Remember
  drop_column :users, :remember_token
  drop_column :users, :remember_token_created_at

  # Confirmation
  drop_column :users, :confirmation_email
  drop_column :users, :confirmation_token
  drop_column :users, :confirmation_token_created_at

  # Lockout
  drop_column :users, :failed_attempts
  drop_column :users, :locked_at
  drop_column :users, :unlock_token
  drop_column :users, :unlock_token_created_at
end

.upObject



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'lib/generators/authkit/templates/db/migrate/add_authkit_fields_to_users.rb', line 6

def self.up
  add_column :users, :email, :string, :default => "", :null => false
  add_column :users, :password_digest, :string, :default => "", :null => false
  add_column :users, :username, :string, :limit => 64

  add_column :users, :time_zone, :string, :default => "Eastern Time (US & Canada)"
  add_column :users, :first_name, :string
  add_column :users, :last_name, :string
  add_column :users, :bio, :text
  add_column :users, :website, :string
  add_column :users, :phone_number, :string

  # One time password key for two-factor auth
  add_column :users, :otp_secret_key, :string

  # Tracking
  add_column :users, :sign_in_count, :integer, :default => 0
  add_column :users, :current_sign_in_at, :datetime
  add_column :users, :last_sign_in_at, :datetime
  add_column :users, :current_sign_in_ip, :string
  add_column :users, :last_sign_in_ip, :string

  # Analytics
  add_column :users, :original_source, :string
  add_column :users, :session_source, :string
  add_column :users, :first_visit_at, :datetime
  add_column :users, :last_visit_at, :datetime

  # Forgot password / Password reset
  add_column :users, :reset_password_token, :string
  add_column :users, :reset_password_token_created_at, :datetime

  # Remember
  add_column :users, :remember_token, :string
  add_column :users, :remember_token_created_at, :datetime

  # Confirmation
  add_column :users, :confirmation_email, :string
  add_column :users, :confirmation_token, :string
  add_column :users, :confirmation_token_created_at, :string

  # Lockout
  add_column :users, :failed_attempts, :integer, :default => 0
  add_column :users, :locked_at, :datetime
  add_column :users, :unlock_token, :string
  add_column :users, :unlock_token_created_at, :datetime

  # Make sure the validations are enforced
  add_index :users, :email, :unique => true
  add_index :users, :username, :unique => true
  add_index :users, :reset_password_token, :unique => true
  add_index :users, :remember_token, :unique => true
  add_index :users, :confirmation_token, :unique => true
  add_index :users, :unlock_token, :unique => true

end