]> git.localhorst.tv Git - alttp.git/blobdiff - app/Models/Protocol.php
allow setting seeds
[alttp.git] / app / Models / Protocol.php
index bbfea732fe97fecfc5a7a48da553580577bc78bf..8adc5456474352562c4cbbb36503dacc2cf8e5ca 100644 (file)
@@ -10,6 +10,19 @@ class Protocol extends Model
 {
        use HasFactory;
 
+       public static function resultReported(Tournament $tournament, Result $result, User $user) {
+               $protocol = static::create([
+                       'tournament_id' => $tournament->id,
+                       'user_id' => $user->id,
+                       'type' => 'result.report',
+                       'details' => [
+                               'tournament' => static::tournamentMemo($tournament),
+                               'result' => static::resultMemo($result),
+                       ],
+               ]);
+               ProtocolAdded::dispatch($protocol);
+       }
+
        public static function roundAdded(Tournament $tournament, Round $round, User $user) {
                $protocol = static::create([
                        'tournament_id' => $tournament->id,
@@ -23,6 +36,19 @@ class Protocol extends Model
                ProtocolAdded::dispatch($protocol);
        }
 
+       public static function roundSeedSet(Tournament $tournament, Round $round, User $user) {
+               $protocol = static::create([
+                       'tournament_id' => $tournament->id,
+                       'user_id' => $user->id,
+                       'type' => 'round.create',
+                       'details' => [
+                               'tournament' => static::tournamentMemo($tournament),
+                               'round' => static::roundMemo($round),
+                       ],
+               ]);
+               ProtocolAdded::dispatch($protocol);
+       }
+
        public static function tournamentCreated(Tournament $tournament, User $user) {
                $protocol = static::create([
                        'tournament_id' => $tournament->id,
@@ -36,6 +62,13 @@ class Protocol extends Model
        }
 
 
+       protected static function resultMemo(Result $result) {
+               return [
+                       'id' => $result->id,
+                       'time' => $result->time,
+               ];
+       }
+
        protected static function roundMemo(Round $round) {
                return [
                        'id' => $round->id,