map( Obj::prop( 'lang' ) ) ->filter( Lst::includes( Fns::__, $this->active_languages ) ) ->map( 'sanitize_text_field' ) ->getOrElse( function () { return $this->get_cookie_lang(); } ); } protected function get_cookie_name() { return $this->cookieLanguage->getAjaxCookieName( $this->is_admin_action_from_referer() ); } /** * @return bool */ private function is_admin_action_from_referer() { return (bool) Maybe::of( $_SERVER ) ->map( Obj::prop( 'HTTP_REFERER' ) ) ->map( Str::pos( '/wp-admin/' ) ) ->getOrElse( false ); } }