new Promise(function (resolve, reject) {
if (parseInt(default_country)) {
getCities(parseInt(default_country));
$('select[name="country"]').val(default_country);
resolve(true);
}
}).then(function (resolve) {
if (resolve) {
if (parseInt(default_city)) {
getDistricts(parseInt(default_city));
$('select[name="city"]').val(default_city);
return true;
}
}
}).then(function (resolve) {
if (resolve) {
if (parseInt(default_district)) {
getNeighborhoods(parseInt(default_district));
$('select[name="district"]').val(default_district);
return true;
}
}
});
function getCities(country) {
crud('id=' + country, '/ajax/getCities', 'POST', function (callback) {
cities = callback;
$('select[name="city"]').html("");
$.each(cities, function (index, value) {
$('select[name="city"]').append("");
});
})
}
function getDistricts(city) {
crud('id=' + city, '/ajax/getDistricts', 'POST', function (callback) {
cities = callback;
$('select[name="district"]').html("");
$.each(cities, function (index, value) {
$('select[name="district"]').append("");
});
})
}
$(document).on('change', 'select[name="country"]', function () {
getCities($(this).val());
});
$(document).on('change', 'select[name="city"]', function () {
getDistricts($(this).val())
});
function crud(params, url, type, callback) {
$.ajax({
type: type,
data: params,
async: false,
url: url,
success: function (response) {
callback(response);
},
});
}