<?php

namespace App\Http\Middleware;

use App\Components\Functions;
use Closure;
use Illuminate\Foundation\Http\Middleware\TransformsRequest;

class FormatNumber extends TransformsRequest
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request $request
     * @param  \Closure $next
     * @return mixed
     */
    protected $used = [
        'price',
        'deposit',
        'room_price',
        'amount',
        'fee-dynamics',
        'cost'
    ];

    protected function transform($key, $value)
    {
        if ($key === 'phone' || $key === 'email') {
            $value = preg_replace('/\s+/', '', $value);
            return $value;
        }

        if (!in_array($key, $this->used, true)) {
            return $value;
        }

        return Functions::filterInputNumber($value);
    }
}
