public function postrequestForLeave(Request $request) { $rules = array('typeofLeave' => 'required', 'startDate' => 'required', 'reasonforAbsence' => 'required', 'recommendApproval' => 'required', 'approvedBy' => 'required'); $validator = Validator::make($request->all(), $rules); if ($validator->fails()) { $this->throwValidationException($request, $validator); } $id = Auth::user()->id; $dateUpdate = date("Y-m-d H:i:s"); if ($request->input('typeofLeave') == 1) { $days_taken = Auth::user()->VL_taken + $request->input('VL_daysApplied'); $balance = Auth::user()->VL_entitlement - Auth::user()->VL_taken; if ($balance != 0) { if ($days_taken <= Auth::user()->VL_entitlement) { $department = Positions::find(Auth::user()->position_id)->departments; $requestAdd = new Leaves(array('user_id' => $id, 'leave_type' => $request->input('typeofLeave'), 'purpose' => $request->input('reasonforAbsence'), 'department_id' => $department->id, 'permission_id1' => $request->input('recommendApproval'), 'permission_id2' => $request->input('approvedBy'), 'days_applied' => $request->input('VL_daysApplied'), 'start_date' => $request->input('startDate'), 'updated_at' => $dateUpdate)); $save = $requestAdd->save(); if ($save) { $status = "Success!"; } else { $status = "Failed!"; } } else { $status = "Failed!"; } } else { $status = "You don't have any days of leave left."; } } elseif ($request->input('typeofLeave') == 2) { $days_taken = Auth::user()->SL_taken + $request->input('SL_daysApplied'); $balance = Auth::user()->SL_entitlement - Auth::user()->SL_taken; if ($balance != 0) { if ($days_taken <= Auth::user()->SL_entitlement) { $department = Positions::find(Auth::user()->position_id)->departments; $requestAdd = new Leaves(array('user_id' => $id, 'leave_type' => $request->input('typeofLeave'), 'purpose' => $request->input('reasonforAbsence'), 'department_id' => $department->id, 'permission_id1' => $request->input('recommendApproval'), 'permission_id2' => $request->input('approvedBy'), 'days_applied' => $request->input('SL_daysApplied'), 'start_date' => $request->input('startDate'), 'updated_at' => $dateUpdate)); $save = $requestAdd->save(); if ($save) { $status = "Success!"; } else { $status = "Failed!"; } } else { $status = "Failed!"; } } else { $status = "You don't have any days of leave left."; } } elseif ($request->input('typeofLeave') == 3) { $days_taken = Auth::user()->ML_taken + $request->input('ML_daysApplied'); $balance = Auth::user()->ML_entitlement - Auth::user()->ML_taken; if ($balance != 0) { if ($days_taken <= Auth::user()->ML_entitlement) { // Auth::user()->ML_taken = $days_taken; // Auth::user()->save(); $department = Positions::find(Auth::user()->position_id)->departments; $requestAdd = new Leaves(array('user_id' => $id, 'leave_type' => $request->input('typeofLeave'), 'purpose' => $request->input('reasonforAbsence'), 'department_id' => $department->id, 'permission_id1' => $request->input('recommendApproval'), 'permission_id2' => $request->input('approvedBy'), 'days_applied' => $request->input('ML_daysApplied'), 'start_date' => $request->input('startDate'), 'updated_at' => $dateUpdate)); $save = $requestAdd->save(); if ($save) { $status = "Success!"; } else { $status = "Failed!"; } } else { $status = "Failed!"; } } else { $status = "You don't have any days of leave left."; } } elseif ($request->input('typeofLeave') == 4) { $days_taken = Auth::user()->PL_taken + $request->input('PL_daysApplied'); $balance = Auth::user()->PL_entitlement - Auth::user()->PL_taken; if ($balance != 0) { if ($days_taken <= Auth::user()->PL_entitlement) { $department = Positions::find(Auth::user()->position_id)->departments; $requestAdd = new Leaves(array('user_id' => $id, 'leave_type' => $request->input('typeofLeave'), 'purpose' => $request->input('reasonforAbsence'), 'department_id' => $department->id, 'permission_id1' => $request->input('recommendApproval'), 'permission_id2' => $request->input('approvedBy'), 'days_applied' => $request->input('PL_daysApplied'), 'start_date' => $request->input('startDate'), 'updated_at' => $dateUpdate)); $save = $requestAdd->save(); if ($save) { $status = "Success!"; } else { $status = "Failed!"; } } else { $status = "Failed!"; } } else { $status = "You don't have any days of leave left."; } } // dd($request->all()); return redirect('/inbox')->with('status', $status); }