Added Email Capability
This commit is contained in:
@@ -7,6 +7,7 @@ use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
|
||||
class Alliance extends Model
|
||||
{
|
||||
|
||||
protected $table = 'alliances';
|
||||
|
||||
protected $fillable = [
|
||||
@@ -18,8 +19,25 @@ class Alliance extends Model
|
||||
'internal_name' => 'string',
|
||||
];
|
||||
|
||||
const ALLIANCE_CHALLENGES = [
|
||||
'star_alliance' => 'airlines_alliances.all_star_alliance',
|
||||
'oneworld' => 'airlines_alliances.all_oneworld',
|
||||
'vanilla_alliance' => 'airlines_alliances.all_vanilla_alliance',
|
||||
'skyteam' => 'airlines_alliances.all_skyteam',
|
||||
];
|
||||
|
||||
public function airlines(): HasMany
|
||||
{
|
||||
return $this->hasMany(Airline::class);
|
||||
}
|
||||
|
||||
public static function recalculateChallengeThresholds() : void {
|
||||
$alliances = Alliance::all();
|
||||
foreach ($alliances as $alliance) {
|
||||
$airlineCount = $alliance->airlines()->count();
|
||||
$challenge = self::ALLIANCE_CHALLENGES[$alliance->internal_name];
|
||||
Achievement::where('internal_name', $challenge)->update(['threshold' => $airlineCount]);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user