Untitled
Anis
plain_text
a month ago
2.3 kB
3
Indexable
Never
public function store(Request $request) { try{ $user = $request->user(); $validator = Validator::make($request->all(), [ 'title' => 'required|string|max:255', 'text' => 'required|string', 'record' => 'mimes:mp3,wav', ]); if ($validator->fails()) { return response()->json(['status' => false, 'message' => $validator->errors()->first()]); } $voice_text = new VoiceText(); $voice_text->title = $request->title; $voice_text->text = $request->text; $voice_text->user_id = $user->id; $voice_text->description = $request->description; $voice_text->tags = $request->tags; $voice_text->location = $request->location; $voice_text->language = $request->language; $voice_text->speaker_name = $request->speaker_name; $voice_text->year = $request->year; $voice_text->unix_timestamp = $request->date ? strtotime($request->date) : strtotime(now()); if ($request->hasFile('record')) { $receiver = new FileReceiver("record", $request, HandlerFactory::classFromRequest($request)); if ($receiver->isUploaded() === false) { throw new UploadMissingFileException(); } $save = $receiver->receive(); if ($save->isFinished()) { $file = $save->getFile(); $path = 'public/uploads/files/users/'; $extension = $file->getClientOriginalExtension(); $fileName = rand() . time() . "." . $extension; $file->move($path, $fileName); // $user->image = $path . $fileName; $voice_text->record = $path . $fileName; $voice_text->save(); $voice_text->record = $voice_text->record ? asset($voice_text->record) : null; return response()->json([ 'status' => true, 'data' => $voice_text ]); } $handler = $save->handler(); } } catch(Exception $e){ return response()->json(['status' => false, 'message' => 'Something went wrong!']); } }