Ejemplo n.º 1
0
 public function addExperience(Request $request, Skill $skill)
 {
     if (!$request->hasFile('sample_file')) {
         return response('No file was sent', 404);
     }
     $file = $request->file('sample_file');
     $input = $request->except('sample_file');
     $user = Auth::user();
     $imageName = $user->id . str_random(20) . '.' . $file->getClientOriginalExtension();
     $file->move(public_path() . '/img/files/' . $user->id . '/', $imageName);
     $real_name = $file->getClientOriginalName();
     $size = $file->getClientSize() / (1024 * 1024);
     //calculate the file size in MB
     $experience = $skill->experiences()->create($input);
     $user->usage->add(filesize(public_path() . '/img/files/' . $user->id . '/' . $imageName) / (1024 * 1024));
     // storage add
     Experience::where('id', $experience->id)->first()->files()->create(['user_id' => $user->id, 'real_name' => $real_name, 'name' => $user->id . '/' . $imageName, 'size' => $size]);
     $input['file'] = $imageName;
     return ['hasCallback' => '1', 'callback' => 'skill_experiences', 'hasMsg' => 0, 'msg' => '', 'returns' => $skill->experiences()->with('files')->get()];
 }