0.0.20 form mover

This commit is contained in:
SBD
2025-01-14 16:52:29 +03:00
parent 9280025f1c
commit 1db2b0edb9
2 changed files with 45 additions and 3 deletions

View File

@@ -56,10 +56,28 @@ function updateCargoTypeInForm(el, type_transport) {
getCargoTypesWTypeTransport({
type_transport: type_transport,
owner_type: getFormOwnerType(el),
success_callback: function (res) {
}
success_callback: success_callback_func,
})
function success_callback_func(res) {
let cargo_types = res.cargo_types
if (!cargo_types) return;
resetWRadioInputs('cargo_type');
let $widget = getWRadioInputsWidget('cargo_type');
for (let cargo_type of cargo_types) {
let obj = {
name: cargo_type[0],
title: cargo_type[1],
}
let html = generateRadioInput(obj)
if ($widget.firstElementChild){
$(html).insertAfter($($widget.firstElementChild))
} else {
$widget.innerHTML = html
}
}
}
}

View File

@@ -14,4 +14,28 @@ function chooseRadioInput(el, callback){
let el_name = $parent.dataset.name;
if (callback) callback(el, el_name)
}
function generateRadioInput(data){
let html = `
<div class="cw_w_radio_inputs_radio_input" data-name="${data.name}">
<div class="radio" onclick="chooseRadioInput(this, ${data.callback})"></div>
<div class="radio_label" onclick="chooseRadioInput(this, ${data.callback})">${data.title}</div>
</div>
`
return html;
}
function resetWRadioInputs(widget_name){
let $widget = getWRadioInputsWidget(widget_name);
if (!$widget) return;
$widget.innerHTML = '';
}
function getWRadioInputsWidget(widget_name){
if (!widget_name) return;
let $widget = $(`.field_container[data-type="radio"][data-name="${widget_name}"] .w_radio_inputs`)[0];
return $widget;
}