/** * @action addUsers * @actionAlias user.addFromBulkUpload * Action adds users from a bulkupload CSV file * @param file $fileData * @param KalturaBulkUploadJobData $bulkUploadData * @param KalturaBulkUploadUserData $bulkUploadUserData * @return KalturaBulkUpload */ public function addUsersAction($fileData, KalturaBulkUploadJobData $bulkUploadData = null, KalturaBulkUploadUserData $bulkUploadUserData = null) { if (!$bulkUploadData) { $bulkUploadData = KalturaPluginManager::loadObject('KalturaBulkUploadJobData', null); } if (!$bulkUploadUserData) { $bulkUploadUserData = new KalturaBulkUploadUserData(); } if (!$bulkUploadData->fileName) { $bulkUploadData->fileName = $fileData["name"]; } $dbBulkUploadJobData = $bulkUploadData->toInsertableObject(); $bulkUploadCoreType = kPluginableEnumsManager::apiToCore("BulkUploadType", $bulkUploadData->type); $dbBulkUploadJobData->setBulkUploadObjectType(BulkUploadObjectType::USER); $dbBulkUploadJobData->setUserId($this->getKuser()->getPuserId()); $dbObjectData = $bulkUploadUserData->toInsertableObject(); $dbBulkUploadJobData->setObjectData($dbObjectData); $dbBulkUploadJobData->setFilePath($fileData["tmp_name"]); $dbJob = kJobsManager::addBulkUploadJob($this->getPartner(), $dbBulkUploadJobData, $bulkUploadCoreType); $dbJobLog = BatchJobLogPeer::retrieveByBatchJobId($dbJob->getId()); if (!$dbJobLog) { return null; } $bulkUpload = new KalturaBulkUpload(); $bulkUpload->fromObject($dbJobLog, $this->getResponseProfile()); return $bulkUpload; }