File manager - Edit - /home/linknsbh/rassudr.online/app/Http/Requests/AddtionalSectionUpdate.php
Back
<?php namespace App\Http\Requests; use App\Models\CustomSectionContent; use App\Models\Language; use Illuminate\Foundation\Http\FormRequest; use Illuminate\Validation\Rule; class AddtionalSectionUpdate 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() { $ruleArray = [ 'order' => 'required', 'serial_number' => 'required|numeric' ]; $defaultLanguage = Language::where('is_default', 1)->first(); // Default language fields should always be required $ruleArray[$defaultLanguage->code . '_name'] = [ 'required', 'max:255', Rule::unique('custom_section_contents', 'section_name')->ignore($this->id, 'custom_section_id') ]; $ruleArray[$defaultLanguage->code . '_content'] = 'required'; // Get all languages $languages = Language::all(); foreach ($languages as $language) { $hasExistingContent = CustomSectionContent::where('language_id', $language->id)->where('custom_section_id', $this->id)->exists(); $code = $language->code; // Skip the default language as it's always required if ($language->id == $defaultLanguage->id) { continue; } // Check if any field for this language is filled if ( $this->filled($code . '_name') || $hasExistingContent || $this->filled($code . '_content') ) { $ruleArray[$code . '_name'] = [ 'required', 'max:255', Rule::unique('custom_section_contents', 'section_name')->ignore($this->id, 'custom_section_id') ]; $ruleArray[$code . '_content'] = 'required'; } } return $ruleArray; } /** * Get the validation messages that apply to the request. * * @return array */ public function messages() { $messageArray = []; $messageArray = [ 'order.required' => __('The position field is required.'), 'serial_number.required' => __('The order number field is required.'), ]; $languages = Language::all(); foreach ($languages as $language) { $code = $language->code; $name = ' ' . $language->name . ' ' . __('language.'); $messageArray[$code . '_name.required'] = __('The name field is required for') . $name; $messageArray[$code . '_name.max'] = __('The name field cannot contain more than 255 characters for') . $name; $messageArray[$code . '_name.unique'] = __('The name field must be unique for') . $name; $messageArray[$code . '_content.required'] = __('The content field is required for') . $name; } return $messageArray; } }
| ver. 1.4 |
Github
|
.
| PHP 8.2.31 | Generation time: 0.52 |
proxy
|
phpinfo
|
Settings