FIX: new sites would get enable_google_logins true, should be false now

This commit is contained in:
Neil Lalonde 2014-05-21 19:40:59 -04:00
parent 867c56d9c7
commit 8f76b76cf3
2 changed files with 12 additions and 4 deletions

View File

@ -113,9 +113,13 @@ users:
client: true
default: 8
block_common_passwords: true
# The default value of enable_google_logins changed from true to false.
# See db/migrate/20140521220115_google_openid_default_has_changed.rb
enable_google_logins:
client: true
default: false
enable_google_oauth2_logins:
client: true
default: true

View File

@ -1,11 +1,15 @@
class GoogleOpenidDefaultHasChanged < ActiveRecord::Migration
def up
result = Category.exec_sql("SELECT count(*) FROM site_settings WHERE name = 'enable_google_logins'")
users_count_query = User.exec_sql("SELECT count(*) FROM users")
if users_count_query[0]['count'].to_i > 1
# This is an existing site.
result = User.exec_sql("SELECT count(*) FROM site_settings WHERE name = 'enable_google_logins'")
if result[0]['count'].to_i == 0
# The old default was true, so add a row to keep it that way.
execute "INSERT INTO site_settings (name, data_type, value, created_at, updated_at) VALUES ('enable_google_logins', 5, 't', now(), now())"
end
end
end
def down
# No need to undo.