43 lines
1.2 KiB
PHP
43 lines
1.2 KiB
PHP
<?php
|
|
|
|
namespace App\Observers;
|
|
|
|
use App\Actions\Tabulation\TotalEntryScores;
|
|
use App\Models\BonusScore;
|
|
|
|
class BonusScoreObserver
|
|
{
|
|
/**
|
|
* Handle the ScoreSheet "created" event.
|
|
*/
|
|
public function created(BonusScore $bonusScore): void
|
|
{
|
|
$calculator = app(TotalEntryScores::class);
|
|
$calculator($bonusScore->entry, true);
|
|
$message = 'Bonus Score Entered.';
|
|
$message .= '<br>Judge: '.$bonusScore->judge->full_name().' <'.$bonusScore->judge->email.'>';
|
|
$message .= '<br>Score: '.$bonusScore->score;
|
|
$message .= '<br>Scored Audition: '.$bonusScore->originallyScoredEntry->audition->name;
|
|
$affected = ['auditions' => [$bonusScore->entry->audition_id]];
|
|
auditionLog($message, $affected);
|
|
}
|
|
|
|
/**
|
|
* Handle the ScoreSheet "updated" event.
|
|
*/
|
|
public function updated(BonusScore $bonusScore): void
|
|
{
|
|
$calculator = app(TotalEntryScores::class);
|
|
$calculator($bonusScore->entry, true);
|
|
}
|
|
|
|
/**
|
|
* Handle the ScoreSheet "deleted" event.
|
|
*/
|
|
public function deleted(BonusScore $bonusScore): void
|
|
{
|
|
$calculator = app(TotalEntryScores::class);
|
|
$calculator($bonusScore->entry, true);
|
|
}
|
|
}
|