public function show($id) { $beatmapset = Beatmapset::findOrFail($id); return view('admin.beatmapsets.show', compact('beatmapset')); }
public function store() { $beatmapset = Beatmapset::findOrFail(Request::input('beatmapset_id')); $discussion = $beatmapset->beatmapsetDiscussion()->firstOrCreate([]); return redirect(route('admin.beatmapsets.show', $beatmapset)); }
public function disqualify($id) { $beatmapset = Beatmapset::findOrFail($id); priv_check('BeatmapsetDisqualify', $beatmapset)->ensureCan(); if (!$beatmapset->disqualify(Auth::user(), Request::input('comment'))) { return error_popup(trans('beatmaps.nominations.incorrect-state')); } return ['beatmapset' => $beatmapset->defaultJson(Auth::user())]; }
public function updateFavourite($id) { $beatmapset = Beatmapset::findOrFail($id); $user = Auth::user(); if (Request::input('action') === 'favourite') { priv_check('UserFavourite')->ensureCan(); $beatmapset->favourite($user); } elseif (Request::input('action') === 'unfavourite') { priv_check('UserFavouriteRemove')->ensureCan(); $beatmapset->unfavourite($user); } // reload model to be able to get // the favourite count properly $beatmapset = $beatmapset->fresh(); return ['favcount' => $beatmapset->favourite_count, 'favourited' => $beatmapset->hasFavourited($user)]; }