happyproff/yii-easyimages

Manage your images in AR is easy.

0.0.7 2015-02-10 20:02 UTC

This package is not auto-updated.

Last update: 2024-04-09 00:00:43 UTC


README

License

Простая работа с изображениями для моделей. Автоматическая загрузка, генерация нужных размеров, удаление.

Использование

Добавить в composer.json зависимость:

"happyproff/yii-easyimages": "*@dev"

Зарегистрировать компонент приложения:

'components' => [
    ...,
    'easyImages' => [
        'class' => 'happyproff\YiiEasyImages\EasyImages',
    ],
    ...
]

В базовом AR классе или в конкретной модели использовать трейт и вызвать его метод в beforeSave():

class MCategory extends ActiveRecord {
    use happyproff\YiiEasyImages\TEasyImage;
    ...
public function beforeSave () {
    if (!parent::beforeSave()) return false;

    if (method_exists($this, 'handleImages')) {
        $this->handleImages();
    }

    return true;
}

Определить атрибуты, которые будут использоваться для работы с изображениями и их пресеты:

public function images () {
    return [
        'image' => [
            self::IMAGE_ORIGINAL => ['width' => 1920, 'height' => 1080, 'enabled' => false],
            self::IMAGE_FULL => ['width' => 960, 'height' => 720, 'quality' => 100],
            self::IMAGE_LIST => ['width' => 146, 'height' => 160, 'inset' => false,],
            self::IMAGE_ITEM => ['width' => 300, 'height' => 999],
        ],
    ];
}