/ app / Rules / ValidDossierSubtype.php
ValidDossierSubtype.php
 1  <?php
 2  
 3  namespace App\Rules;
 4  
 5  use App\Models\DossierType;
 6  use Illuminate\Contracts\Validation\InvokableRule;
 7  
 8  class ValidDossierSubtype implements InvokableRule
 9  {
10      /**
11       * Run the validation rule.
12       *
13       * @param  string  $attribute
14       * @param  mixed  $value
15       * @param  \Closure(string): \Illuminate\Translation\PotentiallyTranslatedString  $fail
16       * @return void
17       */
18      public function __invoke($attribute, $value, $fail)
19      {
20          $modoNames = DossierType::subtypes()->pluck('name');
21          if (!$modoNames->contains($value)) {
22              $fail('Subtype ' . $value . ' does not exist');
23          }
24      }
25  }