<?php

namespace Dobare\Core;

/**
 * Extended Dobare Membership class with additional member fields
 * 
 * @property string $name
 * @property string $phone
 * @property int $gift_credit_amount
 * @property string|null $birth_date
 * @property string|null $marriage_date
 * @property string $referral_code
 * @property string $referred_by_code
 * @property array $labels
 */
class Dobare_Membership_Extended extends Dobare_Membership {
	public $birth_date;
	public $marriage_date;
	public $referral_code;
	public $referred_by_code;
	public $labels;

	public function __construct( 
		string $name, 
		string $phone, 
		int $gift_credit_amount,
		?string $birth_date = null,
		?string $marriage_date = null,
		string $referral_code = '',
		string $referred_by_code = '',
		array $labels = []
	) {
		parent::__construct( $name, $phone, $gift_credit_amount );
		
		$this->birth_date        = $birth_date;
		$this->marriage_date     = $marriage_date;
		$this->referral_code     = $referral_code;
		$this->referred_by_code  = $referred_by_code;
		$this->labels            = $labels;
	}
}

