Пример #1
0
 /**
  * Returns true if the specific component contains a matching partial.
  * @param \Cms\Classes\ComponentBase $component Specifies a component the file belongs to.
  * @param string $fileName Specifies the file name to check.
  * @return bool
  */
 public static function check(ComponentBase $component, $fileName)
 {
     $partial = new static($component);
     $filePath = $partial->getFilePath($fileName);
     if (!strlen(File::extension($filePath))) {
         $filePath .= '.' . $partial->getDefaultExtension();
     }
     return File::isFile($filePath);
 }
Пример #2
0
 /**
  * Creates a [[\app\models\File]] based on the [[yii\web\UploadedFile]]
  * @param UploadedFile $uploadedFile
  * @param $relatedModel
  * @param $relatedAttribute
  * @return bool
  */
 public static function makeByUploadedFile(UploadedFile $uploadedFile, $relatedModel, $relatedAttribute)
 {
     $file = new static();
     $file->name = $uploadedFile->name;
     $file->size = $uploadedFile->size;
     $file->type = $uploadedFile->type;
     $file->related_id = $relatedModel->id;
     $file->related_class = get_class($relatedModel);
     $file->related_attribute = $relatedAttribute;
     $saved = $file->save();
     if ($ret = $saved && $uploadedFile->saveAs($file->getFilePath()) && in_array($file->type, ['image/jpeg', 'image/png'])) {
         $file->generateThumbnail();
     }
     return $ret;
 }