public function favourite($user)
{
DB::transaction(function () use($user) {
try {
FavouriteBeatmapset::create(['user_id' => $user->user_id, 'beatmapset_id' => $this->beatmapset_id]);
} catch (QueryException $e) {
if (is_sql_unique_exception($e)) {
return;
} else {
throw $e;
}
}
$this->favourite_count = DB::raw('favourite_count + 1');
$this->save();
});
}