Beispiel #1
0
 /**
  * Apply the filter.
  *
  * @param string $aliasName
  */
 public function apply($aliasName = null)
 {
     $reset = false;
     if ($aliasName === null) {
         $aliasName = $this->mediaManager->getOriginalDir();
         $reset = true;
     }
     $this->updateFile($this->image);
     $this->updateFocus($this->media);
     $fs = $this->mediaManager->getFilesystemManipulator();
     $fs->saveContent($aliasName . '/' . $this->media->getReference(), $this->image->get($this->media->getExtension()));
     $this->mediaManager->setSizeWidthAndHeight($this->media)->save($this->media);
     if ($reset === true) {
         $this->mediaManager->reset($this->media);
     }
 }
Beispiel #2
0
 /**
  * Create reference for media.
  *
  * @param MediaInterface $media
  *
  * @return bool
  */
 public function createReference(MediaInterface $media)
 {
     $allowed = false;
     foreach ($this->contexts as $context) {
         if (in_array($media->getExtension(), $context)) {
             $allowed = true;
             break;
         }
     }
     if ($allowed === false) {
         $this->error = array('error.extensionNotAllowed', array('%extension%' => $media->getExtension()));
         return false;
     }
     // secure extension for reference
     if (!in_array($media->getExtension(), $this->trustedExtensions)) {
         $media->setExtension($media->getExtension() . '.txt');
         $media->setType($media::OTHER);
     }
     do {
         $media->setReference(sha1(microtime(true) . mt_rand()) . '.' . $media->getExtension());
     } while ($this->filesystemManipulator->has($this->originalDir . '/' . $media->getReference()));
     return true;
 }