unique mailing list tokens for everyone!
This commit is contained in:
parent
b641d0232d
commit
78603d8349
|
@ -34,7 +34,8 @@ class User < ActiveRecord::Base
|
|||
:pushover_mentions
|
||||
|
||||
before_save :check_session_token
|
||||
after_create :create_default_tag_filters, :create_rss_token
|
||||
after_create :create_default_tag_filters, :create_rss_token,
|
||||
:create_mailing_list_token
|
||||
|
||||
BANNED_USERNAMES = [ "admin", "administrator", "hostmaster", "mailer-daemon",
|
||||
"postmaster", "root", "security", "support", "webmaster", ]
|
||||
|
@ -78,6 +79,12 @@ class User < ActiveRecord::Base
|
|||
end
|
||||
end
|
||||
|
||||
def create_mailing_list_token
|
||||
if self.mailing_list_token.blank?
|
||||
self.mailing_list_token = Utils.random_str(10)
|
||||
end
|
||||
end
|
||||
|
||||
def unread_message_count
|
||||
Keystore.value_for("user:#{self.id}:unread_messages").to_i
|
||||
end
|
||||
|
|
13
db/migrate/20130622021035_add_user_list_id.rb
Normal file
13
db/migrate/20130622021035_add_user_list_id.rb
Normal file
|
@ -0,0 +1,13 @@
|
|||
class AddUserListId < ActiveRecord::Migration
|
||||
def up
|
||||
add_column :users, :mailing_list_token, :string
|
||||
add_column :users, :mailing_list_enabled, :boolean, :default => false
|
||||
|
||||
add_index "users", [ "mailing_list_enabled" ]
|
||||
end
|
||||
|
||||
def down
|
||||
remove_column :users, :mailing_list_token
|
||||
remove_column :users, :mailing_list_enabled
|
||||
end
|
||||
end
|
10
db/schema.rb
10
db/schema.rb
|
@ -11,7 +11,7 @@
|
|||
#
|
||||
# It's strongly recommended to check this file into your version control system.
|
||||
|
||||
ActiveRecord::Schema.define(:version => 20130526164230) do
|
||||
ActiveRecord::Schema.define(:version => 20130622021035) do
|
||||
|
||||
create_table "comments", :force => true do |t|
|
||||
t.datetime "created_at", :null => false
|
||||
|
@ -142,9 +142,15 @@ ActiveRecord::Schema.define(:version => 20130526164230) do
|
|||
t.boolean "is_moderator", :default => false
|
||||
t.boolean "email_mentions", :default => false
|
||||
t.boolean "pushover_mentions", :default => false
|
||||
t.string "rss_token"
|
||||
t.string "rss_token", :limit => 75
|
||||
t.string "mailing_list_token", :limit => 75
|
||||
t.boolean "mailing_list_enabled", :default => false
|
||||
end
|
||||
|
||||
add_index "users", ["mailing_list_enabled"], :name => "mailing_list_enabled"
|
||||
add_index "users", ["mailing_list_token"], :name => "mailing_list_token", :unique => true
|
||||
add_index "users", ["password_reset_token"], :name => "password_reset_token", :unique => true
|
||||
add_index "users", ["rss_token"], :name => "rss_token", :unique => true
|
||||
add_index "users", ["session_token"], :name => "session_hash", :unique => true
|
||||
add_index "users", ["username"], :name => "username", :unique => true
|
||||
|
||||
|
|
Loading…
Reference in a new issue