- use HasApiTokens, HasFactory, Notifiable;
-
- /**
- * The attributes that are mass assignable.
- *
- * @var array<int, string>
- */
- protected $fillable = [
- 'name',
- 'email',
- 'password',
- ];
-
- /**
- * The attributes that should be hidden for serialization.
- *
- * @var array<int, string>
- */
- protected $hidden = [
- 'password',
- 'remember_token',
- ];
-
- /**
- * The attributes that should be cast.
- *
- * @var array<string, string>
- */
- protected $casts = [
- 'email_verified_at' => 'datetime',
- ];
+ use HasApiTokens, HasFactory, Notifiable;
+
+ public function isParticipant(Tournament $tournament) {
+ foreach ($tournament->participants as $participant) {
+ if ($participant->user->id == $this->id) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ * The attributes that are mass assignable.
+ *
+ * @var string[]
+ */
+ protected $fillable = [
+ 'id',
+ 'username',
+ 'discriminator',
+ 'email',
+ 'avatar',
+ 'verified',
+ 'locale',
+ 'mfa_enabled',
+ 'refresh_token',
+ 'role',
+ ];
+
+ /**
+ * The attributes that should be hidden for serialization.
+ *
+ * @var array
+ */
+ protected $hidden = [
+ 'email',
+ 'mfa_enabled',
+ 'refresh_token',
+ 'remember_token',
+ ];
+
+ /**
+ * The attributes that should be cast.
+ *
+ * @var array
+ */
+ protected $casts = [
+ 'id' => 'string',
+ 'username' => 'string',
+ 'discriminator' => 'string',
+ 'email' => 'string',
+ 'avatar' => 'string',
+ 'verified' => 'boolean',
+ 'locale' => 'string',
+ 'mfa_enabled' => 'boolean',
+ 'refresh_token' => 'encrypted',
+ ];