diff options
Diffstat (limited to 'plugins/jetpack/modules/sso')
-rw-r--r-- | plugins/jetpack/modules/sso/class.jetpack-sso-helpers.php | 34 | ||||
-rw-r--r-- | plugins/jetpack/modules/sso/jetpack-sso-login-rtl.css | 1 | ||||
-rw-r--r-- | plugins/jetpack/modules/sso/jetpack-sso-login.min.css | 1 |
3 files changed, 36 insertions, 0 deletions
diff --git a/plugins/jetpack/modules/sso/class.jetpack-sso-helpers.php b/plugins/jetpack/modules/sso/class.jetpack-sso-helpers.php index 01587b89..1bcc08a5 100644 --- a/plugins/jetpack/modules/sso/class.jetpack-sso-helpers.php +++ b/plugins/jetpack/modules/sso/class.jetpack-sso-helpers.php @@ -154,6 +154,40 @@ class Jetpack_SSO_Helpers { static function is_match_by_email_checkbox_disabled() { return defined( 'WPCC_MATCH_BY_EMAIL' ) || has_filter( 'jetpack_sso_match_by_email' ); } + + /** + * Returns an array of hosts that SSO will redirect to. + * + * Instead of accessing JETPACK__API_BASE within the method directly, we set it as the + * default for $api_base due to restrictions with testing constants in our tests. + * + * @since 4.3.0 + * + * @param array $hosts + * @param string $api_base + * + * @return array + */ + static function allowed_redirect_hosts( $hosts, $api_base = JETPACK__API_BASE ) { + if ( empty( $hosts ) ) { + $hosts = array(); + } + + $hosts[] = 'wordpress.com'; + $hosts[] = 'jetpack.wordpress.com'; + + if ( + ( Jetpack::is_development_mode() || Jetpack::is_development_version() ) && + ( false === strpos( $api_base, 'jetpack.wordpress.com/jetpack' ) ) + ) { + $base_url_parts = parse_url( esc_url_raw( $api_base ) ); + if ( $base_url_parts && ! empty( $base_url_parts[ 'host' ] ) ) { + $hosts[] = $base_url_parts[ 'host' ]; + } + } + + return array_unique( $hosts ); + } } endif; diff --git a/plugins/jetpack/modules/sso/jetpack-sso-login-rtl.css b/plugins/jetpack/modules/sso/jetpack-sso-login-rtl.css index 23993a37..cd5c8af4 100644 --- a/plugins/jetpack/modules/sso/jetpack-sso-login-rtl.css +++ b/plugins/jetpack/modules/sso/jetpack-sso-login-rtl.css @@ -1,3 +1,4 @@ +/* Do not modify this file directly. It is concatenated from individual module CSS files. */ #loginform { /* We set !important because sometimes static is added inline */ position: relative !important; diff --git a/plugins/jetpack/modules/sso/jetpack-sso-login.min.css b/plugins/jetpack/modules/sso/jetpack-sso-login.min.css index c82862e0..8902336e 100644 --- a/plugins/jetpack/modules/sso/jetpack-sso-login.min.css +++ b/plugins/jetpack/modules/sso/jetpack-sso-login.min.css @@ -1 +1,2 @@ +/* Do not modify this file directly. It is concatenated from individual module CSS files. */ #loginform{position:relative!important;padding-bottom:92px}.jetpack-sso .message{margin-top:20px}.jetpack-sso #login .message:first-child,.jetpack-sso #login h1+.message{margin-top:0}.jetpack-sso-repositioned #loginform{padding-bottom:26px}#loginform #jetpack-sso-wrap,#loginform #jetpack-sso-wrap *{box-sizing:border-box}#jetpack-sso-wrap__action,#jetpack-sso-wrap__user{display:none}.jetpack-sso-form-display #jetpack-sso-wrap__action,.jetpack-sso-form-display #jetpack-sso-wrap__user{display:block}#jetpack-sso-wrap{position:absolute;bottom:20px;padding:0 24px;margin-left:-24px;margin-right:-24px;width:100%}.jetpack-sso-repositioned #jetpack-sso-wrap{position:relative;bottom:auto;padding:0;margin-top:16px;margin-left:0;margin-right:0}.jetpack-sso-form-display #jetpack-sso-wrap{position:relative;bottom:auto;padding:0;margin-top:0;margin-left:0;margin-right:0}#loginform #jetpack-sso-wrap p{color:#777;margin-bottom:16px}#jetpack-sso-wrap a{display:block;width:100%;text-align:center;text-decoration:none}#jetpack-sso-wrap .jetpack-sso-toggle.wpcom{display:none}.jetpack-sso-form-display #jetpack-sso-wrap .jetpack-sso-toggle.wpcom{display:block}.jetpack-sso-form-display #jetpack-sso-wrap .jetpack-sso-toggle.default,.jetpack-sso-form-display #loginform>div,.jetpack-sso-form-display #loginform>p{display:none}.jetpack-sso-form-display #loginform #jetpack-sso-wrap{display:block}.jetpack-sso-form-display #loginform{padding:26px 24px}.jetpack-sso-or{margin-bottom:16px;position:relative;text-align:center}.jetpack-sso-or:before{background:#E5E5E5;content:'';height:1px;position:absolute;left:0;top:50%;width:100%}.jetpack-sso-or span{background:#fff;color:#777;position:relative;padding:0 8px;text-transform:uppercase}.jetpack-sso.button{height:36px;line-height:34px;float:none;margin-bottom:16px;position:relative;width:100%}.jetpack-sso.button>span{position:relative;padding-left:30px}.jetpack-sso.button .genericon-wordpress{position:absolute;left:0;top:-3px;font-size:24px}@media screen and (max-width:782px){.jetpack-sso.button{line-height:22px}}#jetpack-sso-wrap__user img{border-radius:50%;display:block;margin:0 auto 16px}#jetpack-sso-wrap__user h2{font-size:21px;font-weight:300;margin-bottom:16px;text-align:center}#jetpack-sso-wrap__user h2 span{font-weight:700}.jetpack-sso-wrap__reauth{margin-bottom:16px}.jetpack-sso-form-display #nav{display:none}.jetpack-sso-form-display #backtoblog{margin:24px 0 0}.jetpack-sso-clear:after{content:"";display:table;clear:both}
\ No newline at end of file |