mirror of
https://github.com/Poniverse/Pony.fm.git
synced 2025-02-07 06:16:43 +01:00
Handle slug collisions with disabled accounts properly.
This commit is contained in:
parent
4e540de38e
commit
09de55d14d
2 changed files with 13 additions and 5 deletions
|
@ -56,12 +56,19 @@ class RebuildArtists extends Command
|
|||
*/
|
||||
public function handle()
|
||||
{
|
||||
$numberOfUsers = User::count();
|
||||
|
||||
$bar = $this->output->createProgressBar($numberOfUsers);
|
||||
|
||||
foreach(User::with(['tracks' => function($query) {
|
||||
$query->published()->listed();
|
||||
}])->get() as $user) {
|
||||
$bar->advance();
|
||||
$user->track_count = $user->tracks->count();
|
||||
$user->save();
|
||||
$this->info('Updated user #'.$user->id.'!');
|
||||
}
|
||||
|
||||
$bar->finish();
|
||||
$this->line('');
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,12 +35,13 @@ class ArtistsController extends ApiControllerBase
|
|||
{
|
||||
public function getFavourites($slug)
|
||||
{
|
||||
$user = User::whereSlug($slug)->first();
|
||||
$user = User::where('slug', $slug)->whereNull('disabled_at')->first();
|
||||
if (!$user) {
|
||||
App::abort(404);
|
||||
}
|
||||
|
||||
$favs = Favourite::whereUserId($user->id)->with([
|
||||
$favs = Favourite::where('user_id', $user->id)
|
||||
->with([
|
||||
'track.genre',
|
||||
'track.cover',
|
||||
'track.user',
|
||||
|
@ -75,7 +76,7 @@ class ArtistsController extends ApiControllerBase
|
|||
|
||||
public function getContent($slug)
|
||||
{
|
||||
$user = User::whereSlug($slug)->first();
|
||||
$user = User::where('slug', $slug)->whereNull('disabled_at')->first();
|
||||
if (!$user) {
|
||||
App::abort(404);
|
||||
}
|
||||
|
@ -110,7 +111,7 @@ class ArtistsController extends ApiControllerBase
|
|||
|
||||
public function getShow($slug)
|
||||
{
|
||||
$user = User::whereSlug($slug)
|
||||
$user = User::where('slug', $slug)
|
||||
->whereNull('disabled_at')
|
||||
->userDetails()
|
||||
->with([
|
||||
|
|
Loading…
Reference in a new issue