public function saveAdminUser($FormPostValues)
{
$UserID = 0;
// Add & apply any extra validation rules:
$Name = val('Name', $FormPostValues, '');
$FormPostValues['Email'] = val('Email', $FormPostValues, strtolower($Name . '@' . Gdn_Url::host()));
$FormPostValues['ShowEmail'] = '0';
$FormPostValues['TermsOfService'] = '1';
$FormPostValues['DateOfBirth'] = '1975-09-16';
$FormPostValues['DateLastActive'] = Gdn_Format::toDateTime();
$FormPostValues['DateUpdated'] = Gdn_Format::toDateTime();
$FormPostValues['Gender'] = 'u';
$FormPostValues['Admin'] = '1';
$this->addInsertFields($FormPostValues);
if ($this->validate($FormPostValues, true) === true) {
$Fields = $this->Validation->schemaValidationFields();
// Only fields that are present in the schema
// Insert the new user
$UserID = $this->insertInternal($Fields, ['NoConfirmEmail' => true, 'Setup' => true]);
if ($UserID > 0) {
$ActivityModel = new ActivityModel();
$ActivityModel->save(['ActivityUserID' => $UserID, 'ActivityType' => 'Registration', 'HeadlineFormat' => t('HeadlineFormat.Registration', '{ActivityUserID,You} joined.'), 'Story' => t('Welcome Aboard!')], false, ['GroupBy' => 'ActivityTypeID']);
}
$this->saveRoles($UserID, [16], false);
}
return $UserID;
}