/**
  * SourceImageFilename
  * @return string
  */
 public function getImageFileName()
 {
     $requestBuffer = explode('_', $this->filename);
     $thumbRequestModel = new ThumbRequest();
     $attributeNames = array_keys($thumbRequestModel->getAttributes());
     foreach ($requestBuffer as $paramNameIndex => $paramName) {
         $paramValueIndex = $paramNameIndex + 1;
         $paramValue = isset($requestBuffer[$paramValueIndex]) ? $requestBuffer[$paramValueIndex] : null;
         if (null === $paramValue) {
             break;
         }
         if (in_array($paramName, $attributeNames)) {
             unset($requestBuffer[$paramNameIndex], $requestBuffer[$paramValueIndex]);
         }
     }
     return implode('_', $requestBuffer);
 }
 /**
  * Preinit Params
  */
 public function init()
 {
     $this->imageDirectoryPath = Yii::getAlias($this->imageDirectoryPath);
     $this->thumbDirectoryPath = Yii::getAlias($this->thumbDirectoryPath);
     foreach ($this->rules as $i => $rule) {
         if (is_array($rule)) {
             if (false === isset($rule['t'])) {
                 $rule['t'] = array_keys(ThumbRequest::getTypeOptions());
             }
             if (null !== $this->defaultDirectoryPrefix && false === isset($rule['q'])) {
                 $rule['prefix'] = $this->defaultDirectoryPrefix;
             }
             $this->rules[$i] = Yii::createObject(array_merge($this->ruleConfig, $rule));
         }
     }
     $this->initRequestParams();
 }