From 97b863d5c0ad876b8a70aa2c15ed08254b3f7900 Mon Sep 17 00:00:00 2001 From: Bour Arnaud Date: Wed, 2 Sep 2020 18:02:25 +0200 Subject: [PATCH] Add Ephoto Dam Field Constraint --- .../Plugin/Field/FieldType/EphotoDamField.php | 6 +-- .../Constraint/EphotoDamFieldConstraint.php | 16 ++++++++ .../EphotoDamFieldConstraintValidator.php | 40 +++++++++++++++++++ 3 files changed, 58 insertions(+), 4 deletions(-) create mode 100644 modules/ephoto_dam_field/src/Plugin/Validation/Constraint/EphotoDamFieldConstraint.php create mode 100644 modules/ephoto_dam_field/src/Plugin/Validation/Constraint/EphotoDamFieldConstraintValidator.php diff --git a/modules/ephoto_dam_field/src/Plugin/Field/FieldType/EphotoDamField.php b/modules/ephoto_dam_field/src/Plugin/Field/FieldType/EphotoDamField.php index aa35ac1..2c887e9 100644 --- a/modules/ephoto_dam_field/src/Plugin/Field/FieldType/EphotoDamField.php +++ b/modules/ephoto_dam_field/src/Plugin/Field/FieldType/EphotoDamField.php @@ -17,7 +17,8 @@ use Drupal\Core\TypedData\TraversableTypedDataInterface; * description = @Translation("Stores a Ephoto Dam URL and then outputs some embed code"), * category = @Translation("Media"), * default_widget = "ephoto_dam_field_widget", - * default_formatter = "ephoto_dam_field_formatter" + * default_formatter = "ephoto_dam_field_formatter", + * constraints = {"EphotoDamFieldValidation" = {}} * ) */ class EphotoDamField extends FieldItemBase { @@ -64,15 +65,12 @@ class EphotoDamField extends FieldItemBase { public static function propertyDefinitions(FieldStorageDefinitionInterface $field_definition) { $properties['url'] = DataDefinition::create('string') ->setLabel(t('Url')); - //->setRequired(true); $properties['image_size'] = DataDefinition::create('string') ->setLabel(t('Image size')); - //->setRequired(true); $properties['version'] = DataDefinition::create('string') ->setLabel(t('Version')); - //->setRequired(true); return $properties; } diff --git a/modules/ephoto_dam_field/src/Plugin/Validation/Constraint/EphotoDamFieldConstraint.php b/modules/ephoto_dam_field/src/Plugin/Validation/Constraint/EphotoDamFieldConstraint.php new file mode 100644 index 0000000..ffca2b1 --- /dev/null +++ b/modules/ephoto_dam_field/src/Plugin/Validation/Constraint/EphotoDamFieldConstraint.php @@ -0,0 +1,16 @@ +image_size)) { + return NULL; + } + + error_log(var_export($field->image_size, true)); + + //$this->context->addViolation(''); + } +} -- GitLab