punjabideveloper / yii2-cropper
Yii2 + Cropper integration extension
Installs: 5
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Type:yii2-extension
Requires
- php: >=5.6.0
- bower-asset/cropperjs: *
README
This extension integrates Cropper with Yii2 apps. It provides assets and a widget to facilitate uploads of cropped images.
Usage
Yii2-Cropper provides an widget plus an upload file class that inherits from yii\web\UploadedFile. That allows you to use native semantics for uploading files with this extension.
On your model
class Form extends \yii\base\Model { public $image; public function rules() { return [ ['image', 'image', 'enableClientValidation' => FALSE], ]; } }
IMPORTANT: If you use image
validation in your model
(recommended), you must disable client validation, as shown above.
In your view
$form->field($model, 'image') ->widget(\fv\yii\Cropper\Widget::class)
In your controller
if ($app->request->isPost) { $form->image = \fv\yii\Cropper\UploadedFile::getInstance($form, 'image'); if ($form->validate()) { $name = '/tmp/' . $form->image->baseName . '.' . $form->image->extension; $form->image->saveAs($name); $app->session->setFlash('success', 'Saved to ' . Html::encode($name)); return $this->refresh(); } }
Notes
No actual file upload by the browser happens. Consequently, the
extension never gets to know the name of the file that got sent for
cropping, and for compatibility with yii\web\UploadedFile
, a random
name is generated.