summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/jetpack/modules/sso')
-rw-r--r--plugins/jetpack/modules/sso/class.jetpack-sso-helpers.php34
-rw-r--r--plugins/jetpack/modules/sso/jetpack-sso-login-rtl.css1
-rw-r--r--plugins/jetpack/modules/sso/jetpack-sso-login.min.css1
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