remove GooglePlusConfig and GooglePlusController

pull/14659/head
Gonzalo Riestra 6 years ago
parent f5b87793b5
commit f3f7b1254e

@ -1,6 +1,5 @@
# coding: utf-8
require_dependency 'google_plus_api'
require_dependency 'google_plus_config'
require_dependency 'google_sign_in_config'
require_dependency 'carto/controller_helper'
require_dependency 'dummy_password_generator'
@ -17,7 +16,6 @@ class Admin::OrganizationUsersController < Admin::AdminController
before_filter :login_required, :check_permissions, :load_organization
before_filter :get_user, only: [:edit, :update, :destroy, :regenerate_api_key]
before_filter :ensure_edit_permissions, only: [:edit, :update, :destroy, :regenerate_api_key]
before_filter :initialize_google_plus_config, only: [:edit, :update]
layout 'application'
@ -289,10 +287,6 @@ class Admin::OrganizationUsersController < Admin::AdminController
@extra_tweets_enabled = extra_tweets_enabled?
end
def initialize_google_plus_config
@google_plus_config = ::GoogleSignInConfig.instance(CartoDB, Cartodb.config)
end
def check_permissions
raise RecordNotFound unless current_user.organization_admin?
end

@ -1,5 +1,4 @@
require_dependency 'google_plus_api'
require_dependency 'google_plus_config'
require_dependency 'google_sign_in_config'
require_relative '../../helpers/avatar_helper'
require_dependency 'carto/controller_helper'
@ -25,7 +24,6 @@ module Carto
ssl_required
before_action :initialize_google_plus_config, only: [:me]
before_action :optional_api_authorization, only: [:me]
before_action :any_api_authorization_required, only: [:me_public]
before_action :recalculate_user_db_size, only: [:me]
@ -66,8 +64,6 @@ module Carto
user_frontend_version: carto_viewer.try(:relevant_frontend_version) || CartoDB::Application.frontend_version,
asset_host: carto_viewer.try(:asset_host),
google_sign_in: carto_viewer.try(:google_sign_in),
google_plus_iframe_src: carto_viewer.present? ? google_plus_iframe_src : nil,
google_plus_client_id: carto_viewer.present? ? google_plus_client_id : nil,
mfa_required: multifactor_authentication_required?
}
end
@ -143,14 +139,6 @@ module Carto
private
def google_plus_iframe_src
@google_plus_config.present? ? @google_plus_config.iframe_src : nil
end
def google_plus_client_id
@google_plus_config.present? ? @google_plus_config.client_id : nil
end
def unfiltered_organization_notifications(carto_viewer)
carto_viewer.received_notifications.order('received_at DESC').limit(10).map do |n|
Carto::Api::ReceivedNotificationPresenter.new(n).to_hash
@ -161,10 +149,6 @@ module Carto
carto_viewer.received_notifications.unread.map { |n| Carto::Api::ReceivedNotificationPresenter.new(n).to_hash }
end
def initialize_google_plus_config
@google_plus_config = ::GoogleSignInConfig.instance(CartoDB, Cartodb.config)
end
def render_auth_users_data(user, referrer, subdomain, referrer_organization_username=nil)
organization_name = nil

@ -1,53 +0,0 @@
# encoding: UTF-8
require_dependency 'google_plus_api'
class GooglePlusController < ApplicationController
include DummyPasswordGenerator
layout 'frontend'
def google_plus
headers['X-Frame-Options'] = 'SAMEORIGIN'
@config = GoogleSignInConfig.new(CartoDB, Cartodb.config)
render 'google_plus'
end
def google_signup
api = Carto::Oauth::Api::Google.new(nil, params[:google_signup_access_token])
user_data = api.user_params
create_user(user_data)
common_data_url = CartoDB::Visualization::CommonDataService.build_url(self)
user.load_common_data(common_data_url)
CartoGearsApi::Events::EventManager.instance.notify(
CartoGearsApi::Events::UserCreationEvent.new(
CartoGearsApi::Events::UserCreationEvent::CREATED_VIA_ORG_SIGNUP, user
)
)
redirect_to CartoDB.path(self, 'dashboard', trailing_slash: true)
end
private
def create_user(user_data)
email = user_data.email
username = user_data.username
throw 'illegal Google token' unless email.present?
existing_user = ::User.where("email = '#{email}' OR username = '#{username}'").first
throw 'existing user' unless existing_user == nil
user = ::User.new(username: username, email: email, google_sign_in: true)
dummy_password = generate_dummy_password
user.password = dummy_password
user.password_confirmation = dummy_password
user.save(raise_on_failure: true)
user.create_in_central
end
end

@ -1,6 +1,4 @@
# encoding: UTF-8
require_dependency 'google_plus_config'
require_dependency 'google_plus_api'
require_dependency 'carto/oauth/github/config'
require_dependency 'carto/oauth/google/config'
require_dependency 'carto/saml_service'
@ -267,10 +265,10 @@ class SessionsController < ApplicationController
protected
def initialize_oauth_config
@oauth_configs = [google_plus_config, github_config].compact
@oauth_configs = [google_config, github_config].compact
end
def google_plus_config
def google_config
unless @organization && !@organization.auth_google_enabled
Carto::Oauth::Google::Config.instance(form_authenticity_token, google_oauth_url,
invitation_token: params[:invitation_token],
@ -354,13 +352,6 @@ class SessionsController < ApplicationController
user = api.user
if user
[:google_access_token, params[:user_domain].present? ? params[:user_domain] : user.username]
elsif user == false
# token not valid
nil
else
# token valid, unknown user
@google_plus_config.unauthenticated_valid_access_token = params[:google_access_token]
nil
end
end
end
@ -374,7 +365,7 @@ class SessionsController < ApplicationController
end
def google_authentication?
params[:google_access_token].present? && @google_plus_config.present?
params[:google_access_token].present?
end
def ldap_authentication?

@ -1,4 +1,3 @@
require_dependency 'google_plus_config'
require_dependency 'account_creator'
require_relative '../../lib/user_account_creator'
@ -136,10 +135,10 @@ class SignupController < ApplicationController
end
def initialize_oauth_config
@oauth_configs = [google_plus_config, github_config].compact
@oauth_configs = [google_config, github_config].compact
end
def google_plus_config
def google_config
unless @organization && !@organization.auth_google_enabled
@google_config = Carto::Oauth::Google::Config.instance(form_authenticity_token, google_oauth_url,
invitation_token: params[:invitation_token],

@ -15,10 +15,6 @@
// Necessary for Google + actions
var access_token = '';
<% if (@google_plus_config.present?) %>
document.domain = '<%= @google_plus_config.domain %>';
var iframe_src = '<%= @google_plus_config.iframe_src %>';
<% end %>
</script>
<% if @has_new_dashboard %>

@ -0,0 +1 @@
<a class="Sessions-oauthButton Sessions-googleButton" href="<%= config.redirect_url %>">Google</a>

@ -61,9 +61,6 @@ CartoDB::Application.routes.draw do
# This is what an external SAML endpoint should redirect to after successful auth.
post '(/user/:user_domain)(/u/:user_domain)/saml/finalize' => 'sessions#create'
get '/google_plus' => 'google_plus#google_plus', as: :google_plus
post '/google/signup' => 'google_plus#google_signup', as: :google_plus_signup
# Editor v3
scope module: 'carto', path: '(/user/:user_domain)(/u/:user_domain)' do
namespace :builder, path: '/' do

@ -1,31 +0,0 @@
class GoogleSignInConfig
attr_reader :domain, :iframe_src, :client_id, :cookie_policy, :access_token_field_id
attr_accessor :unauthenticated_valid_access_token
# @param app_module CartoDB Module containing global functions
# @param config CartoDB config
# @param access_token_field_id String
# @param button_color: hex for the color
def self.instance(app_module, config, access_token_field_id = 'google_access_token', button_color = nil)
return nil unless config[:oauth].present? && config[:oauth]['google_plus'].present?
GoogleSignInConfig.new(app_module, config, access_token_field_id, button_color)
end
def initialize(app_module, config, access_token_field_id = 'google_access_token', button_color = nil)
schema = Rails.env.development? ? 'http' : 'https'
@domain = config[:domain_name].presence || app_module.account_host.scan(/([^:]*)(:.*)?/).first.first
button_color_param = button_color.nil? ? '' : "?button_color=#{button_color}".delete('#')
iframe_src_base_url = app_module.account_host.present? ? "#{schema}://#{app_module.account_host}" : @domain
@iframe_src = "#{iframe_src_base_url}/google_plus#{button_color_param}"
@access_token_field_id = access_token_field_id
@client_id = config[:oauth]['google_plus']['client_id']
@cookie_policy = config[:oauth]['google_plus']['cookie_policy']
end
end

@ -1,7 +1,6 @@
# coding: UTF-8
require 'securerandom'
require_dependency 'google_plus_api'
require_dependency 'carto/password_validator'
require_dependency 'carto/strong_password_strategy'
require_dependency 'carto/standard_password_strategy'

Loading…
Cancel
Save