This commit is contained in:
Ludovic CANDELLIER
2021-03-27 01:16:37 +01:00
parent 22fa3d3246
commit 4855254a7f
21 changed files with 219 additions and 137 deletions

View File

@@ -8,8 +8,8 @@
<script>
$(function () {
handle_delete_price();
init_attribute_values();
handle_change_attribute();
init_unities();
handle_change_package();
handle_prices();
handle_prices_taxed();
});

View File

@@ -12,8 +12,8 @@
function append_price() {
// handle_append_attribute();
$('.select2').select2();
handle_change_attribute();
load_attribute_values($('.unities'), $('.price-family').val());
handle_change_package();
load_unities($('.unities'), $('.package').val());
}
$("#append_price").appender({
@@ -29,35 +29,36 @@
hideSection: true
});
function handle_change_attribute() {
$('.price-family').change( function() {
var family_id = $(this).val();
var $family = $(this);
var $parent = $family.parent().parent();
function handle_change_package() {
$('.package').change( function() {
var package_id = $(this).val();
var $package = $(this);
var $parent = $package.parent().parent();
var $selector = $parent.find('.unities');
load_attribute_values($selector, family_id);
load_unities($selector, package_id);
});
}
function init_attribute_values() {
$('.price-family').each( function() {
var family_id = $(this).val();
var $family = $(this);
var $parent = $family.parent().parent();
function init_unities() {
$('.package').each( function() {
var package_id = $(this).val();
var $package = $(this);
var $parent = $package.parent().parent();
var $selector = $parent.find('.unities');
load_attribute_values($selector, family_id);
load_unities($selector, package_id);
value_id = $selector.data('id');
$selector.val(value_id).trigger('change');
});
}
function load_attribute_values($selector, family_id) {
function load_unities($selector, package_id) {
$.ajax({
url : "{{ route('Shop.Admin.Unities.getOptionsByFamily') }}",
url : "{{ route('Shop.Admin.Unities.getOptionsByPackage') }}",
method : 'POST',
data: { family_id: family_id },
data: { package_id: package_id },
success : function(data) {
$selector.empty().select2({data: data});
setOptions($selector, data);
// $selector.empty().select2({data: data});
}
});
}