From ceb7a690d0a2341d232f8f072373198a4f8d85cb Mon Sep 17 00:00:00 2001 From: Echo Date: Mon, 19 Jan 2026 02:04:58 -0500 Subject: [PATCH] demote old slack email when signing in (#802) * demote old slack email when signing in * linting --- app/models/user.rb | 4 +++- app/views/shared/_interval_selector.html.erb | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/models/user.rb b/app/models/user.rb index 8e81661..7402b73 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -481,7 +481,6 @@ class User < ApplicationRecord email = profile["email"]&.downcase email_address = EmailAddress.find_or_initialize_by(email: email) - email_address.source ||= :slack user = email_address.user user ||= begin u = User.find_or_initialize_by(slack_uid: data.dig("authed_user", "id")) @@ -491,6 +490,9 @@ class User < ApplicationRecord u end + user.email_addresses.source_slack.where.not(email: email).update_all(source: :signing_in) + email_address.source = :slack + user.slack_uid = data.dig("authed_user", "id") user.slack_username = profile["display_name_normalized"].presence user.slack_username ||= profile["real_name_normalized"].presence diff --git a/app/views/shared/_interval_selector.html.erb b/app/views/shared/_interval_selector.html.erb index 685d02f..1677468 100644 --- a/app/views/shared/_interval_selector.html.erb +++ b/app/views/shared/_interval_selector.html.erb @@ -19,7 +19,7 @@
- +