29 lines
675 B
PHP
29 lines
675 B
PHP
<?php
|
|
|
|
namespace App\Listeners;
|
|
|
|
use App\Models\Player;
|
|
use App\Models\Texture;
|
|
|
|
class ResetPlayers
|
|
{
|
|
public function handle(Texture $texture)
|
|
{
|
|
// no need to update players
|
|
// if texture was switched from "private" to "public"
|
|
if ($texture->exists && $texture->public) {
|
|
return;
|
|
}
|
|
|
|
$type = $texture->type == 'cape' ? 'tid_cape' : 'tid_skin';
|
|
$query = Player::where($type, $texture->tid);
|
|
|
|
// texture was switched from "private" to "public"
|
|
if ($texture->exists) {
|
|
$query = $query->where('uid', '<>', $texture->uploader);
|
|
}
|
|
|
|
$query->update([$type => 0]);
|
|
}
|
|
}
|