52 lines
2.3 KiB
JavaScript
52 lines
2.3 KiB
JavaScript
import { Controller } from 'stimulus';
|
|
const loader = require("./../components/loader.js");
|
|
const helper = require("./../components/helper.js");
|
|
|
|
/*
|
|
* This is an example Stimulus controller!
|
|
*
|
|
* Any element with a data-controller="priceList" attribute will cause
|
|
* this controller to be executed. The name "priceList" comes from the filename:
|
|
* priceList_controller.js -> "priceList"
|
|
*
|
|
* Delete this file or adapt it for your use!
|
|
*/
|
|
export default class extends Controller {
|
|
connect() {
|
|
var wrap = this.element;
|
|
var priceListSelect = document.getElementById('price_list_admin_form_groupId');
|
|
var select = priceListSelect.cloneNode(true);
|
|
select.id = 'price_list_update_form';
|
|
select.name = 'groupId';
|
|
|
|
var priceList = this.element.querySelector('.group-update');
|
|
priceList.appendChild(select);
|
|
|
|
var btnUpdatePriceList = this.element.querySelector('#update-price-list');
|
|
|
|
btnUpdatePriceList.addEventListener('click', function() {
|
|
if (select.value == '') {
|
|
select.classList.add('is-invalid');
|
|
} else {
|
|
select.classList.remove('is-invalid');
|
|
var msg = wrap.querySelector('.msg');
|
|
msg.innerHTML = "Пожалуйста ждите, идет обновление цен!";
|
|
msg.classList.add('text-danger');
|
|
|
|
loader.btnLoader(btnUpdatePriceList, true);
|
|
helper.sendRequest({groupId: select.value}, '/update/price-list', "POST").then(function (response) {
|
|
loader.btnLoader(btnUpdatePriceList, false);
|
|
|
|
if (response.status == true) {
|
|
msg.innerHTML = "Обновление успешно завершено! <br> Нажмите на кнопку \"Search\" для отображения в таблице.";
|
|
msg.classList.remove('text-danger');
|
|
msg.classList.add('text-success');
|
|
} else {
|
|
msg.innerHTML = "Упс, что то пошло не так, попробуйте позже или обратитесь к Администратору.";
|
|
}
|
|
})
|
|
}
|
|
});
|
|
}
|
|
}
|