Для этих целей используется отдельный сниппет с выводом отличающимся от компонента менеджер ресурсов.
Возможности компонента:
<div class="as-files" data-code="productImages" data-itemid="5" data-disabledeleteconfirm="1" data-successmsg=" "></div>
Data параметры компонента:
<div class="as-files">
<script type="text/html" class="as-files-makeup hide"></script>
<script type="text/html" class="as-files-itemMakeup hide"></script>
</div>
В рамках этих элементов можно вставить дополнительные переменные.
Для makeup это:
Для itemMakeup есть следующие параметры:
Пример как работает кастом разметка для as-files - https://demo.web-automation.ru/list/watch/kastom-razmetka-v-zagruzchike-faylov-s-drag-n-drop---82
В случае использовании кастом разметки внутри формы не получится использовать script элементы (нельзя использовать теги script в кастом разметки форм).
В этом случае используем div вместо скрипт в таком виде (но помните, что желательно избежать испольования сниппетов в шаблонах (as-form, as-table и т.д.), т.к. они будут сразу рендериться при загрузке):
<div class="as-files">
<div class="as-files-makeup hide"></div>
<div class="as-files-itemMakeup hide"></div>
</div>
Для компонента as-files работает 3 коллбека JS:
as.filescallbacks["code1_getItems"] = function(data, params){}
as.filescallbacks["code1_uploadComplete"] = function(data, evt){}
as.filescallbacks["code1_delete"] = function(data, params){}
Примечание: для отображения размера файлов необходимо следующее:
1. Добавить столбец size в as_rs_resources:
IF COL_LENGTH( 'as_rs_resources' , 'size' ) IS NULL
BEGIN
ALTER TABLE as_rs_resources
ADD size int NULL
END
2. Обновить процедуру as_resources_addResource:
ALTER PROCEDURE [dbo].[as_resources_addResource]
@itemID nvarchar(128),
@typeCode nvarchar(128),
@url nvarchar(512),
@thumbUrl nvarchar(512),
@title nvarchar(128),
@size int,
@username nvarchar(128)
AS
BEGIN
insert into as_rs_resources (url, thumbUrl, itemID, title, entityCode, ord, size)
values(@url, @thumbUrl, @itemID, @title,
(select top 1 entityCode from as_rs_types where lower(code) = lower(@typeCode)),
(select max(id)+1 from as_rs_resources),
@size
)
select Scope_identity() id
END