Source code for highton.models.contact_data
from highton.models import HightonModel
from highton.highton_constants import HightonConstants
from highton import fields
[docs]class ContactData(
HightonModel
):
"""
:ivar id: fields.IntegerField(name=HightonConstants.ID)
:ivar phone_numbers: fields.ListField(name=HightonConstants.PHONE_NUMBERS, init_class=PhoneNumber)
:ivar twitter_accounts: fields.ListField(name=HightonConstants.TWITTER_ACCOUNTS, init_class=TwitterAccount)
:ivar web_addresses: fields.ListField(name=HightonConstants.WEB_ADDRESSES, init_class=WebAddress)
:ivar email_addresses: fields.ListField(name=HightonConstants.EMAIL_ADDRESSES, init_class=EmailAddress)
:ivar addresses: fields.ListField(name=HightonConstants.ADDRESSES, init_class=Address)
:ivar instant_messenger: fields.ListField(name=HightonConstants.INSTANT_MESSENGERS, init_class=InstantMessenger)
"""
TAG_NAME = HightonConstants.CONTACT_DATA
def __init__(self, **kwargs):
from highton.models import (
PhoneNumber,
TwitterAccount,
WebAddress,
EmailAddress,
Address,
InstantMessenger,
)
self.phone_numbers = fields.ListField(name=HightonConstants.PHONE_NUMBERS, init_class=PhoneNumber)
self.twitter_accounts = fields.ListField(name=HightonConstants.TWITTER_ACCOUNTS, init_class=TwitterAccount)
self.web_addresses = fields.ListField(name=HightonConstants.WEB_ADDRESSES, init_class=WebAddress)
self.email_addresses = fields.ListField(name=HightonConstants.EMAIL_ADDRESSES, init_class=EmailAddress)
self.addresses = fields.ListField(name=HightonConstants.ADDRESSES, init_class=Address)
self.instant_messenger = fields.ListField(name=HightonConstants.INSTANT_MESSENGERS, init_class=InstantMessenger)
for key, value in kwargs.items():
setattr(self, key, value)