App\Http\Controllers\ProductsController::validationMessagesFeatures PHP Method

validationMessagesFeatures() private method

create the error message by taking the name feature, and validation rules.
private validationMessagesFeatures ( [string] $rules, [string] $index, [string] $name ) : [array]
$rules [string]
$index [string]
$name [string]
return [array]
    private function validationMessagesFeatures($rules, $index, $name)
    {
        $return = [];
        if (strpos($rules, '|in') !== false) {
            $return[$index . '.in'] = $name . ' ' . trans('features.is_invalid');
        }
        if (strpos($rules, '|numeric') !== false) {
            $return[$index . '.numeric'] = $name . ' ' . trans('features.only_allows_numbers');
            if (strpos($rules, '|min') !== false) {
                $num = explode('min:', $rules);
                $num = explode('|', $num[1]);
                $return[$index . '.min'] = $name . ' ' . str_replace('*N*', $num[0], trans('features.minimum_number'));
            } elseif (strpos($rules, '|max') !== false) {
                $num = explode('max:', $rules);
                $num = explode('|', $num[1]);
                $return[$index . '.max'] = $name . ' ' . str_replace('*N*', $num[0], trans('features.maximum_number_2'));
            } elseif (strpos($rules, '|between') !== false) {
                $num = explode('between:', $rules);
                $num = explode('|', $num[1]);
                $num = explode(',', $num[0]);
                $return[$index . '.between'] = $name . ' ' . str_replace(['*N1*', '*N2*'], $num, trans('features.between_n_and_n'));
            }
        } else {
            if (strpos($rules, '|alpha') !== false) {
                $return[$index . '.alpha'] = $name . ' ' . trans('features.only_allows_letters');
            }
            if (strpos($rules, '|min') !== false) {
                $num = explode('min:', $rules);
                $num = explode('|', $num[1]);
                $return[$index . '.min'] = $name . ' ' . str_replace('*N*', $num[0], trans('features.minimum_characters'));
            } elseif (strpos($rules, '|max') !== false) {
                $num = explode('max:', $rules);
                $num = explode('|', $num[1]);
                $return[$index . '.max'] = $name . ' ' . str_replace('*N*', $num[0], trans('features.maximum_characters'));
            } elseif (strpos($rules, '|between') !== false) {
                $num = explode('between:', $rules);
                $num = explode('|', $num[1]);
                $num = explode(',', $num[0]);
                $return[$index . '.between'] = $name . ' ' . str_replace(['*N1*', '*N2*'], $num, trans('features.between_n_and_n_characters'));
            }
        }
        if (strpos($rules, 'required_without_all') !== false) {
            $return[$index . '.required_without_all'] = $name . ' ' . trans('features.one_is_required');
        } elseif (strpos($rules, 'required_with') !== false) {
            $return[$index . '.required_with'] = $name . ' ' . trans('features.is_required');
        } elseif (strpos($rules, 'required') !== false) {
            $return[$index . '.required'] = $name . ' ' . trans('features.is_required');
        }
        return $return;
    }