public function inspect(Version $fv) { $at1 = FileAttributeKey::getByHandle('duration'); $at2 = FileAttributeKey::getByHandle('width'); $at3 = FileAttributeKey::getByHandle('height'); // we killed $path here because the file might be hosted remotely. // @TODO add in support for streams through the $filesystem object. $cf = Core::make('helper/concrete/file'); $fs = $fv->getFile()->getFileStorageLocationObject()->getFileSystemObject(); $fp = $fs->readStream($cf->prefix($fv->getPrefix(), $fv->getFileName())); @fseek($fp, 27); $onMetaData = fread($fp, 10); //if ($onMetaData != 'onMetaData') exit('No meta data available in this file! Fix it using this tool: http://www.buraks.com/flvmdi/'); @fseek($fp, 16, SEEK_CUR); $duration = array_shift(unpack('d', strrev(fread($fp, 8)))); @fseek($fp, 8, SEEK_CUR); $width = array_shift(unpack('d', strrev(fread($fp, 8)))); @fseek($fp, 9, SEEK_CUR); $height = array_shift(unpack('d', strrev(fread($fp, 8)))); $fv->setAttribute($at1, $duration); $fv->setAttribute($at2, $width); $fv->setAttribute($at3, $height); }
public function getFilePath(FileVersion $fv) { $prefix = $fv->getPrefix(); $filename = $fv->getFileName(); $hi = Core::make('helper/file'); $ii = Core::make('helper/concrete/file'); $f1 = REL_DIR_FILES_THUMBNAILS . '/' . $this->getDirectoryName() . $ii->prefix($prefix, $filename); $f2 = REL_DIR_FILES_THUMBNAILS . '/' . $this->getDirectoryName() . $ii->prefix($prefix, $hi->replaceExtension($filename, 'jpg')); // 5.7.4 keeps extension; older sets it to .jpg $filesystem = $fv->getFile()->getFileStorageLocationObject()->getFileSystemObject(); if ($filesystem->has($f1)) { return $f1; } //fallback return $f2; }
/** * {@inheritDoc} */ public function getPrefix() { $this->__initializer__ && $this->__initializer__->__invoke($this, 'getPrefix', array()); return parent::getPrefix(); }
public function getFilePath(FileVersion $fv) { $prefix = $fv->getPrefix(); $filename = $fv->getFileName(); $hi = Core::make('helper/file'); $ii = Core::make('helper/concrete/file'); $filename = $hi->replaceExtension($filename, 'jpg'); return REL_DIR_FILES_THUMBNAILS . '/' . $this->getDirectoryName() . $ii->prefix($prefix, $filename); }
/** * Get the main image path ignoring the thumbnail requirements * * @param \Concrete\Core\File\Version $file_version * @param \Concrete\Core\File\Image\Thumbnail\Type\Version $thumbnail * @return string */ protected function getDefaultPath(Version $file_version, ThumbnailVersion $thumbnail, StorageLocation $storage, ConfigurationInterface $configuration) { $cf = $this->app->make('helper/concrete/file'); if ($configuration->hasPublicURL()) { $file = $cf->prefix($file_version->getPrefix(), $file_version->getFileName()); if ($configuration instanceof DeferredConfigurationInterface) { return $file; } return $configuration->getPublicURLToFile($file); } }
public function getPrefix() { return parent::getPrefix(); }