Fix für Short-Signups
This commit is contained in:
@@ -21,6 +21,27 @@ class EventParticipationFee extends CommonModel
|
||||
|
||||
];
|
||||
|
||||
/** Beitragsstufen in Anzeigereihenfolge; die Schlüssel sind die Spaltensuffixe von `amount_*`. */
|
||||
public const array FEE_TYPE_LABELS = [
|
||||
'standard' => 'Standardbeitrag',
|
||||
'reduced' => 'Reduzierter Beitrag',
|
||||
'solidarity' => 'Solidaritätsbeitrag',
|
||||
];
|
||||
|
||||
/**
|
||||
* Die Beitragsstufen, die für diese Teilnahmegruppe tatsächlich hinterlegt sind. Den Standardbeitrag gibt es
|
||||
* immer, reduzierter und Solidaritätsbeitrag sind optional. Nur für diese Stufen liefert
|
||||
* `EventResource::calculateAmount()` einen Betrag.
|
||||
*
|
||||
* @return array<int, string>
|
||||
*/
|
||||
public function availableFeeTypes() : array {
|
||||
return array_values(array_filter(
|
||||
array_keys(self::FEE_TYPE_LABELS),
|
||||
fn (string $feeType) => $this->{'amount_' . $feeType} !== null
|
||||
));
|
||||
}
|
||||
|
||||
public function tenant() : BelongsTo {
|
||||
return $this->belongsTo(Tenant::class, 'tenant', 'slug');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user