From 12e082a0adaa9819d3efb3d5326916fa43101b6d Mon Sep 17 00:00:00 2001 From: Costa Date: Sat, 9 Aug 2014 21:22:20 +0400 Subject: [PATCH] PlaceHolder added --- Module.php | 11 ++++++++++- behaviors/ImageBehave.php | 6 ++++-- models/Image.php | 4 ++-- models/PlaceHolder.php | 6 ++++++ 4 files changed, 22 insertions(+), 5 deletions(-) diff --git a/Module.php b/Module.php index d483328..f9bb0cc 100755 --- a/Module.php +++ b/Module.php @@ -49,7 +49,7 @@ public function getImage($item, $dirtyAlias) ])*/ ->one(); if(!$image){ - $image = new PlaceHolder(); + return $this->getPlaceHolder(); } return $image; @@ -168,4 +168,13 @@ public function init() throw new \Exception('Setup imagesStorePath and imagesCachePath images module properties!!!'); // custom initialization code goes here } + + public function getPlaceHolder(){ + + if($this->placeHolderPath){ + return new PlaceHolder(); + }else{ + return null; + } + } } diff --git a/behaviors/ImageBehave.php b/behaviors/ImageBehave.php index c353ee8..d6a15ce 100755 --- a/behaviors/ImageBehave.php +++ b/behaviors/ImageBehave.php @@ -172,7 +172,7 @@ public function getImages() $imageRecords = $imageQuery->all(); if(!$imageRecords){ - return [new models\PlaceHolder()]; + return $this->getModule()->getPlaceHolder(); } return $imageRecords; } @@ -191,7 +191,7 @@ public function getImage() $img = $imageQuery->one(); if(!$img){ - return new models\PlaceHolder(); + return $this->getModule()->getPlaceHolder(); } return $img; @@ -282,6 +282,8 @@ private function getAlias() } + + } diff --git a/models/Image.php b/models/Image.php index a0d3456..d0683c3 100755 --- a/models/Image.php +++ b/models/Image.php @@ -132,8 +132,8 @@ public function createVersion($imagePath, $sizeString = false) }else{ $sizePart = ''; } - $pathToSave = $cachePath.'/'.$subDirPath.'/'.$this->urlAlias.$sizePart.'.'.$fileExtension; + $pathToSave = $cachePath.'/'.$subDirPath.'/'.$this->urlAlias.$sizePart.'.'.$fileExtension; BaseFileHelper::createDirectory(dirname($pathToSave), 0777, true); @@ -196,7 +196,7 @@ public function setMain($isMain = true){ } - private function getSubDur(){ + protected function getSubDur(){ return $this->modelName. 's/' . $this->modelName.$this->itemId; } diff --git a/models/PlaceHolder.php b/models/PlaceHolder.php index 60cacb7..37fc366 100644 --- a/models/PlaceHolder.php +++ b/models/PlaceHolder.php @@ -44,6 +44,12 @@ public function getPathToOrigin() return $url; } + protected function getSubDur(){ + return 'placeHolder'; + } + public function setMain($isMain = true){ + throw new yii\base\Exception('You must not set placeHolder as main image!!!'); + } }