Quellcode durchsuchen

Fix body parameters with accepted and accepted_if validation rules

hiszpek vor 3 Jahren
Ursprung
Commit
714f1e36d2
1 geänderte Dateien mit 13 neuen und 0 gelöschten Zeilen
  1. 13 0
      src/Extracting/ParsesValidationRules.php

+ 13 - 0
src/Extracting/ParsesValidationRules.php

@@ -188,6 +188,12 @@ trait ParsesValidationRules
                 case 'required':
                     $parameterData['required'] = true;
                     break;
+                case 'accepted':
+                    $parameterData['required'] = true;
+                    $parameterData['type'] = 'boolean';
+                    $parameterData['description'] .= ' Must be accepted.';
+                    $parameterData['setter'] = fn() => true;
+                    break;
 
                 /*
                  * Primitive types. No description should be added
@@ -435,6 +441,13 @@ trait ParsesValidationRules
                             $rule, [':values' => w::getListOfValuesAsFriendlyHtmlString($arguments, "and")]
                         ) . ' ';
                     break;
+                case 'accepted_if':
+                    $parameterData['type'] = 'boolean';
+                    $parameterData['description'] .= ' ' . $this->getDescription(
+                            $rule, [':other' => "<code>{$arguments[0]}</code>", ':value' => w::getListOfValuesAsFriendlyHtmlString(array_slice($arguments, 1))]
+                        ) . ' ';
+                    $parameterData['setter'] = fn() => true;
+                    break;
                 case 'same':
                 case 'different':
                     $parameterData['description'] .= ' ' . $this->getDescription(