eZ\Publish\Core\MVC\Symfony\FieldType\View\ParameterProvider\LocaleParameterProvider::getViewParameters PHP Method

getViewParameters() public method

Locale from request object will be used as locale if set, otherwise field language code will be converted to locale string.
public getViewParameters ( eZ\Publish\API\Repository\Values\Content\Field $field ) : array
$field eZ\Publish\API\Repository\Values\Content\Field
return array
    public function getViewParameters(Field $field)
    {
        $parameters = array();
        $request = $this->getCurrentRequest();
        if ($request && $request->attributes->has('_locale')) {
            $parameters['locale'] = $request->attributes->get('_locale');
        } else {
            $parameters['locale'] = $this->localeConverter->convertToPOSIX($field->languageCode);
        }
        return $parameters;
    }

Usage Example

 /**
  * @dataProvider providerForTestGetViewParameters
  */
 public function testGetViewParameters($hasRequestLocale, $expectedLocale)
 {
     $field = new Field(array("languageCode" => "cro-HR"));
     $parameterProvider = new LocaleParameterProvider($this->getLocaleConverterMock());
     $parameterProvider->setRequest($this->getRequestMock($hasRequestLocale));
     $this->assertSame(array('locale' => $expectedLocale), $parameterProvider->getViewParameters($field));
 }
LocaleParameterProvider