validateRequest($request); $this->insertNominee($request); return response()->json([ 'status' => 'success', 'message'=> 'Nominee added successfully' ]); } public function validateRequest ($request) { $this->validate($request, [ 'name' => [ 'required', Rule::unique('nominee')->where(function($query){ $query->where('election_id', Util::getCurrentElection()); }) ], 'no_anggota' => [ 'required', Rule::unique('nominee')->where(function($query){ $query->where('election_id', Util::getCurrentElection()); }) ], 'unit' => 'required', 'position_id' => 'required|exists:position,id', 'partylist_id' => 'nullable|exists:partylist,id', 'image' => 'nullable|image' ]); } public function insertNominee ($request) { $nominee = $request->all(); $default_image = config('app.cloudinary_enabled') ? config('app.cloudinary_image_default') : config('app.nominee_image'); $nominee['image'] = Util::getImagePath($request, config('app.nominee_directory'), $default_image); $nominee['election_id'] = Util::getCurrentElection(); Nominee::create($nominee); } }