FEATURE: add profile_background fields into SSO (#5701)

Add profile_background and card_background fields into Discourse SSO.
This commit is contained in:
Misaka 0x4e21
2018-05-07 08:03:26 +00:00
committed by Régis Hanol
parent 5a57a454fe
commit ff6be3c2e3
15 changed files with 474 additions and 4 deletions

View File

@ -1,5 +1,6 @@
require_dependency 'rate_limiter'
require_dependency 'single_sign_on'
require_dependency 'url_helper'
class SessionController < ApplicationController
class LocalLoginNotAllowed < StandardError; end
@ -54,6 +55,26 @@ class SessionController < ApplicationController
sso.moderator = current_user.moderator?
sso.groups = current_user.groups.pluck(:name).join(",")
sso.avatar_url = Discourse.store.cdn_url UrlHelper.absolute(
"#{Discourse.store.absolute_base_url}/#{Discourse.store.get_path_for_upload(current_user.uploaded_avatar)}"
) unless current_user.uploaded_avatar.nil?
sso.profile_background_url = UrlHelper.absolute upload_cdn_path(
current_user.user_profile.profile_background
) if current_user.user_profile.profile_background.present?
sso.card_background_url = UrlHelper.absolute upload_cdn_path(
current_user.user_profile.card_background
) if current_user.user_profile.card_background.present?
sso.avatar_url = Discourse.store.cdn_url UrlHelper.absolute(
"#{Discourse.store.absolute_base_url}/#{Discourse.store.get_path_for_upload(current_user.uploaded_avatar)}"
) unless current_user.uploaded_avatar.nil?
sso.profile_background_url = UrlHelper.absolute upload_cdn_path(
current_user.user_profile.profile_background
) if current_user.user_profile.profile_background.present?
sso.card_background_url = UrlHelper.absolute upload_cdn_path(
current_user.user_profile.card_background
) if current_user.user_profile.card_background.present?
if sso.return_sso_url.blank?
render plain: "return_sso_url is blank, it must be provided", status: 400
return