/** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(CreateSourceRequest $request) { $source = $this->source->storeSource($request); if (!$source) { return redirect()->back()->with('status', 'create-error'); } else { $type = $request->origin_type; switch ($type) { case 'url': // Queue remote file download $this->source->syncSource($source); break; case 'file': $this->source->uploadSource($source, $request); break; default: } } return redirect()->route('admin.source.index')->with('status', 'create-success'); }