From f76faedcc85d9c43c4c193b6f597db5bb58f57e5 Mon Sep 17 00:00:00 2001 From: marina Date: Tue, 27 May 2025 09:40:15 +0300 Subject: [PATCH] ERP-417 --- erp24/views/write_offs_erp/_form.php | 81 ++++++++++++++-------------- 1 file changed, 41 insertions(+), 40 deletions(-) diff --git a/erp24/views/write_offs_erp/_form.php b/erp24/views/write_offs_erp/_form.php index 451cb1ee..66825fe5 100644 --- a/erp24/views/write_offs_erp/_form.php +++ b/erp24/views/write_offs_erp/_form.php @@ -175,71 +175,72 @@ JS // 'items' => [0,1], ], [ - 'name' => 'images_row', + 'name' => 'video_row', 'type' => BaseColumn::TYPE_STATIC, 'value' => function ($data) { -// $images = WriteOffsErp::getImagesList($product->imagesWriteOffsErp); if (!empty($data['id'])) { $query = WriteOffsProductsErp::find() ->andWhere([ 'write_offs_products_erp.id' => $data['id'], 'write_offs_products_erp.active_product' => 1, ]); + $query->joinWith(['videosWriteOffsErp']); // связанная связь для видео - - $query->joinWith(['imagesWriteOffsErp']); - - $action = $query->createCommand()->getRawSql(); - - $modelWriteOffsProductsErp = $query->All(); - $productImagesList = []; - $forWidget = false; - foreach ($modelWriteOffsProductsErp as $item) { - $productImagesList = WriteOffsErp::getImagesList($item->imagesWriteOffsErp, $forWidget); + $models = $query->all(); + $videoList = []; + foreach ($models as $item) { + // Предположим, getVideosList возвращает массив html тегов видео или ссылок + $videoList = WriteOffsErp::getVideosList($item->videosWriteOffsErp, false); } - if (!empty($productImagesList)) { -// $dataTable = dosamigos\gallery\Gallery::widget(['items' => $productImagesList]); - if ($forWidget) { - $dataTable = dosamigos\gallery\Gallery::widget(['items' => $productImagesList]); - } else { - $dataTable = implode('', $productImagesList); - } + if (!empty($videoList)) { + return implode('', $videoList); } } - $test = 33; - return $dataTable ?? ''; + return ''; }, 'headerOptions' => [ -// 'style' => 'width: 70px;', - ] + //'style' => 'width: 150px;', // при необходимости задайте ширину + ], ], [ - 'name' => 'imageFiles', - 'title' => 'Фотографии: jpg и png', + 'name' => 'videoFiles', + 'title' => 'Видео: mp4, mov, avi', 'type' => FileInput::className(), 'options' => [ 'options' => [ - 'multiple' => true, - 'accept' => 'image/*', - 'name' => 'image_name', - 'capture' => '', - 'class' => 'file' + 'multiple' => false, + 'accept' => 'video/*', + 'name' => 'video_name', + 'class' => 'file', ], 'pluginOptions' => [ - 'showPreview' => false, + 'showPreview' => true, 'showCaption' => true, 'showRemove' => true, 'showUpload' => false, - 'overwriteInitial' => true, - 'browseIcon' => '+', - 'cancelIcon' => 'x', - 'removeIcon' => '-', - 'buttonLabelClass' => 'hidden', - 'fileActionSettings' => ['showUpload' => false], - 'maxFileCount' => 10, - 'multiple' => true + 'previewFileType' => 'video', + 'allowedFileExtensions' => ['mp4', 'mov', 'avi'], + 'maxFileSize' => 10240, + 'previewSettings' => [ + 'video' => ['width' => '120px', 'height' => 'auto'], + ], + 'browseLabel' => '+', + 'removeLabel' => '-', + 'cancelLabel' => 'x', + 'layoutTemplates' => [ + 'actions' => '
{remove} {upload} {cancel}
', + 'actionUpload' => '', + 'actionRemove' => '', + 'actionCancel' => '', + ], + 'fileActionSettings' => [ + 'showUpload' => false, + 'showRemove' => true, + 'showZoom' => false, + 'showDrag' => false, + ], ], - 'model' => $multipleUploadForm, + 'model' => $multipleUploadForm, // модель загрузки ], ], [ -- 2.39.5