Uploadcare handles uploading, storing and processing files for you. All components of Uploadcare, from widget to CDN, work seamlessly together, require almost no configuration and allow maximum flexibility exactly when you need it.
Api is a yii2 component, which is a facade to \Uploadcare\Api.
Example config:
'components' => [
'uploadcare' => [
'class' => 'uploadcare\yii2\Api',
'publicKey' => 'your_public_key',
'secretKey' => 'your_secret_key',
'globalWidgetOptions' => [
'UPLOADCARE_LOCALE' => 'ru',
]
]
]
globalWidgetOptions - allow you set global options for all call of widget. supported options
Show file(s) input widget
Example call:
use uploadcare\yii2\UploadCare;
echo $form->field($model, 'logo')->widget(
UploadCare::className(),
[
'options' => [
'data' => [
'multiple' => true
]
],
'validators' => [
new \yii\web\JsExpression('function (fileInfo) {
console.log("test1");
}'),
new \yii\web\JsExpression('function (fileInfo) {
console.log("test2");
}')
]
]
);
Local widget settings you can set using html5 data attributes. supported options
Validators allow restricting user choice to certain kind of files.
Example config:
public function behaviors()
{
return [
'logo' => [
'class' => FilesBehavior::class,
'groupUUID' => false,
'attributes' => ['logo']
]
];
}
File(s)Behavior call api method for save file(s) permanently.
FilesBehavior - set UIID to model attribute
FilesBehavior - group UIID or files UIID array (depending on the groupUUID attribute) to model attribute.
Image helper generates an image tag by UUID
Example:
echo Image::img($uuid, $options); //draw img tag
echo Image::img($image, ['width' => '100'])->resize(200)->crop(100,100); //resize and crop image, then render img tag