1
0
mirror of https://github.com/processwire/processwire.git synced 2025-08-17 20:11:46 +02:00

make more robust filename creation

and remove debug code
This commit is contained in:
horst-n
2019-04-25 00:41:14 +02:00
parent f3f4e427b0
commit b531275a6e

View File

@@ -772,17 +772,11 @@ class Pageimage extends Pagefile {
// i.e. myfile.100x100.jpg or myfile.100x100nw-suffix1-suffix2.jpg
$basename .= '.' . $nameWidth . 'x' . $nameHeight . $crop . $suffixStr . "." . $this->ext();
$filenameFinal = $this->pagefiles->path() . $basename;
$filenameFinalWebp = $this->pagefiles->path() . str_replace(array('.jpg', '.jpeg', '.png', '.gif'), '.webp', $basename);
$path_parts = pathinfo($filenameFinal);
$filenameFinalWebp = $this->pagefiles->path() . $path_parts['filename'] . '.webp';
$filenameUnvalidated = '';
$exists = file_exists($filenameFinal);
//my_var_dump([
// $defaultOptions,
// $requestOptions,
// $options,
//]);
// create a new resize if it doesn't already exist or forceNew option is set
if(!$exists && !file_exists($this->filename())) {
@@ -793,22 +787,14 @@ class Pageimage extends Pagefile {
// filenameUnvalidated is temporary filename used for resize
$tempDir = $this->pagefiles->page->filesManager()->getTempPath();
$filenameUnvalidated = $tempDir . $basename;
$filenameUnvalidatedWebp = $tempDir . str_replace(array('.jpg', '.jpeg', '.png', '.gif'), '.webp', $basename);
$path_parts = pathinfo($filenameUnvalidated);
$filenameUnvalidatedWebp = $tempDir . $path_parts['filename'] . '.webp';
if($exists && $options['forceNew']) $this->wire('files')->unlink($filenameFinal, true);
if(file_exists($filenameFinalWebp) && $options['forceNew']) $this->wire('files')->unlink($filenameFinalWebp, true);
if(file_exists($filenameUnvalidated)) $this->wire('files')->unlink($filenameUnvalidated, true);
if(file_exists($filenameUnvalidatedWebp)) $this->wire('files')->unlink($filenameUnvalidatedWebp, true);
//my_var_dump([
// $options['webpAdd'],
// $basename,
// $filenameFinal,
// $filenameUnvalidated,
// $filenameFinalWebp,
// $filenameUnvalidatedWebp
//]);
if(@copy($this->filename(), $filenameUnvalidated)) {
try {