Example #1
0
 /**
  * Create file from path
  *
  * @param string $path Path in filesystem or URL
  * @param int $ownerId
  * @param int $ownerType
  * @param bool $saveAfterUpload Save the file immediately after upload
  * @param bool $protected File is protected?
  * @return \rkit\filemanager\models\File|bool
  */
 public function createFromPath($path, $ownerId = -1, $ownerType = -1, $saveAfterUpload = false, $protected = false)
 {
     $tempfile = tempnam(sys_get_temp_dir(), 'FMR');
     if ($filecontent = @file_get_contents($path)) {
         file_put_contents($tempfile, $filecontent);
         $pathInfo = pathinfo($path);
         $file = new File(['tmp' => true, 'owner_id' => $ownerId, 'owner_type' => $ownerType, 'size' => filesize($tempfile), 'mime' => FileHelper::getMimeType($tempfile), 'title' => $pathInfo['filename'], 'name' => File::generateName($pathInfo['extension']), 'protected' => $protected]);
         return $file->saveToTmp($tempfile, $saveAfterUpload, false);
     } else {
         throw new InvalidValueException('Unable to create from `' . $path . '`');
     }
 }