public function Content::downloadFiles in GatherContent 7.3
Downloads all files asynchronously.
Parameters
array $files: Files object array.
array $fieldInfo: Field info.
Return value
array Imported files array.
File
- includes/
Content.inc, line 240 - Contains GatherContent\Accont class.
Class
- Content
- Class Account.
Namespace
GatherContentCode
public function downloadFiles(array $files, $fieldInfo) {
$files = array_values($files);
$importedFiles = [];
foreach ($files as $file) {
$url = "files/{$file->id}/download";
$response = $this->client
->get($url);
if ($response
->getStatusCode() === 200) {
$importedFile = file_save_data($response
->getBody(), 'public://' . $file->fileName);
if ($importedFile) {
$importedFile->gathercontent_id = $file->id;
file_save($importedFile);
if ($fieldInfo['type'] === 'file') {
$fileData = array(
'fid' => $importedFile->fid,
'display' => TRUE,
);
}
else {
$fileData = array(
'fid' => $importedFile->fid,
);
}
$importedFiles[] = $fileData;
}
}
}
ksort($importedFiles);
return $importedFiles;
}