Beispiel #1
0
 private function _handleImportWorker($xml)
 {
     $settings = CerberusSettings::getInstance();
     $logger = DevblocksPlatform::getConsoleLog();
     $sFirstName = (string) $xml->first_name;
     $sLastName = (string) $xml->last_name;
     $sEmail = (string) $xml->email;
     $sPassword = (string) $xml->password;
     $isSuperuser = (int) $xml->is_superuser;
     // Dupe check worker email
     if (null != ($worker_id = DAO_Worker::lookupAgentEmail($sEmail))) {
         $logger->info('[Importer] Avoiding creating duplicate worker #' . $worker_id . ' (' . $sEmail . ')');
         return true;
     }
     $worker_id = DAO_Worker::create($sEmail, CerberusApplication::generatePassword(8), $sFirstName, $sLastName, '');
     DAO_Worker::updateAgent($worker_id, array(DAO_Worker::PASSWORD => $sPassword, DAO_Worker::IS_SUPERUSER => intval($isSuperuser)));
     // Address to Worker
     DAO_AddressToWorker::assign($sEmail, $worker_id);
     DAO_AddressToWorker::update($sEmail, array(DAO_AddressToWorker::IS_CONFIRMED => 1));
     $logger->info('[Importer] Imported worker #' . $worker_id . ' (' . $sEmail . ')');
     DAO_Worker::clearCache();
     return true;
 }