mirror of
https://github.com/discourse/discourse.git
synced 2025-09-06 10:50:21 +08:00
allow auth plugins to have a site setting for if they should be full screen vs popup window
This commit is contained in:
parent
e42038eae2
commit
def2c977ce
2 changed files with 14 additions and 2 deletions
|
@ -47,7 +47,17 @@ const LoginMethod = Ember.Object.extend({
|
||||||
customLogin();
|
customLogin();
|
||||||
} else {
|
} else {
|
||||||
let authUrl = this.get("customUrl") || Discourse.getURL("/auth/" + name);
|
let authUrl = this.get("customUrl") || Discourse.getURL("/auth/" + name);
|
||||||
if (this.get("fullScreenLogin")) {
|
|
||||||
|
// first check if this plugin has a site setting for full screen login before using the static setting
|
||||||
|
let fullScreenLogin = false;
|
||||||
|
const fullScreenLoginSetting = this.get("fullScreenLoginSetting");
|
||||||
|
if (!Ember.isEmpty(fullScreenLoginSetting)) {
|
||||||
|
fullScreenLogin = this.siteSettings[fullScreenLoginSetting];
|
||||||
|
} else {
|
||||||
|
fullScreenLogin = this.get("fullScreenLogin")
|
||||||
|
}
|
||||||
|
|
||||||
|
if (fullScreenLogin) {
|
||||||
document.cookie = "fsl=true";
|
document.cookie = "fsl=true";
|
||||||
window.location = authUrl;
|
window.location = authUrl;
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -2,7 +2,8 @@ class Plugin::AuthProvider
|
||||||
|
|
||||||
def self.auth_attributes
|
def self.auth_attributes
|
||||||
[:glyph, :background_color, :pretty_name, :title, :message, :frame_width, :frame_height, :authenticator,
|
[:glyph, :background_color, :pretty_name, :title, :message, :frame_width, :frame_height, :authenticator,
|
||||||
:pretty_name_setting, :title_setting, :enabled_setting, :full_screen_login, :custom_url]
|
:pretty_name_setting, :title_setting, :enabled_setting, :full_screen_login, :full_screen_login_setting,
|
||||||
|
:custom_url]
|
||||||
end
|
end
|
||||||
|
|
||||||
attr_accessor(*auth_attributes)
|
attr_accessor(*auth_attributes)
|
||||||
|
@ -23,6 +24,7 @@ class Plugin::AuthProvider
|
||||||
result['frameWidth'] = frame_width if frame_width
|
result['frameWidth'] = frame_width if frame_width
|
||||||
result['frameHeight'] = frame_height if frame_height
|
result['frameHeight'] = frame_height if frame_height
|
||||||
result['fullScreenLogin'] = full_screen_login if full_screen_login
|
result['fullScreenLogin'] = full_screen_login if full_screen_login
|
||||||
|
result['fullScreenLoginSetting'] = full_screen_login_setting if full_screen_login_setting
|
||||||
result.to_json
|
result.to_json
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue