Skip to content

Latest commit

 

History

History
81 lines (63 loc) · 2.29 KB

README.md

File metadata and controls

81 lines (63 loc) · 2.29 KB

cropped image upload extension for Yii2

Latest Stable Version Total Downloads Latest Unstable Version License

This extension automatically uploads image and make crop.

Installation

The preferred way to install this extension is through composer.

Either run

php composer.phar require specialist/yii2-crop-image-upload "@dev"

or add

"specialist/yii2-crop-image-upload": "@dev"

to the require section of your composer.json file.

Usage

Upload image and create crop

Attach the behavior in your model:

use specialist\icrop\CropImageUploadBehavior;

class Document extends ActiveRecord
{
    /**
     * @inheritdoc
     */
    public function rules()
    {
        return [
            ['photo', 'file', 'extensions' => 'jpeg, gif, png', 'on' => ['insert', 'update']],
        ];
    }

    /**
     * @inheritdoc
     */
    function behaviors()
    {
        return [
            [
                'class' => CropImageUploadBehavior::className(),
                'attribute' => 'photo',
                'scenarios' => ['insert', 'update'],
                'path' => '@webroot/upload/docs',
                'url' => '@web/upload/docs',
				'ratio' => 1,
				'crop_field' => 'photo_crop',
				'cropped_field' => 'photo_cropped',
            ],
        ];
    }
}

Example view file:

<?php use specialist\icrop\CropImageUpload; ?>

<?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]); ?>
    <?= $form->field($model, 'photo')->widget(CropImageUpload::className()) ?>
    <div class="form-group">
        <?= Html::submitButton('Submit', ['class' => 'btn btn-primary']) ?>
    </div>
<?php ActiveForm::end(); ?>