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
|
:pushover_mentions
|
||||||
|
|
||||||
before_save :check_session_token
|
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",
|
BANNED_USERNAMES = [ "admin", "administrator", "hostmaster", "mailer-daemon",
|
||||||
"postmaster", "root", "security", "support", "webmaster", ]
|
"postmaster", "root", "security", "support", "webmaster", ]
|
||||||
|
@ -78,6 +79,12 @@ class User < ActiveRecord::Base
|
||||||
end
|
end
|
||||||
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
|
def unread_message_count
|
||||||
Keystore.value_for("user:#{self.id}:unread_messages").to_i
|
Keystore.value_for("user:#{self.id}:unread_messages").to_i
|
||||||
end
|
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.
|
# 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|
|
create_table "comments", :force => true do |t|
|
||||||
t.datetime "created_at", :null => false
|
t.datetime "created_at", :null => false
|
||||||
|
@ -142,9 +142,15 @@ ActiveRecord::Schema.define(:version => 20130526164230) do
|
||||||
t.boolean "is_moderator", :default => false
|
t.boolean "is_moderator", :default => false
|
||||||
t.boolean "email_mentions", :default => false
|
t.boolean "email_mentions", :default => false
|
||||||
t.boolean "pushover_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
|
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", ["session_token"], :name => "session_hash", :unique => true
|
||||||
add_index "users", ["username"], :name => "username", :unique => true
|
add_index "users", ["username"], :name => "username", :unique => true
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue