protected static function GenerateAddressesAndPhonesForPerson(Person $objPerson) { $intAddressCount = rand(0, 5); for ($i = 0; $i < $intAddressCount; $i++) { $objAddress = new Address(); $objAddress->AddressTypeId = QDataGen::GenerateFromArray(array_keys(AddressType::$NameArray)); $objAddress->Person = $objPerson; $objAddress->Address1 = QDataGen::GenerateStreetAddress(); if (rand(0, 1)) { $objAddress->Address2 = QDataGen::GenerateAddressLine2(); } $objAddress->City = QDataGen::GenerateCity(); $objAddress->State = QDataGen::GenerateUsState(); $objAddress->ZipCode = rand(10000, 99999); $objAddress->Country = 'US'; $objAddress->InvalidFlag = false; $objAddress->VerificationCheckedFlag = true; switch ($objAddress->AddressTypeId) { case AddressType::Temporary: $objAddress->CurrentFlag = true; $dttNextYear = QDateTime::Now(); $dttNextYear->Year++; $objAddress->DateUntilWhen = QDataGen::GenerateDateTime(QDateTime::Now(), $dttNextYear); break; default: $objAddress->CurrentFlag = rand(0, 1); break; } $objAddress->Save(); } $intPhoneCount = rand(0, 5); $objPhoneArray = array(); for ($i = 0; $i < $intPhoneCount; $i++) { $objPhone = new Phone(); $objPhone->PhoneTypeId = QDataGen::GenerateFromArray(array_keys(PhoneType::$NameArray)); while ($objPhone->PhoneTypeId == PhoneType::Home) { $objPhone->PhoneTypeId = QDataGen::GenerateFromArray(array_keys(PhoneType::$NameArray)); } $objPhone->Number = QDataGen::GeneratePhone(); $objPhone->Person = $objPerson; $objPhone->Save(); $objPhoneArray[] = $objPhone; } if ($intPhoneCount && !rand(0, 2)) { QDataGen::GenerateFromArray($objPhoneArray)->SetAsPrimary(); } $intEmailCount = rand(0, 5); $objEmailArray = array(); for ($i = 0; $i < $intEmailCount; $i++) { $objEmail = new Email(); $objEmail->Address = QDataGen::GenerateEmail($objPerson->FirstName, $objPerson->LastName); $objEmail->Person = $objPerson; $objEmail->Save(); $objEmailArray[] = $objEmail; } if ($intEmailCount && !rand(0, 2)) { QDataGen::GenerateFromArray($objEmailArray)->SetAsPrimary(); } $intMaxId = OtherContactMethod::CountAll(); for ($intOtherContactMethodId = 1; $intOtherContactMethodId <= $intMaxId; $intOtherContactMethodId++) { if (!rand(0, 2)) { $objContactInfo = new OtherContactInfo(); $objContactInfo->Person = $objPerson; $objContactInfo->OtherContactMethodId = $intOtherContactMethodId; $objContactInfo->Value = QDataGen::GenerateUsername($objPerson->FirstName, $objPerson->LastName); $objContactInfo->Save(); } } }