Файловый менеджер - Редактировать - /home/clickysoft/public_html/travel-guru.clickysoft.net/app/Http/Requests/Admin/LiveaboardUpdateRequest.php
Назад
<?php namespace App\Http\Requests\Admin; use Illuminate\Foundation\Http\FormRequest; class LiveaboardUpdateRequest extends FormRequest { /** * Determine if the user is authorized to make this request. * * @return bool */ public function authorize() { return true; } /** * Get the validation rules that apply to the request. * * @return array<string, mixed> */ public function rules() { $rules = [ 'title' => 'required|unique:liveaboards,title,' . request()->route('id'), 'slug' => 'required|unique:liveaboards,slug,' . request()->route('id'), 'short_description' => [ 'required', function ($attribute, $value, $fail) { $strippedText = strip_tags($value); $charCount = mb_strlen($strippedText); if ($charCount < 10 || $charCount > 1000) { $fail("The $attribute must be between 10 and 1000 characters."); } }, ], 'long_description' => [ 'nullable', // Allow it to be null function ($attribute, $value, $fail) { // Skip the character length check if the value is null or empty if (!empty($value)) { $strippedText = strip_tags($value); $charCount = mb_strlen($strippedText); if ($charCount < 10 || $charCount > 200000) { $fail("The Long Description must be between 10 and 200000 characters."); } } }, ], 'meta_description' => 'nullable|max:255', 'meta_keywords' => 'nullable|max:255', 'meta_abstract' => 'nullable|max:255', 'opengraph_title' => 'nullable|max:60', 'opengraph_description' => 'nullable|max:300', ]; if ($this->input('liveaboard_type') === 'main') { //Destination Highlights validation $rules['title1'] = 'required'; $rules['description1'] = [ 'required', function ($attribute, $value, $fail) { if (!empty($value)) { $strippedText = strip_tags($value); $charCount = mb_strlen($strippedText); if ($charCount < 10 || $charCount > 200000) { $fail("The Highlight Description 1 must be between 10 and 200000 characters."); } } }, ]; //Destination Highlights validation $rules['title2'] = 'required'; $rules['description2'] = [ 'required', function ($attribute, $value, $fail) { if (!empty($value)) { $strippedText = strip_tags($value); $charCount = mb_strlen($strippedText); if ($charCount < 10 || $charCount > 200000) { $fail("The Highlight Description 2 must be between 10 and 200000 characters."); } } }, ]; //Destination Highlights validation $rules['title3'] = 'required'; $rules['description3'] = [ 'required', function ($attribute, $value, $fail) { if (!empty($value)) { $strippedText = strip_tags($value); $charCount = mb_strlen($strippedText); if ($charCount < 10 || $charCount > 200000) { $fail("The Highlight Description 3 must be between 10 and 200000 characters."); } } }, ]; //Destination Highlights validation $rules['title4'] = 'required'; $rules['description4'] = [ 'required', function ($attribute, $value, $fail) { if (!empty($value)) { $strippedText = strip_tags($value); $charCount = mb_strlen($strippedText); if ($charCount < 10 || $charCount > 200000) { $fail("The Highlight Description 4 must be between 10 and 200000 characters."); } } }, ]; $rules['meet_description'] = [ 'required', // Allow it to be null function ($attribute, $value, $fail) { // Skip the character length check if the value is null or empty if (!empty($value)) { $strippedText = strip_tags($value); $charCount = mb_strlen($strippedText); if ($charCount < 10 || $charCount > 200000) { $fail("The Meet Description must be between 10 and 200000 characters."); } } }, ]; } if ($this->input('liveaboard_type') === 'Main Page') { $rules['selected_region_ids'] = 'required|array'; } else { $rules['boat_facility_name.*'] = 'required'; $rules['boat_feature_name.*'] = 'required'; // $rules['extra_name.*'] = 'required'; // $rules['extra_description.*'] = 'required|max:500'; } return $rules; } public function messages() { return [ 'selected_region_ids.required' => 'Please select at least one region.', 'selected_region_ids.array' => 'The selected regions must be an array.', 'title1.required' => 'The Destination Highlights Title 1 is required.', 'description1.required' => 'The Destination Highlights Description 1 is required.', 'title2.required' => 'The Destination Highlights Title 2 is required.', 'description2.required' => 'The Destination Highlights Description 2 is required.', 'title3.required' => 'The Destination Highlights Title 3 is required.', 'description3.required' => 'The Destination Highlights Description 3 is required.', 'title4.required' => 'The Destination Highlights Title 4 is required.', 'description4.required' => 'The Destination Highlights Description 4 is required.', 'boat_facility_name.*.required' => 'The Boat facility name field is required.', 'boat_feature_name.*.required' => 'The Boat feature name field is required.', ]; } protected function prepareForValidation() { $this->merge([ 'selected_region_ids' => $this->validateSelectedRegionKeys($this->input('selected_region_ids', [])), ]); } protected function validateSelectedRegionKeys($values) { return $values; } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка