wish = $wish; } /** * Get Wish List. * * @param $uid * * @return void */ public function index($uid) { } /** * Add New Wish. * * @param \Illuminate\Http\Request $request * @param $uid * * @return \Illuminate\Http\RedirectResponse */ public function store(Request $request, $uid) { $imdb = Str::startsWith($request->get('imdb'), 'tt') ? $request->get('imdb') : 'tt'.$request->get('imdb'); if ($this->wish->exists($uid, $imdb)) { return redirect() ->route('user_wishlist', ['id' => $uid]) ->withErrors('Wish already exists!'); } $omdb = $this->wish->omdbRequest($imdb); if ($omdb === null || $omdb === false) { return redirect() ->route('user_wishlist', ['id' => $uid]) ->withErrors('IMDB Bad Request!'); } $source = $this->wish->getSource($imdb); $this->wish->create([ 'title' => $omdb['Title'].' ('.$omdb['Year'].')', 'type' => $omdb['Type'], 'imdb' => $imdb, 'source' => $source, 'user_id' => $uid, ]); return redirect() ->route('user_wishlist', ['id' => $uid]) ->withSuccess('Wish Successfully Added!'); } /** * Delete A Wish. * * @param \Illuminate\Http\Request $request * @param $uid * @param $id * * @return \Illuminate\Http\RedirectResponse */ public function destroy(Request $request, $uid, $id) { $this->wish->delete($id); return redirect() ->route('user_wishlist', ['id' => $uid]) ->withSuccess('Wish Successfully Removed!'); } }