InTrackUser.fromMap constructor
InTrackUser.fromMap(
- Map<String, dynamic> userDetails
)
Implementation
InTrackUser.fromMap(Map<String, dynamic> userDetails) {
if (userDetails.containsKey('userId')) {
userId = userDetails['userId'].toString();
}
if (userDetails.containsKey('firstName')) {
firstName = userDetails['firstName'].toString();
}
if (userDetails.containsKey('lastName')) {
lastName = userDetails['lastName'].toString();
}
if (userDetails.containsKey('email')) {
email = userDetails['email'].toString();
}
if (userDetails.containsKey('phone')) {
phone = userDetails['phone'].toString();
}
if (userDetails.containsKey('country')) {
country = userDetails['country'].toString();
}
if (userDetails.containsKey('state')) {
state = userDetails['state'].toString();
}
if (userDetails.containsKey('city')) {
city = userDetails['city'].toString();
}
if (userDetails.containsKey('gender')) {
String genderString = userDetails['gender'].toString().toLowerCase();
switch (genderString) {
case 'female':
gender = ApiUserGender.FEMALE;
break;
case 'male':
gender = ApiUserGender.MALE;
break;
default:
gender = ApiUserGender.OTHER;
}
}
if (userDetails.containsKey('birthday')) {
birthday = DateTime.parse(userDetails['birthday'].toString());
}
if (userDetails.containsKey('company')) {
company = userDetails['company'].toString();
}
if (userDetails.containsKey('hashedPhone')) {
hashedPhone = userDetails['hashedPhone'].toString();
}
if (userDetails.containsKey('hashedEmail')) {
hashedEmail = userDetails['hashedEmail'].toString();
}
if (userDetails.containsKey('smsOptIn')) {
smsOptIn = userDetails['smsOptIn'].toString().toLowerCase() == 'true';
}
if (userDetails.containsKey('emailOptIn')) {
emailOptIn = userDetails['emailOptIn'].toString().toLowerCase() == 'true';
}
if (userDetails.containsKey('pushOptIn')) {
pushOptIn = userDetails['pushOptIn'].toString().toLowerCase() == 'true';
}
if (userDetails.containsKey('webPushOptIn')) {
webPushOptIn =
userDetails['webPushOptIn'].toString().toLowerCase() == 'true';
}
if (userDetails.containsKey('attributes')) {
attributes = userDetails['attributes'];
}
}