from pydantic import Field from .person import PersonModel from .enums import OnlineAlmanacField from .submodels import Address, LoginInfo class MemberModel(PersonModel): login: LoginInfo address: Address contribution_paid: bool = False active_member: bool = False studying: bool = False # preferences receive_company_mail: bool = True receive_spam_mail: bool = True in_physical_almanac: bool = False in_online_almanac: bool = True online_almanac_fields: list[OnlineAlmanacField] = Field(default_factory=list) # IT stuff shell: str = "/bin/bash" # TODO: support other shells? mail_token: str | None = None