user()?->hasStaffAccess(); } protected function prepareForValidation(): void { $this->merge([ 'active' => $this->boolean('active', true), 'rules' => (array) $this->input('rules', []), ]); } public function rules(): array { $badgeId = $this->route('academyBadge')?->id; return [ 'name' => ['required', 'string', 'max:140'], 'slug' => ['required', 'string', 'max:160', Rule::unique('academy_badges', 'slug')->ignore($badgeId)], 'description' => ['nullable', 'string'], 'icon' => ['nullable', 'string', 'max:120'], 'badge_type' => ['required', 'string', 'max:80'], 'rules' => ['nullable', 'array'], 'active' => ['required', 'boolean'], ]; } }