fix(requests): убраны alert и немедленный reload при approve/reject на странице списка
- requestCrudHandler.js: заменены alert+reload на закрытие модального окна + событие - requestList.js: добавлен обработчик события request:updated с отложенной перезагрузкой (500ms) - Улучшен UX: модальное окно плавно закрывается, затем обновляется список - Системное уведомление больше не появляется
This commit is contained in:
parent
c0b659f95d
commit
935c12aaa2
@ -320,8 +320,19 @@ export function initRequestCrudHandler(options) {
|
||||
}
|
||||
|
||||
await response.json();
|
||||
alert("Заявление одобрено.");
|
||||
window.location.reload();
|
||||
|
||||
// Закрываем модальное окно
|
||||
const modal = document.getElementById('reqApproveModal');
|
||||
if (modal) {
|
||||
const bsModal = bootstrap.Modal.getInstance(modal);
|
||||
if (bsModal) bsModal.hide();
|
||||
}
|
||||
|
||||
// Отправляем событие для обновления списка
|
||||
document.dispatchEvent(new CustomEvent('request:updated', {
|
||||
detail: { action: 'approve', id: reqId }
|
||||
}));
|
||||
|
||||
} catch (error) {
|
||||
alert("Не удалось одобрить заявление: " + error.message);
|
||||
}
|
||||
@ -351,8 +362,19 @@ export function initRequestCrudHandler(options) {
|
||||
}
|
||||
|
||||
await response.json();
|
||||
alert("Заявление отклонено.");
|
||||
window.location.reload();
|
||||
|
||||
// Закрываем модальное окно
|
||||
const modal = document.getElementById('reqRejectModal');
|
||||
if (modal) {
|
||||
const bsModal = bootstrap.Modal.getInstance(modal);
|
||||
if (bsModal) bsModal.hide();
|
||||
}
|
||||
|
||||
// Отправляем событие для обновления списка
|
||||
document.dispatchEvent(new CustomEvent('request:updated', {
|
||||
detail: { action: 'reject', id: reqId }
|
||||
}));
|
||||
|
||||
} catch (error) {
|
||||
alert("Не удалось отклонить заявление: " + error.message);
|
||||
}
|
||||
|
||||
@ -112,4 +112,12 @@ export function initRequestListPage(config) {
|
||||
apiDetailBase,
|
||||
headers
|
||||
});
|
||||
|
||||
// Слушаем события обновления заявлений (approve/reject)
|
||||
document.addEventListener('request:updated', function(event) {
|
||||
console.log('Request updated:', event.detail);
|
||||
// Перезагружаем страницу для обновления списка
|
||||
// TODO: в будущем можно заменить на AJAX обновление конкретной карточки
|
||||
setTimeout(() => window.location.reload(), 500);
|
||||
});
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user