/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $experiences = Experience::where('member_id', $request->input('0.member_id'))->delete(); for ($i = 0; $i < count($request->all()); $i++) { if ($request->input($i . '.project')) { $this->validate($request, [$i . '.member_id' => 'required|numeric', $i . '.date_started' => 'required']); $experience = new Experience(); $experience->member_id = $request->input($i . '.member_id'); $experience->project_id = $request->input($i . '.project.id'); $experience->date_started = Carbon::parse($request->input($i . '.date_started')); $tenure = Carbon::today()->diffInMonths(Carbon::parse($request->input($i . '.date_started'))); $experience->experience = $tenure < 3 ? 'Beginner' : ($tenure >= 3 && $tenure < 6 ? 'Moderately Experienced' : 'Experienced'); $experience->save(); } } }
public function postAdd(Request $request) { if (!ACL::hasPermission('experience', 'add')) { return redirect(route('experience'))->withErrors(['You don\'t have permission for add new experience.']); } $this->validate($request, ['dateStart' => 'required|date_format:m/d/Y', 'dateEnd' => 'date_format:m/d/Y', 'position' => 'required|max:50', 'company' => 'required|max:50', 'description' => 'required']); $experience = new Experience(); $experience->dateStart = Carbon::createFromFormat('m/d/Y', $request->dateStart)->format('Y-m-d'); if (!empty($request->dateEnd)) { $experience->dateEnd = Carbon::createFromFormat('m/d/Y', $request->dateEnd)->format('Y-m-d'); } $experience->position = $request->position; $experience->company = $request->company; $experience->description = $request->description; $experience->save(); $success = "Experience added successfully."; return redirect(route('experience'))->with(compact('success')); }
/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(ApplicantFormRequest $request) { try { DB::beginTransaction(); $applicant = new Applicant(); $applicant->fill($request->only('name', 'email', 'phone', 'address', 'gender', 'date_of_birth', 'id_type', 'id_number', 'marital_status', 'english_translation', 'bangla_translation')); if ($request->hasFile('photo')) { $extension = $request->file('photo')->getClientOriginalExtension(); $photoName = $request->input('email') . time() . '.' . $extension; $request->file('photo')->move('uploads/photos/', $photoName); $applicant->photo = $photoName; } if ($request->hasFile('recommendation_letter')) { $extension = $request->file('recommendation_letter')->getClientOriginalExtension(); $fileName = $request->input('email') . time() . '.' . $extension; $request->file('recommendation_letter')->move('uploads/letters/', $fileName); $applicant->recommendation_letter = $fileName; } $applicant->save(); # Qualification Entry $degrees = $request->input('degree'); $institutes = $request->input('institute'); $results = $request->input('result'); $passing_years = $request->input('passing_year'); if (count($degrees) > 0) { foreach ($degrees as $degree) { $index = array_search($degree, $degrees); $qualification = new Qualification(); $qualification->degree = $degrees[$index]; $qualification->institute = $institutes[$index]; $qualification->result = $results[$index]; $qualification->passing_year = $passing_years[$index]; $qualification->applicant_id = $applicant->id; $qualification->save(); } } # Employments Entry $designations = $request->input('designation'); $organizations = $request->input('organization'); $froms = $request->input('from'); $tos = $request->input('to'); if (count($designations) > 0) { foreach ($designations as $designation) { $index = array_search($designation, $designations); $experience = new Experience(); $experience->designation = $designations[$index]; $experience->organization = $organizations[$index]; $experience->from = $froms[$index]; $experience->to = $tos[$index]; $experience->applicant_id = $applicant->id; $experience->save(); } } DB::commit(); //return view('application.index')->with('message', 'You have successfully submitted your resume!!'); return redirect('/response')->with('message', 'Application submission successful'); } catch (\Exception $e) { DB::rollback(); dd($e->getMessage()); } }