Skip to content

xtracode/yii2-image

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Image Module for Yii2

License Latest Stable Version Latest Unstable Version Total Downloads

Yii2 module for image manipulating.

Documentation is at docs/guide/README.md.

Features

  • image upload
  • display image widget
  • watermark (text and image)
  • image resize on demand

Installation

The preferred way to install this extension is through composer.

Either run

php composer.phar require "xtracode/yii2-image" "dev-master"

or add

"xtracode/yii2-image" : "dev-master"

to the require section of your application's composer.json file.

Configuration

  • Add module to config section:
'modules' => [
    'image' => [
        'class' => 'xtracode\yii2-image\ImageModule'
    ]
]
  • Run migrations:
php yii migrate --migrationPath=@xtracode/yii2-image/migrations

Usage

  • Add actions to your controller:
public function actions()
{
    return [
        'delete-image' => [
            'class' => '\xtracode\image\actions\DeleteImageAction',
        ],
        'main-image' => [
            'class' => '\xtracode\image\actions\MainImageAction',
        ],
    ];
}

Upload multiple image

Use method $model->uploadSingleImage() in controller:

public function actionCreate()
{
    $model = new Article;

    if ($model->load($_POST) && $model->save()) {
        $model->uploadImage();

        \Yii::$app->session->setFlash('success', \Yii::t('article', 'Article successfully saved'));
        return $this->redirect(['view', 'id' => $model->id]);
    } else {
        return $this->render('create', [
            'model' => $model,
        ]);
    }
}

In view:

<div class="col-sm-offset-1">
    <?= \xtracode\image\widgets\ImageList::widget([
        'model' => $model,
        'model_id' => $model->id,
    ]) ?>
</div>

Upload single image

use method $model->uploadSingleImage() in controller:

public function actionCreate()
{
    $model = new Article;

    if ($model->load($_POST) && $model->save()) {
        $model->uploadSingleImage();

        \Yii::$app->session->setFlash('success', \Yii::t('article', 'Article successfully saved'));
        return $this->redirect(['view', 'id' => $model->id]);
    } else {
        return $this->render('create', [
            'model' => $model,
        ]);
    }
}

In view:

<div class="col-sm-offset-1">
    <?= \xtracode\image\widgets\ImageList::widget([
        'model' => $model,
        'model_id' => $model->id,
    ]) ?>
</div>

For more details see the guide.

About

Yii2 image manipulation (Unstable version)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages