Filippo Bertilotti
2024-07-22 42e9cec923b95ca44baff014f8e9eaef464ce44a
commit | author | age
ebf6bb 1 <?php
D 2
3 namespace App\Rules;
4
5 use App\Vola\Classes\Utils;
6 use Illuminate\Contracts\Validation\Rule;
7 use Illuminate\Http\Request;
8
9 class TokenCheck implements Rule
10 {
11
12     public $request;
13
14     /**
15      * Create a new rule instance.
16      *
17      * @return void
18      */
19     public function __construct(Request $request)
20     {
21         $this->request = $request;
22     }
23
24     /**
25      * Determine if the validation rule passes.
26      *
27      * @param  string  $attribute
28      * @param  mixed  $value
29      * @return bool
30      */
31     public function passes($attribute, $value)
32     {
33         if (config('custom.enforce_parameters',false)) {
34             $isLoggedRequest = str_contains( Utils::get_string_between($this->request->getRequestUri(), '/', '?'), 'islogged' );
35             if ($isLoggedRequest) {
36                 return true;
37             } else {
38                 if (!is_null($value) && $value !== '') {
39                     return true;
40                 } else {
41                     return false;
42                 }
43             }
44         }
45         return true;
46     }
47
48     /**
49      * Get the validation error message.
50      *
51      * @return string
52      */
53     public function message()
54     {
55         return 'Il keysite fornito non corrisponde con il referer';
56     }
57
58 }