<?php

namespace App\DataTables;

use App\Models\ChiusuraServizio;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Validation\Rule;
use Yajra\DataTables\DataTablesEditor;
use Illuminate\Http\Request;
use Illuminate\Validation\ValidationException;


class ChiusuraServizioDataTableEditor extends DataTablesEditor
{
  protected $model = ChiusuraServizio::class;

  protected $messages = [
    'attivita_id.required' => 'La attività è richiesta',
    'chiusura_at.required' => 'La data e ora della chiusura sono richieste',
    'note.required' => 'La note è richiesta',
    'user_id.required' => 'L\'utente è richiesto',
  ];

  /**
  * Get create action validation rules.
  *
  * @return array
  */
  public function createRules(): array
  {
    return [
      'attivita_id'  => 'required',
      'chiusura_at' => 'required|date',
      'user_id' => 'required',
      'note' => 'nullable',
    ];
  }

  public function createMessages(): array{
    return $this->messages;
  }

  /**
  * Get edit action validation rules.
  *
  * @param Model $model
  * @return array
  */
  public function editRules(Model $model): array
  {
    return [
      'attivita_id'  => 'required',
      'chiusura_at' => 'required|date',
      'note' => 'nullable',
      'info' => 'nullable',
    ];
  }

  public function editMessages(): array{
    return $this->messages;
  }

  /**
  * Get remove action validation rules.
  *
  * @param Model $model
  * @return array
  */
  public function removeRules(Model $model): array
  {
    return [];
  }

  public function creating(Model $model, array $data): array
  {
    return $data;
  }

  public function updating(Model $model, array $data): array
  {
    return $data;
  }
  public function messages(): array
  {
    return $this->messages;
  }

}
