protected static function GenerateAttributesForPerson($objPerson) { foreach (Attribute::LoadAll() as $objAttribute) { if (!rand(0, 3)) { switch ($objAttribute->AttributeDataTypeId) { case AttributeDataType::Text: $mixData = QDataGen::GenerateTitle(5, 25); break; case AttributeDataType::Checkbox: $mixData = rand(0, 1) ? true : false; break; case AttributeDataType::Date: $mixData = QDataGen::GenerateDateTime(self::$LifeStartDate, QDateTime::Now()); break; case AttributeDataType::ImmutableSingleDropdown: case AttributeDataType::MutableSingleDropdown: $mixData = QDataGen::GenerateFromArray($objAttribute->GetAttributeOptionArray()); break; case AttributeDataType::ImmutableMultipleDropdown: case AttributeDataType::MutableMultipleDropdown: $mixData = array(); while (!count($mixData)) { foreach ($objAttribute->GetAttributeOptionArray() as $objAttributeOption) { if (rand(0, 1)) { $mixData[] = $objAttributeOption; } } } break; default: throw new Exception('Unhandled Attribute Data Type'); } $objPerson->SetAttribute($objAttribute, $mixData); } } }
$objPerson = Person::Load(rand(1, $intMaxPersonId)); $dttDateTime = QDataGen::GenerateDateTime($dttStartDate, QDateTime::Now()); $objTopic = $objForum->PostTopic($strName, $strFirstMessageText, $objPerson, $dttDateTime); $objForumTopicArray[] = $objTopic; } ////////////////////// // Qcodo Package Manager ////////////////////// $objPackageCategories = PackageCategory::QueryArray(QQ::NotEqual(QQN::PackageCategory()->Token, 'issues')); while (QDataGen::DisplayWhileTask('Generating QPM Packages...', GENERATE_QPM)) { $objPackage = new Package(); $objPackage->PackageCategory = QDataGen::GenerateFromArray($objPackageCategories); $objPackage->Name = QDataGen::GenerateTitle(1, 3); $objPackage->Token = Package::SanitizeForToken($objPackage->Name); while (Package::LoadByToken($objPackage->Token)) { $objPackage->Name = QDataGen::GenerateTitle(1, 3); $objPackage->Token = Package::SanitizeForToken($objPackage->Name); } $objPackage->Description = QDataGen::GenerateContent(rand(1, 3), 20, 80); $objPackage->Save(); $objPackage->CreateTopicAndTopicLink(Person::Load(rand(1, $intMaxPersonId))); $intContributionCount = rand(1, 10); for ($intContribution = 0; $intContribution < $intContributionCount; $intContribution++) { while (PackageContribution::LoadByPackageIdPersonId($objPackage->Id, $objPerson->Id)) { $objPerson = Person::Load(rand(1, $intMaxPersonId)); } $intVersionCount = rand(1, 4); $dttEndRange = QDataGen::GenerateDateTime($dttStartDate, QDateTime::Now()); $dttEndRange = QDataGen::GenerateDateTime($dttStartDate, $dttEndRange); $dttEndRange = QDataGen::GenerateDateTime($dttStartDate, $dttEndRange); $dttPostDate = QDataGen::GenerateDateTime($dttStartDate, $dttEndRange);