- Добавлено модальное окно редактирования номера
This commit is contained in:
Alexander Zhirov 2023-06-01 01:10:08 +03:00
parent cf3962d71d
commit c0290cd753
12 changed files with 294 additions and 128 deletions

View file

@ -1,7 +1,7 @@
var numbers = [];
$(document).ready(function () {
message = new Message;
noticer = new Noticer;
$("button").button();
$("#tabs").tabs();
@ -59,9 +59,9 @@ function isJSON(str) {
function loadData() {
request('listsgroups', 'text').then(data => {
data.error ? message.error(data.message) : generateListsGroups(data);
data.error ? noticer.error(data.message) : generateListsGroups(data);
}).catch(error => {
message.error(error.message);
noticer.error(error.message);
});
}
@ -78,16 +78,16 @@ function generateListsGroups(data) {
});
}
async function generateGroupNumbers(panel) {
function generateGroupNumbers(panel) {
request('groupnumbers', 'json', { group: panel.data("group-name") }).then(data => {
if (isJSON(data) && JSON.parse(data).error)
message.error(JSON.parse(data).message);
noticer.error(JSON.parse(data).message);
else {
numbers = data;
showNumbers(panel);
}
}).catch(error => {
message.error(error.message);
noticer.error(error.message);
});
}
@ -95,7 +95,7 @@ function showNumbers(panel, data = numbers) {
(new divNotFoundNumbers).remove();
let body = panel.find('.body').html('');
$(data).each((i, j) => {
let row = $(`<tr class="row" data-number="${j.id}"></tr>`);
let row = $(`<tr class="row" data-number="${j.number}"></tr>`);
row.append(`<td>${j.number}</td>`);
row.append(`<td>${j.list}</td>`);
row.append(`<td>${j.all_cc}</td>`);
@ -104,8 +104,8 @@ function showNumbers(panel, data = numbers) {
row.append(`<td>${j.comment}</td>`);
body.append(row);
row.click(function(){
// numberEdit($(this).data('number'));
row.click(function() {
numberEdit($(this).data('number'));
});
});
@ -133,3 +133,75 @@ function divNotFoundNumbers() {
notFound.remove();
}
}
function numberEdit(number) {
request('editnumber', 'text', {number: number}).then(data => {
if (isJSON(data) && JSON.parse(data).error)
noticer.error(JSON.parse(data).message);
else {
showEditNumber(data, [
{
id: "btn-save",
text: "Сохранить",
icon: "ui-icon-check",
click: function() {
actionNumber($(this), 'update');
}
},
{
id: "btn-delete",
text: "Удалить",
icon: "ui-icon-trash",
click: function() {
// removeNumber($(this));
}
}
], `Редактирование номера ${number}`);
}
}).catch(error => {
noticer.error(error.message);
});
}
function showEditNumber(data, actionButton, title) {
let form = $(data);
form.appendTo('body').dialog({
title: title,
height: 'auto',
width: 'auto',
maxHeight: 500,
minHeight: 50,
resizable: false,
modal: true,
show: { effect: "fade", duration: 500 },
close: function(event, ui) {
$(this).dialog('destroy').remove()
},
buttons: [
...actionButton,
{
text: "Отмена",
icon: "ui-icon-cancel",
click: function() {
$(this).dialog("close");
}
}
]
});
$('#number-group, #number-list').selectmenu({
width: 200
});
}
function actionNumber(currentWindow, query) {
let number = $('#number-number').val();
let group = $('#number-group').val();
let list = $('#number-list').val();
let all_cc = $('#number-all-cc').val();
let white_cc = $('#number-white-cc').val();
let black_cc = $('#number-black-cc').val();
let comment = $('#number-comment').val();
}