i-avatar777/yii2-asset-jquery-upload1

Ресурс для Yii2 который позволяет создать загрузчик файла

Installs: 201

Dependents: 2

Suggesters: 0

Security: 0

Stars: 0

Watchers: 2

Forks: 0

Open Issues: 1

Language:JavaScript

Type:project

0.0.11 2021-12-08 17:33 UTC

This package is auto-updated.

Last update: 2024-11-08 23:46:13 UTC


README

Ресурс и контроллер для Yii2 который позволяет создать загрузчик файла на сервер

Содержит контроллер и действие для обработки прогресса загрузки и сохранения файла в файловой системе.

https://www.draw.io/#G1VN37M-uP9PQ34gl28gsd-di1D7nK2Tlf

Инсталяция

Для инсталяции библиотеки используйте composer:

{
    "require": {
        "i-avatar777/yii2-asset-jquery-upload1": "*"
    }
}

Или через команду

composer require i-avatar777/yii2-asset-jquery-upload1

Настройка

Файл config.php

return [
    // ...
    'controllerMap' => [
        // ...
        'upload2' => '\iAvatar777\assets\JqueryUpload1\Upload2Controller',
    ],
];

Файл params.php

return [ 
    // ...
    'widgetFileUpload7' => [
        'uploadDirectory'               => '@webroot/upload',   
        'inputName'                     => 'uploadfile',
        'Origin'                        => '*',
        'Access-Control-Allow-Origin'   => '*',
    ],
];

Если загружается картинка (jpg, jpeg, png) то она обрезается под формат update

Структура параметра update

$update = [
    [
        'function' => 'crop',
        'index'    => 'crop',
        'options'  => [
            'width'  => '300',
            'height' => '300',
            'mode'   => 'MODE_THUMBNAIL_CUT',
        ],
    ],
];

Cтандартный контроллер

\iAvatar777\assets\JqueryUpload1\Upload2Controller

Содержит действия для обработки загруженного изображения actionFileUpload7 и actionFileUpload8, действие actionSessionProgress для обработки индикатора загрузки файла которое указывается в параметре sessionProgressUrl.

Пример использования

\iAvatar777\assets\JqueryUpload1\JqueryUpload::register($this);
var uploader = new ss.SimpleUpload({
      button: 'upload-btn', // HTML element used as upload button
      url: '/upload2/file-upload7', // URL of server-side upload handler
      name: 'uploadfile', // Parameter name of the uploaded file
      sessionProgressUrl: '/upload2/session-progress'
});

Будущие разработки

Планируется сделать чтобы в контроллере была возможность еще сразу подрезать картинку под размер или наложить маску.