| @@ -25,12 +25,12 @@ | ||
| 25 | 25 | */ |
| 26 | 26 | public function is_ssl(): bool { |
| 27 | 27 | $server_data = defender_get_data_from_request( null, 's' ); |
| 28 | 28 | if ( |
| 29 | - ( ! empty( $server_data['HTTPS'] ) && ( 'on' === strtolower( $server_data['HTTPS'] ) || '1' === $server_data['HTTPS'] ) ) || | |
| 30 | - ( ! empty( $server_data['REQUEST_SCHEME'] ) && 'https' === $server_data['REQUEST_SCHEME'] ) || | |
| 31 | - ( ! empty( $server_data['HTTP_X_FORWARDED_PROTO'] ) && 'https' === $server_data['HTTP_X_FORWARDED_PROTO'] ) || | |
| 32 | - ( ! empty( $server_data['HTTP_X_FORWARDED_SSL'] ) && 'on' === $server_data['HTTP_X_FORWARDED_SSL'] ) | |
| 29 | + ( isset( $server_data['HTTPS'] ) && ( 'on' === strtolower( $server_data['HTTPS'] ) || '1' === $server_data['HTTPS'] ) ) || | |
| 30 | + ( isset( $server_data['REQUEST_SCHEME'] ) && 'https' === $server_data['REQUEST_SCHEME'] ) || | |
| 31 | + ( isset( $server_data['HTTP_X_FORWARDED_PROTO'] ) && 'https' === $server_data['HTTP_X_FORWARDED_PROTO'] ) || | |
| 32 | + ( isset( $server_data['HTTP_X_FORWARDED_SSL'] ) && 'on' === $server_data['HTTP_X_FORWARDED_SSL'] ) | |
| 33 | 33 | ) { |
| 34 | 34 | return true; |
| 35 | 35 | } |
| 36 | 36 | |
| @@ -140,22 +140,20 @@ | ||
| 140 | 140 | * |
| 141 | 141 | * @param int $user_id User ID. |
| 142 | 142 | * @param string $name Metadata key. |
| 143 | 143 | * |
| 144 | - * @return mixed | |
| 144 | + * @return array | |
| 145 | 145 | */ |
| 146 | - public function get_user_meta( int $user_id, string $name ) { | |
| 146 | + public function get_user_meta( int $user_id, string $name ): array { | |
| 147 | 147 | $value = get_user_meta( $user_id, $this->option_prefix . $name, true ); |
| 148 | 148 | |
| 149 | - if ( null !== $value ) { | |
| 150 | - try { | |
| 151 | - return json_decode( $value, true ); | |
| 152 | - } catch ( Throwable $exception ) { | |
| 153 | - return array(); | |
| 154 | - } | |
| 149 | + if ( null === $value ) { | |
| 150 | + return array(); | |
| 155 | 151 | } |
| 156 | 152 | |
| 157 | - return array(); | |
| 153 | + $data = json_decode( $value, true ); | |
| 154 | + | |
| 155 | + return is_array( $data ) ? $data : array(); | |
| 158 | 156 | } |
| 159 | 157 | |
| 160 | 158 | /** |
| 161 | 159 | * Get website name. |
| @@ -176,9 +174,9 @@ | ||
| 176 | 174 | $site_domain = preg_replace( '#^http(s)?:\/\/#', '', $site_url ); |
| 177 | 175 | $site_domain = preg_replace( '#^www\.#', '', $site_domain ); |
| 178 | 176 | $site_domain = explode( '/', $site_domain ); |
| 179 | 177 | |
| 180 | - return $site_domain[0] ?? $site_domain; | |
| 178 | + return $site_domain[0]; | |
| 181 | 179 | } |
| 182 | 180 | |
| 183 | 181 | /** |
| 184 | 182 | * Get the hash of a user's username using SHA-256 algorithm. |
| @@ -210,7 +208,7 @@ | ||
| 210 | 208 | * @return string|bool |
| 211 | 209 | */ |
| 212 | 210 | public function base64url_decode( string $data ) { |
| 213 | 211 | // No need to add '=' at the end. |
| 214 | - return base64_decode( strtr( $data, '-_', '+/' ) ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_decode | |
| 212 | + return base64_decode( strtr( $data, '-_', '+/' ), true ); // phpcs:ignore WordPress.PHP.DiscouragedPHPFunctions.obfuscation_base64_decode | |
| 215 | 213 | } |
| 216 | 214 | } |