# fluent-support/1.10.5/app/Http/Requests/TicketCreateCustomerPortalRequest.php

Fluent Support – Helpdesk &amp; Customer Support Ticket System, version 1.10.5. 56 lines.

- Page: https://pluginprobe.com/plugins/fluent-support/1.10.5/code/app/Http/Requests/TicketCreateCustomerPortalRequest.php
- Raw: https://pluginprobe.com/plugins/fluent-support/1.10.5/raw/app/Http/Requests/TicketCreateCustomerPortalRequest.php
- Modified: 2022-08-24T14:31:58+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/fluent-support/1.10.5/code/app/Http/Requests/TicketCreateCustomerPortalRequest.php#L10-L20`.

```php
<?php

namespace FluentSupport\App\Http\Requests;

use FluentSupport\Framework\Foundation\RequestGuard;

class TicketCreateCustomerPortalRequest extends RequestGuard
{
    /**
     * @return array
     */
    public function rules()
    {
        return [
            'title'       => 'required',
            'content'     => 'required'
        ];
    }

    /**
     * @return array
     */
    public function messages()
    {
        return [
            'title.required' => 'Ticket title is required',
            'content.required' => 'Ticket content is required'
        ];
    }

    public function sanitize()
    {
        $data = $this->all();

        $sanitizeRules = [
            'title' => 'sanitize_text_field',
            'content' => 'wp_kses_post',
            'product_id' => 'intval',
            'client_priority' => 'sanitize_text_field'
        ];

        if( $data && is_array($data) ) {
            foreach ($data as $dataKey => $dataItem) {
                $sanitizeFunc = isset($sanitizeRules[$dataKey]) ? $sanitizeRules[$dataKey]: 'sanitize_text_field';
                if(is_array($dataItem)) {
                    $data[$dataKey] = map_deep($dataItem, $sanitizeFunc);
                } else {
                    $data[$dataKey] = $sanitizeFunc($dataItem);
                }
            }
        }

        return $data;
    }
}

```
