auditionadmin/app/Observers/BonusScoreObserver.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);
}
}