/** * @param EventDispatcherInterface $dispatcher */ public function __construct(EventDispatcherInterface $dispatcher) { $this->dispatcher = $dispatcher; $this->specResolver = new OptionsResolver; $this->specResolver->setDefaults( array( 'on' => self::ALL, 'from' => self::ALL, 'to' => self::ALL, 'exclude_from' => array(), 'exclude_to' => array(), ) ); $this->specResolver->setAllowedTypes( array( 'on' => array('string', 'array'), 'from' => array('string', 'array'), 'to' => array('string', 'array'), 'exclude_from' => array('string', 'array'), 'exclude_to' => array('string', 'array'), ) ); $toArrayNormalizer = function (Options $options, $value) { return (array)$value; }; $this->specResolver->setNormalizers( array( 'on' => $toArrayNormalizer, 'from' => $toArrayNormalizer, 'to' => $toArrayNormalizer, 'exclude_to' => $toArrayNormalizer, 'exclude_from' => $toArrayNormalizer, ) ); }
/** * {@inheritdoc} */ public function setDefaultSettings(OptionsResolverInterface $resolver) { $resolver->setDefaults(array('groups' => false)); if (version_compare(Kernel::VERSION, '2.6', '<')) { $resolver->setAllowedTypes(array('groups' => array('bool', 'array'))); } else { $resolver->setAllowedTypes('groups', array('bool', 'array')); } }
public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setRequired(array('fields')); $reflection = new \ReflectionMethod($resolver, 'setAllowedTypes'); if ($reflection->getNumberOfParameters() === 2) { $resolver->setAllowedTypes('fields', 'array'); } else { $resolver->setAllowedTypes(array('fields' => 'array')); } }
public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setDefaults(array('label' => false, "container" => null, "field" => null)); $resolver->setRequired("resource"); $resolver->setRequired("area"); $resolver->setRequired("category"); $resolver->setAllowedTypes('resource', 'Bigfish\\Bundle\\ResourceBundle\\Entity\\Resource'); $resolver->setAllowedTypes('area', 'Bigfish\\Bundle\\PagekitBundle\\Entity\\Area'); $resolver->setAllowedTypes('category', 'Bigfish\\Bundle\\EavBundle\\Entity\\Category'); }
protected function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setDefaults(array('unicode' => true, 'milliseconds' => 200, 'symbol-size' => 'square-auto', 'process-timeout' => 600, 'command' => 'dmtxread')); $resolver->setOptional(array('newline', 'unicode', 'milliseconds', 'codewords', 'minimum-edge', 'maximum-edge', 'gap', 'page', 'square-deviation', 'resolution', 'symbol-size', 'threshold', 'x-range-min', 'x-range-max', 'y-range-min', 'y-range-max', 'corrections-max', 'diagnose', 'mosaic', 'stop-after', 'page-numbers', 'corners', 'shrink')); $resolver->setAllowedValues(array('symbol-size' => array('square-auto', 'rectangle-auto', '10x10', '24x24', '64x64'))); $resolver->setAllowedTypes(array('newline' => 'bool', 'unicode' => 'bool', 'milliseconds' => 'integer', 'codewords' => 'bool', 'minimum-edge' => 'integer', 'maximum-edge' => 'integer', 'gap' => 'integer', 'page' => 'integer', 'square-deviation' => 'integer', 'resolution' => 'integer', 'threshold' => 'integer', 'corrections-max' => 'integer', 'diagnose' => 'bool', 'mosaic' => 'bool', 'stop-after' => 'integer', 'page-numbers' => 'bool', 'corners' => 'bool', 'shrink' => 'integer')); }
/** * {@inheritdoc} */ public function configureResolver(OptionsResolverInterface $resolver) { $patientNormalizer = function (Options $options, $value) { static $resource; if (!$resource) { $resource = $options['patient_resource']->getRepository(); } return $resource->getByMRN($value); }; $codes = $this->getCodes(); $diagnosisNormalizer = function (Options $options, $value) use($codes) { static $resource; if (!$resource) { $resource = $options['diagnosis_resource']->getRepository(); } if ($patient = $options['patient']) { foreach ($patient->getDiagnoses() as $diagnosis) { if (in_array($diagnosis->getCode()->getCode(), $codes)) { return $diagnosis; } } } }; $dateNormalizer = function (Options $options, $value) { return empty($value) ? null : new DateTime($value); }; $resolver->setRequired(array('patient', 'activity_date')); $resolver->setOptional(array('diagnosis')); $resolver->setAllowedTypes(array('patient' => array('string'), 'diagnosis' => array('Accard\\Component\\Diagnosis\\Model\\DiagnosisInterface', 'null'), 'activity_date' => array('string', 'null'))); $resolver->setNormalizers(array('patient' => $patientNormalizer, 'diagnosis' => $diagnosisNormalizer, 'activity_date' => $dateNormalizer)); }
/** * {@inheritdoc} */ public function configureAttributes(OptionsResolverInterface $resolver) { $resolver->setRequired(['name']); $resolver->setOptional(['label', 'class', 'repeat_min', 'repeat_max', 'property_path', 'dependencies', 'filters', 'rules']); $resolver->setDefaults(['property_path' => null, 'dependencies' => [], 'filters' => [], 'rules' => []]); $resolver->setAllowedTypes(['name' => ['int', 'string'], 'label' => 'string', 'class' => 'string', 'repeat_min' => ['int', 'string'], 'repeat_max' => ['int', 'string'], 'dependencies' => 'array']); }
/** * {@inheritdoc} */ public function configureAttributes(OptionsResolverInterface $resolver) { $resolver->setRequired(['name', 'label', 'prefixes']); $resolver->setDefaults(['prefixes' => ['net', 'gross']]); $resolver->setOptional(['vat_field', 'comment', 'suffix', 'prefix', 'selector', 'wrap', 'class', 'css_attribute', 'max_length', 'error', 'rules', 'filters', 'dependencies', 'default']); $resolver->setAllowedTypes(['name' => 'string', 'label' => 'string', 'comment' => 'string', 'suffix' => 'string', 'prefix' => 'string', 'selector' => 'string', 'wrap' => 'string', 'class' => 'string', 'css_attribute' => 'string', 'max_length' => 'integer', 'error' => 'string', 'filters' => 'array', 'rules' => 'array', 'dependencies' => 'array', 'default' => ['string', 'integer']]); }
protected function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setDefaults(array('encoding' => 'ascii', 'module' => 5, 'symbol-size' => 'square-auto', 'format' => 'png', 'message-separator' => ' ', 'process-timeout' => 600, 'command' => 'dmtxwrite')); $resolver->setOptional(array('resolution', 'margin')); $resolver->setAllowedValues(array('encoding' => array('best', 'fast', 'ascii', 'c40', 'text', 'x12', 'edifact', '8base256'), 'format' => array('png', 'tif', 'gif', 'pdf'), 'symbol-size' => array('square-auto', 'rectangle-auto', '10x10', '24x24', '64x64'))); $resolver->setAllowedTypes(array('resolution' => 'integer', 'module' => 'integer', 'margin' => 'integer')); }
/** * Sets the default options for this type. * * @param OptionsResolverInterface $resolver The resolver for the options. */ public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setDefaults(array('action' => null, 'bundles' => array(), 'domains' => array(), 'locales' => array(), 'files' => array(), 'result' => array(), 'translation_domain' => 'DavamigoTranslatorBundle')); $resolver->setRequired(array('action', 'step')); $resolver->setAllowedTypes(array('action' => 'string', 'step' => 'int', 'bundles' => 'array', 'domains' => 'array', 'locales' => 'array', 'files' => 'array', 'result' => 'array')); $resolver->setAllowedValues(array('step' => array(1, 2, 3))); }
/** * {@inheritdoc} */ public function configureAttributes(OptionsResolverInterface $resolver) { $resolver->setRequired(['text']); $resolver->setOptional(['class', 'name']); $resolver->setDefaults(['name' => '']); $resolver->setAllowedTypes(['text' => 'string', 'class' => 'string']); }
/** * {@inheritdoc} */ public function configureAttributes(OptionsResolverInterface $resolver) { $resolver->setRequired(['name', 'label']); $resolver->setOptional(['comment', 'comment', 'repeat_min', 'repeat_max', 'limit', 'error', 'rules', 'filters', 'dependencies', 'main_id', 'visibility_change', 'upload_url', 'session_name', 'session_id', 'file_types', 'file_types_description', 'delete_handler', 'load_handler', 'property_path', 'dependencies', 'filters', 'rules']); $resolver->setDefaults(['repeat_min' => 0, 'repeat_max' => ElementInterface::INFINITE, 'limit' => 1000, 'session_name' => session_name(), 'session_id' => session_id(), 'file_types_description' => 'file_types_description', 'file_types' => ['jpg', 'jpeg', 'png', 'gif'], 'property_path' => null, 'dependencies' => [], 'filters' => [], 'rules' => []]); $resolver->setAllowedTypes(['file_types_description' => 'string', 'file_types' => 'array']); }
/** * Configures Form attributes * * @param OptionsResolverInterface $resolver */ public function configureAttributes(OptionsResolverInterface $resolver) { $resolver->setRequired(['name']); $resolver->setOptional(['class', 'action', 'method', 'tabs', 'property_path', 'dependencies', 'property_path', 'dependencies', 'filters', 'rules']); $resolver->setDefaults(['action' => '', 'class' => '', 'method' => self::FORM_METHOD, 'tabs' => self::TABS_VERTICAL, 'property_path' => null, 'dependencies' => [], 'filters' => [], 'rules' => []]); $resolver->setAllowedTypes(['class' => 'string', 'action' => 'string', 'method' => 'string', 'tabs' => 'integer']); }
/** * Sets the configuration for the options resolver * @param OptionsResolverInterface $resolver */ protected function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setRequired(array('directory')); $resolver->setDefaults(array('mode' => self::MODE_DIRECTORY_AS_CATEGORY, 'include' => array(), 'limit' => null)); $resolver->setAllowedValues(array('mode' => array(self::MODE_DOCUMENT_AS_CATEGORY, self::MODE_DIRECTORY_AS_CATEGORY))); $resolver->setAllowedTypes(array('directory' => 'string', 'mode' => 'int', 'include' => 'array')); }
/** * @param OptionsResolverInterface $resolver */ public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setOptional(array('default', 'query_builder', 'choices')); $resolver->setAllowedTypes(array('choices' => 'array')); $resolver->setRequired(array('create_form_type', 'class', 'property')); $resolver->setDefaults(array('multiple' => false, 'to_select_text' => 'Выбрать', 'to_new_text' => 'Создать')); }
/** * Custom options: * - "workflow_item" - required, instance of WorkflowItem entity * - "step_name" - optional, name of step * * @param OptionsResolverInterface $resolver */ public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setRequired(array('workflow_item')); $resolver->setOptional(array('step_name')); $resolver->setAllowedTypes(array('step_name' => 'string')); $resolver->setNormalizers(array('step_name' => function (Options $options, $stepName) { /** @var Workflow $workflow */ $workflow = $options['workflow']; /** @var WorkflowItem $workflowItem */ $workflowItem = $options['workflow_item']; if (!$stepName) { $stepName = $workflowItem->getCurrentStepName(); } if (!$workflow->getStepManager()->getStep($stepName)) { throw new InvalidConfigurationException(sprintf('Invalid reference to unknown step "%s" of workflow "%s".', $stepName, $workflow->getName())); } return $stepName; }, 'disable_attribute_fields' => function (Options $options, $disableAttributeFields) { /** @var Workflow $workflow */ $workflow = $options['workflow']; /** @var WorkflowItem $workflowItem */ $workflowItem = $options['workflow_item']; $step = $workflow->getStepManager()->getStep($options['step_name']); if ($step->getName() !== $workflowItem->getCurrentStepName() || $workflowItem->isClosed()) { $disableAttributeFields = true; } return $disableAttributeFields; })); }
/** * Sets the configuration for the options resolver * @param OptionsResolverInterface $resolver */ protected function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setRequired(array('file', 'document_columns', 'category_column')); $resolver->setOptional(array('limit', 'delimiter', 'enclosure', 'escape', 'category_modifier')); $resolver->setDefaults(array('limit' => false, 'length' => 0, 'delimiter' => ',', 'enclosure' => '"', 'escape' => '\\', 'category_modifier' => false)); $resolver->setAllowedTypes(array('file' => 'string', 'document_columns' => 'array', 'category_column' => 'string', 'length' => 'int', 'delimiter' => 'string', 'enclosure' => 'string', 'escape' => 'string')); }
/** * Configures admin menu item options * * @param OptionsResolverInterface $resolver */ public function configureOptions(OptionsResolverInterface $resolver) { $resolver->setRequired(['id', 'name', 'link', 'path']); $resolver->setOptional(['class', 'sort_order']); $resolver->setDefaults(array('sort_order' => 0, 'class' => '', 'link' => '')); $resolver->setAllowedTypes(array('id' => 'string', 'name' => 'string', 'link' => 'string', 'class' => 'string', 'sort_order' => 'integer')); }
/** * @param OptionsResolverInterface $resolver */ public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setDefaults(array('data_class' => 'ArtesanIO\\MoocsyBundle\\Entity\\QuizDetailsUser')); $resolver->setRequired(['question_label']); $resolver->setRequired(['question_id']); $resolver->setAllowedTypes(['question_label' => 'string', 'question_id' => 'int']); }
/** * Add the image_path option * * @param \Symfony\Component\OptionsResolver\OptionsResolverInterface $resolver */ public function setDefaultOptions(OptionsResolverInterface $resolver) { // Remove id from ace editor wrapper attributes. Id must be generated. $wrapperAttrNormalizer = function (Options $options, $aceAttr) { if (is_array($aceAttr)) { if (array_key_exists('id', $aceAttr)) { unset($aceAttr['id']); } } else { $aceAttr = array(); } return $aceAttr; }; $defaultUnit = $this->defaultUnit; $allowedUnits = $this->units; $unitNormalizer = function (Options $options, $value) use($defaultUnit, $allowedUnits) { if (is_array($value)) { return $value; } if (preg_match('/([0-9\\.]+)\\s*(' . join('|', $allowedUnits) . ')/', $value, $matchedValue)) { $value = $matchedValue[1]; $unit = $matchedValue[2]; } else { $unit = $defaultUnit; } return array('value' => $value, 'unit' => $unit); }; $resolver->setDefaults(array('required' => false, 'wrapper_attr' => array(), 'width' => 200, 'height' => 200, 'font_size' => 12, 'mode' => 'ace/mode/html', 'theme' => 'ace/theme/monokai', 'tab_size' => null, 'read_only' => null, 'use_soft_tabs' => null, 'use_wrap_mode' => null, 'show_print_margin' => null, 'show_invisibles' => null, 'highlight_active_line' => null)); $resolver->setAllowedTypes(array('width' => array('integer', 'string', 'array'), 'height' => array('integer', 'string', 'array'), 'mode' => 'string', 'font_size' => 'integer', 'tab_size' => array('integer', 'null'), 'read_only' => array('bool', 'null'), 'use_soft_tabs' => array('bool', 'null'), 'use_wrap_mode' => array('bool', 'null'), 'show_print_margin' => array('bool', 'null'), 'show_invisibles' => array('bool', 'null'), 'highlight_active_line' => array('bool', 'null'))); $resolver->setNormalizers(array('wrapper_attr' => $wrapperAttrNormalizer, 'width' => $unitNormalizer, 'height' => $unitNormalizer)); }
/** * {@inheritdoc} */ public function configureOptions(OptionsResolverInterface $resolver) { $resolver->setRequired(['column_select', 'column_options']); $resolver->setOptional(['header', 'filter', 'footer', 'max_height']); $resolver->setDefaults(['column_select' => false, 'column_options' => true]); $resolver->setAllowedTypes(['header' => 'bool', 'filter' => 'bool', 'footer' => 'bool', 'column_select' => 'bool', 'column_options' => 'bool', 'max_height' => 'int']); }
function it_should_configure_the_resolver(OptionsResolverInterface $resolver) { $resolver->setDefaults(array('format' => Argument::any(), 'language' => \Locale::getDefault(), 'leading_zero' => false))->shouldBeCalled(); $resolver->setOptional(array('placeholder', 'language', 'leading_zero'))->shouldBeCalled(); $resolver->setAllowedTypes(array('placeholder' => array('string'), 'language' => array('string'), 'leading_zero' => array('bool')))->shouldBeCalled(); $this->setDefaultOptions($resolver); }
/** * @inheritdoc */ public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setRequired(array('reference_currency', 'currency_choices')); $resolver->setDefaults(array('reference_currency' => $this->referenceCurrencyCode, 'currency_choices' => $this->currencyCodeList)); $resolver->setAllowedTypes(array('reference_currency' => array('string'), 'currency_choices' => array('array'))); $resolver->setAllowedValues(array('reference_currency' => $this->currencyCodeList)); }
/** * {@inheritdoc} */ public function configureAttributes(OptionsResolverInterface $resolver) { $resolver->setRequired(['name', 'label']); $resolver->setOptional(['rows', 'comment', 'suffix', 'prefix', 'selector', 'wrap', 'class', 'css_attribute', 'max_length', 'error', 'rules', 'filters', 'dependencies', 'default', 'property_path', 'transformer']); $resolver->setDefaults(['dependencies' => [], 'filters' => [], 'rules' => [], 'transformer' => null, 'property_path' => null]); $resolver->setAllowedTypes(['name' => 'string', 'rows' => 'int', 'label' => 'string', 'comment' => 'string', 'suffix' => 'string', 'prefix' => 'string', 'selector' => 'string', 'wrap' => 'string', 'class' => 'string', 'css_attribute' => 'string', 'max_length' => 'integer', 'error' => 'string', 'filters' => 'array', 'rules' => 'array', 'dependencies' => 'array', 'default' => ['string', 'integer']]); }
/** * {@inheritDoc} */ public function setOptions(OptionsResolverInterface $resolver) { $resolver->setRequired(['forced', 'origin', 'feed', 'date_locale', 'number_locale', 'default_values']); $resolver->setAllowedValues(['date_locale' => ['en', 'nl'], 'number_locale' => ['en', 'nl']]); $resolver->setAllowedTypes(['forced' => 'bool', 'origin' => 'FM\\IoBundle\\Model\\OriginInterface', 'feed' => 'FM\\IoBundle\\Entity\\Feed', 'default_values' => 'array']); $resolver->setDefaults(['forced' => false, 'date_locale' => 'en', 'number_locale' => 'en', 'default_values' => []]); }
/** * {@inheritdoc} */ public function configureAttributes(OptionsResolverInterface $resolver) { $resolver->setRequired(['name', 'label']); $resolver->setOptional(['options', 'comment', 'suffix', 'prefix', 'error', 'selector', 'css_attribute', 'addable', 'onAdd', 'add_item_prompt', 'default', 'property_path', 'dependencies', 'filters', 'rules', 'transformer']); $resolver->setDefaults(['options' => [], 'dependencies' => [], 'filters' => [], 'rules' => [], 'property_path' => null, 'transformer' => null]); $resolver->setAllowedTypes(['name' => 'string', 'label' => 'string', 'options' => 'array', 'comment' => 'string', 'suffix' => 'string', 'prefix' => 'string', 'error' => 'string', 'selector' => 'string', 'css_attribute' => 'string', 'addable' => 'bool', 'onAdd' => 'string', 'add_item_prompt' => 'string', 'default' => ['string', 'integer'], 'rules' => 'array', 'dependencies' => 'array', 'property_path' => ['null', 'object'], 'transformer' => ['null', 'object']]); }
/** * {@inheritdoc} */ public function configureAttributes(OptionsResolverInterface $resolver) { $resolver->setRequired(['name', 'label', 'property_path']); $resolver->setOptional(['class', 'error', 'comment', 'default', 'filters', 'rules', 'transformer']); $resolver->setDefaults(['dependencies' => [], 'filters' => [], 'rules' => [], 'property_path' => null, 'transformer' => null]); $resolver->setAllowedTypes(['name' => 'string', 'label' => 'string', 'class' => 'string', 'error' => 'string', 'comment' => 'string', 'default' => ['string', 'integer'], 'property_path' => ['null', 'object'], 'transformer' => ['null', 'object']]); }
/** * {@inheritdoc} */ public function configureOptions(OptionsResolverInterface $resolver) { $resolver->setRequired(['rows_per_page', 'key']); $resolver->setOptional(['default_sorting', 'right_click_menu', 'auto_suggest_delay', 'auto_suggest_min_length', 'auto_suggest_suggestions', 'only_one_selected', 'no_column_modification', 'no_column_resizing', 'create_input', 'save_column_modification', 'persistent']); $resolver->setDefaults(['rows_per_page' => 50, 'key' => 'id']); $resolver->setAllowedTypes(['rows_per_page' => 'int', 'key' => ['int', 'string'], 'default_sorting' => ['int', 'string'], 'right_click_menu' => 'bool', 'auto_suggest_delay' => 'int', 'auto_suggest_min_length' => 'int', 'auto_suggest_suggestions' => 'int', 'only_one_selected' => 'bool', 'no_column_modification' => 'bool', 'no_column_resizing' => 'bool', 'create_input' => 'bool', 'save_column_modification' => 'bool', 'persistent' => 'bool']); }
private function initActionOptions() { $this->actionOptionsResolver = new OptionsResolver(); $this->actionOptionsResolver->setRequired(array('route_name')); $this->actionOptionsResolver->setDefined(array('element')); $self = $this; $this->actionOptionsResolver->setDefaults(array('route_name' => function (Options $options) use($self) { return $self->getDefaultRouteName($options); }, 'additional_parameters' => array(), 'label' => null)); $this->actionOptionsResolver->setNormalizer('additional_parameters', function (Options $options, $value) use($self) { return $self->normalizeAdditionalParameters($options, $value); }); $this->actionOptionsResolver->setAllowedTypes('element', 'string'); $this->actionOptionsResolver->setAllowedTypes('route_name', 'string'); $this->actionOptionsResolver->setAllowedTypes('additional_parameters', 'array'); $this->actionOptionsResolver->setAllowedTypes('label', array('string', 'null')); }
/** * {@inheritdoc} */ public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setDefaults(array('type' => 'silvestra_key_value_row', 'allow_add' => true, 'allow_delete' => true, 'allowed_keys' => null, 'label' => false, 'value_options' => array(), 'use_key_value_array' => false, 'options' => function (Options $options) { return array('value_type' => $options['value_type'], 'value_options' => $options['value_options'], 'allowed_keys' => $options['allowed_keys'], 'label' => false); })); $resolver->setAllowedTypes(array('allowed_keys' => array('null', 'array'))); $resolver->setRequired(array('value_type')); }