diff --git a/static/v2/js/forms.js b/static/v2/js/forms.js index ab2d40c..ee2b0d4 100644 --- a/static/v2/js/forms.js +++ b/static/v2/js/forms.js @@ -76,4 +76,34 @@ function addCustomDataToFormData(el, formData) { } return formData; +} + +function getCargoTypesWTypeTransport (data) { + let type_transport = data.type_transport; + let owner_type = data.owner_type; + let success_callback = data.success_callback; + let error_callback = data.error_callback; + + if (!type_transport || !owner_type) return; + + let request_data = { + type_transport: type_transport, + owner_type: owner_type, + } + let request = new api({ + url: '/routes/get_cargo_type_by_transport_type/', + data: request_data, + data_type: 'json', + success: success_callback, + error: error_callback, + }) + + request.ajaxRequest() +} + +function getFormOwnerType(el){ + let form = el.closest('form'); + let owner_type = form.dataset.owner_type; + + return owner_type; } \ No newline at end of file diff --git a/static/v2/js/forms/f_make_poster_order.js b/static/v2/js/forms/f_make_poster_order.js index af84c08..d35d476 100644 --- a/static/v2/js/forms/f_make_poster_order.js +++ b/static/v2/js/forms/f_make_poster_order.js @@ -47,4 +47,18 @@ function makePosterOrder(form) { }) request.ajaxRequest() +} + +function updateCargoTypeInForm(el, type_transport) { + if (!type_transport) return; + + getCargoTypesWTypeTransport({ + type_transport: type_transport, + owner_type: getFormOwnerType(el), + success_callback: function (res) { + + } + }) + + } \ No newline at end of file diff --git a/static/v2/js/widgets/w_radio_inputs.js b/static/v2/js/widgets/w_radio_inputs.js index 97c08cd..987801d 100644 --- a/static/v2/js/widgets/w_radio_inputs.js +++ b/static/v2/js/widgets/w_radio_inputs.js @@ -12,6 +12,6 @@ function chooseRadioInput(el, callback){ let $radio = $parent.querySelector('.radio'); $radio.classList.toggle("checked"); - let checked_state = $radio.classList.contains("checked"); - if (callback) callback(checked_state) + let el_name = $parent.dataset.name; + if (callback) callback(el, el_name) } \ No newline at end of file diff --git a/templates/v2/content_widgets/cw_w_radio_inputs_radio_input.html b/templates/v2/content_widgets/cw_w_radio_inputs_radio_input.html index 3b3062f..a952d8f 100644 --- a/templates/v2/content_widgets/cw_w_radio_inputs_radio_input.html +++ b/templates/v2/content_widgets/cw_w_radio_inputs_radio_input.html @@ -2,6 +2,6 @@ {% load i18n %}
-
-
{{ item.1 }}
+
+
{{ item.1 }}
\ No newline at end of file diff --git a/templates/v2/forms/f_make_poster_order.html b/templates/v2/forms/f_make_poster_order.html index 557f4e3..6130311 100644 --- a/templates/v2/forms/f_make_poster_order.html +++ b/templates/v2/forms/f_make_poster_order.html @@ -1,9 +1,18 @@ {% load static %} {% load i18n %} -
- {% trans "Укажите город" as placeholder_for_city %} + +
+
+ {% trans "Обязательно учитывайте Правила и особенности перевозки выбранным Вами видом транспорта" as attention_type_transport %} + + {% include 'v2/widgets/w_radio_inputs.html' with name='type_transport' callback='updateCargoTypeInForm' list=form.fields.type_transport.choices initial=form.initial.type_transport %} + {% include 'v2/widgets/w_pay_attention.html' with text=attention_type_transport %} + {% if form.errors.type_transport %}
{{ form.errors.type_transport.0 }}
{% endif %} +
+
+ {% trans "Укажите город" as placeholder_for_city %}
@@ -30,15 +39,6 @@ {% if form.errors.arrival_DT %}
{{ form.errors.arrival_DT.0 }}
{% endif %}
-
-
- {% trans "Обязательно учитывайте Правила и особенности перевозки выбранным Вами видом транспорта" as attention_type_transport %} - - {% include 'v2/widgets/w_radio_inputs.html' with name='type_transport' list=form.fields.type_transport.choices initial=form.initial.type_transport %} - {% include 'v2/widgets/w_pay_attention.html' with text=attention_type_transport %} - {% if form.errors.type_transport %}
{{ form.errors.type_transport.0 }}
{% endif %} -
-
{% trans "Если вы оставите это поле пустым - перевозчики смогут только написать вам в личные сообщения на нашем сайте TripWB.com" as attention_phone %}