input('action'); $uniqueTable = [ 'bentuk-tanah' => 'bentuk_tanah', 'kontur-tanah' => 'kontur_tanah', 'posisi-kavling' => 'posisi_kavling', 'ketinggian-tanah' => 'ketinggian_tanah', 'kondisi-fisik-tanah' => 'kondisi_fisik_tanah', 'kondisi-bangunan' => 'kondisi_bangunan', 'jenis-bangunan' => 'jenis_bangunan', 'sifat-bangunan' => 'sifat_bangunan', 'sarana-pelengkap' => 'sarana_pelengkap', 'lalu_lintas_lokasi' => 'lalu_lintas_lokasi', 'tingkat-keramaian' => 'tingkat_keramaian', ]; $rules = [ 'name' => 'required|max:255', ]; $id = $this->route('id'); if ($this->method() == 'PUT' || $this->method() == 'PATCH') { $rules['code'] = 'required|max:50|unique:' . $uniqueTable[$action] . ',code,' . $id; } else { $rules['code'] = 'required|max:50|unique:' . $uniqueTable[$action] . ',code'; } return $rules; } /** * Determine if the user is authorized to make this request. */ public function authorize() : bool { return true; } protected function prepareForValidation() { $this->merge([ 'status' => true, ]); } }