Browse Source

make cached image format configuarble through main.cfg

master
Dom SP 3 years ago
parent
commit
136b65931a
1 changed files with 18 additions and 2 deletions
  1. +18
    -2
      app/modules/cachedimage.php

+ 18
- 2
app/modules/cachedimage.php View File

@@ -7,9 +7,25 @@ class CachedImage {
public $original;
public $cache_dir = "tmp/";
public $default_width = 500;
public $format;
public $quality;

function __construct($path) {
$f3 = \Base::instance();
$this->original = $path;
$this->format = $f3->get('cachedImageFormat') ? : 'jpeg';
$this->quality = $f3->get('cachedImageQuality') ? : false;
if ($this->quality === false) {
switch($this->format) {
case 'png':
$this->quality = 6;
break;
case 'jpg':
case 'jpeg':
$this->quality = 75;
break;
}
}
}
function get_src($inwidth = 500) {
@@ -20,7 +36,7 @@ class CachedImage {
$width = $inwidth ? $inwidth : $this->default_width;
$name = md5($this->original.$width);
$name = sprintf("%s_%s.jpg",$fn,$name);
$name = sprintf("%s_%s.%s",$fn,$name,$this->format);
$out = $this->cache_dir.$name;
@@ -29,7 +45,7 @@ class CachedImage {
if(!file_exists($out)) {
$img1 = new \Image($this->original);
$img1->resize($width);
$f3->write($out,$img1->dump('jpeg',75));
$f3->write($out,$img1->dump($this->format,$this->quality));
unset($img1);
}
} else {

Loading…
Cancel
Save