/**
  * @param \Carrooi\ImagesManager\Image\Image $image
  * @param int|null $width
  * @param int|null $height
  * @param int|null $resizeFlag
  * @return string
  */
 public function getImageUrl(Image $image, $width = null, $height = null, $resizeFlag = null)
 {
     $name = pathinfo($image->getName(), PATHINFO_FILENAME);
     $ext = pathinfo($image->getName(), PATHINFO_EXTENSION);
     return 'http://localhost/' . $image->getNamespace() . '/' . $name . ($width ? '_w' . $width : '') . ($height ? '_h' . $height : '') . (($width || $height) && $resizeFlag !== null ? '_f' . $resizeFlag : '') . '.' . $ext;
 }
 /**
  * @param \Carrooi\ImagesManager\Image\Image $image
  * @param int|null $width
  * @param int|null $height
  * @param int|null $resizeFlag
  * @return string
  */
 public function getUrl(Image $image, $width = null, $height = null, $resizeFlag = null)
 {
     $resizeFlag = $resizeFlag === null ? $this->config->getResizeFlag($image->getNamespace()) : $resizeFlag;
     $version = $this->cacheStorage->getImageVersion($image->getNamespace(), $image->getName());
     return $this->storage->getImageUrl($image, $width, $height, $resizeFlag) . '?v=' . $version;
 }
 /**
  * @param \Carrooi\ImagesManager\Image\Image $image
  * @param string $separator
  * @param int|null $width
  * @param int|null $height
  * @param int|null $resizeFlag
  * @return string
  */
 private function createBaseImagePath(Image $image, $separator, $width = null, $height = null, $resizeFlag = null)
 {
     $name = pathinfo($image->getName(), PATHINFO_FILENAME);
     $ext = pathinfo($image->getName(), PATHINFO_EXTENSION);
     return $image->getNamespace() . $separator . $name . ($width ? '_w' . $width : '') . ($height ? '_h' . $height : '') . (($width || $height) && $resizeFlag !== null ? '_f' . $resizeFlag : '') . '.' . $ext;
 }