From 376ce443efdd5c8c67753be2a542d13c33036371 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ra=C3=BAl=20Fuentes?= Date: Tue, 10 Apr 2018 15:09:01 +0200 Subject: [PATCH] Add logic to user verification changed functions on verification.rb, the first thing they do is return true whene skip_user_verification is active. changed show_welcome_screen? on user.rb, now its shows the welcome page even with te option active. changed welcome.html.erb, now if the user see this view and the option is activated, all 4 checks are green, not only 2. --- app/models/concerns/verification.rb | 11 +++++++++++ app/models/user.rb | 3 ++- app/views/welcome/welcome.html.erb | 27 ++++++++++++++++++++++++--- 3 files changed, 37 insertions(+), 4 deletions(-) diff --git a/app/models/concerns/verification.rb b/app/models/concerns/verification.rb index b8d23f594..0dcb90500 100644 --- a/app/models/concerns/verification.rb +++ b/app/models/concerns/verification.rb @@ -10,31 +10,42 @@ module Verification scope :incomplete_verification, -> { where("(users.residence_verified_at IS NULL AND users.failed_census_calls_count > ?) OR (users.residence_verified_at IS NOT NULL AND (users.unconfirmed_phone IS NULL OR users.confirmed_phone IS NULL))", 0) } end + def skip_verification? + Setting["feature.user.skip_verification"].present? + end + def verification_email_sent? + return true if skip_verification? email_verification_token.present? end def verification_sms_sent? + return true if skip_verification? unconfirmed_phone.present? && sms_confirmation_code.present? end def verification_letter_sent? + return true if skip_verification? letter_requested_at.present? && letter_verification_code.present? end def residence_verified? + return true if skip_verification? residence_verified_at.present? end def sms_verified? + return true if skip_verification? confirmed_phone.present? end def level_two_verified? + return true if skip_verification? level_two_verified_at.present? || (residence_verified? && sms_verified?) end def level_three_verified? + return true if skip_verification? verified_at.present? end diff --git a/app/models/user.rb b/app/models/user.rb index db8922556..aaec3e411 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -247,7 +247,8 @@ class User < ActiveRecord::Base end def show_welcome_screen? - sign_in_count == 1 && unverified? && !organization && !administrator? + verification = Setting["feature.user.skip_verification"].present? ? true : unverified? + sign_in_count == 1 && verification && !organization && !administrator? end def password_required? diff --git a/app/views/welcome/welcome.html.erb b/app/views/welcome/welcome.html.erb index 696c040a9..ec51e225f 100644 --- a/app/views/welcome/welcome.html.erb +++ b/app/views/welcome/welcome.html.erb @@ -7,8 +7,22 @@

@@ -19,7 +33,14 @@ <%= t("welcome.welcome.user_permission_verify") %>

- <%= link_to(t("welcome.welcome.user_permission_verify_my_account"), verification_path, class: "button success radius expand") %> + <% if current_user.level_three_verified? %> +

+ + <%= t("account.show.verified_account") %> +

+ <% else %> + <%= link_to(t("welcome.welcome.user_permission_verify_my_account"), verification_path, class: "button success radius expand") %> + <% end %>

<%= link_to t("welcome.welcome.go_to_index"), proposals_path %>