]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
ERP-417
authormarina <m.zozirova@gmail.com>
Tue, 27 May 2025 06:28:19 +0000 (09:28 +0300)
committermarina <m.zozirova@gmail.com>
Tue, 27 May 2025 06:28:19 +0000 (09:28 +0300)
erp24/views/write_offs_erp/_form.php

index 2593b3b237670238f9506ecb14509bf2011af94f..b6e4f8a4ee4d8ffcc05bf81bf0f489f6793a41ae 100644 (file)
@@ -253,55 +253,62 @@ JS
                     ]
                 ],
                 [
-    'name' => 'videoFiles',
-    'title' => 'Видео: mp4, mov, avi',
-    'type' => FileInput::class,
-    'options' => [
-        'options' => [
-            'multiple' => false,
-            'accept' => 'video/*',
-            'name' => 'video_name',
-        ],
-        'pluginOptions' => [
-            'showPreview' => true,
-            'showCaption' => false,
-            'showRemove' => true,
-            'showUpload' => false,
-            'browseIcon' => '+',
-            'cancelIcon' => 'x',
-            'removeIcon' => '-',
-            'buttonLabelClass' => 'hidden',
-            'fileActionSettings' => [
-                'showUpload' => false
-            ],
-            'previewFileType' => 'video',
-            'allowedFileExtensions' => ['mp4', 'mov', 'avi'],
-            'initialPreview' => isset($model->id) ? [
-                Files::find()
-                    ->select('url')
-                    ->where([
-                        'entity' => WriteOffsProductsErp::WRITE_OFFS_VIDEO,
-                        'entity_id' => $model->id
-                    ])
-                    ->scalar()
-            ] : [],
-            'initialPreviewAsData' => true,
-            'initialPreviewConfig' => isset($model->id) ? [[
-                'type' => 'video',
-                'caption' => basename(
-                    Files::find()
-                        ->select('url')
-                        ->where([
+                    'name' => 'videoFiles',
+                    'title' => 'Видео: mp4, mov, avi',
+                    'type' => FileInput::className(),
+                    'value' => function ($row) {
+                        if (!isset($row['id'])) return null;
+
+                        $file = Files::findOne([
                             'entity' => WriteOffsProductsErp::WRITE_OFFS_VIDEO,
-                            'entity_id' => $model->id
-                        ])
-                        ->scalar()
-                ),
-                'url' => Url::to(['delete-video', 'id' => $model->id]),
-            ]] : [],
-        ]
-    ]
-],
+                            'entity_id' => $row['id']
+                        ]);
+
+                        return $file ? $file->url : null;
+                    },
+                    'columnOptions' => function ($rowModel, $index, $context) {
+                        $file = null;
+                        $initialPreview = [];
+                        $initialPreviewConfig = [];
+
+                        if (isset($rowModel['id'])) {
+                            $file = Files::findOne([
+                                'entity' => WriteOffsProductsErp::WRITE_OFFS_VIDEO,
+                                'entity_id' => $rowModel['id']
+                            ]);
+
+                            if ($file) {
+                                $initialPreview = [$file->url];
+                                $initialPreviewConfig = [[
+                                    'type' => 'video',
+                                    'caption' => basename($file->url),
+                                    'url' => \yii\helpers\Url::to(['delete-video', 'id' => $rowModel['id']]),
+                                ]];
+                            }
+                        }
+
+                        return [
+                            'options' => [
+                                'multiple' => false,
+                                'accept' => 'video/*',
+                                'name' => 'video_name'
+                            ],
+                            'pluginOptions' => [
+                                'showPreview' => true,
+                                'showCaption' => true,
+                                'showRemove' => true,
+                                'showUpload' => true,
+                                'previewFileType' => 'video',
+                                'allowedFileTypes' => ['video'],
+                                'allowedFileExtensions' => ['mp4', 'mov', 'avi'],
+                                'maxFileSize' => 10240,
+                                'initialPreview' => $initialPreview,
+                                'initialPreviewAsData' => true,
+                                'initialPreviewConfig' => $initialPreviewConfig,
+                            ],
+                        ];
+                    },
+                ],
                 [
                     'name' => 'comment',
                     'type' => 'textInput',