enabled && count( $this->user_roles ) > 0 ); } /** * Initializes the object before loading. * * @return void */ protected function before_load(): void { $this->user_roles = $this->get_default_roles(); $this->message = $this->get_message(); } /** * Get applicable user roles. */ protected function get_default_roles(): array { if ( ! function_exists( 'get_editable_roles' ) ) { return array( 'administrator' ); } return array_keys( get_editable_roles() ); } /** * Get error message to show in ui. * * @return string */ public function get_message(): string { if ( empty( $this->message ) ) { return $this->get_default_message(); } return $this->message; } /** * Get localized default message. */ protected function get_default_message(): string { return __( "You are required to change your password because your password doesn't meet the strong password guidelines set by the administrator.", 'defender-security' ); } }