Змінено директорії
Додано скрипти CRON Поліпшено механізм запису стендів та їх редагування
This commit is contained in:
@@ -33,122 +33,127 @@ const SheepsEvents = {
|
||||
init() {
|
||||
if (this.initialized) return;
|
||||
|
||||
const sheepEditorForm = document.getElementById("sheep-editor");
|
||||
const sheepEditorButton = document.getElementById('sheep-editor-button');
|
||||
sheepEditorForm.addEventListener("submit", async (event) => {
|
||||
event.preventDefault();
|
||||
document.addEventListener('submit', async (e) => {
|
||||
const editorForm = e.target.closest('#sheep-editor');
|
||||
if (editorForm) {
|
||||
e.preventDefault();
|
||||
const sheepEditorButton = document.getElementById('sheep-editor-button');
|
||||
const form = event.target;
|
||||
const formData = new FormData(form);
|
||||
const uuidValue = form.elements["uuid"].value;
|
||||
const sheep = Sheeps.sheeps_list.list.find(item => item.uuid === uuidValue);
|
||||
|
||||
const form = event.target;
|
||||
const formData = new FormData(form);
|
||||
const uuidValue = form.elements["uuid"].value;
|
||||
const sheep = Sheeps.sheeps_list.list.find(item => item.uuid === uuidValue);
|
||||
if (!sheep) {
|
||||
console.error("Sheep not found for uuid:", uuidValue);
|
||||
return;
|
||||
}
|
||||
|
||||
if (!sheep) {
|
||||
console.error("Sheep not found for uuid:", uuidValue);
|
||||
sheep.name = form.elements["name"].value;
|
||||
sheep.group_id = Number(formData.get("group_id"));
|
||||
sheep.mode = formData.get("mode");
|
||||
sheep.mode_title = ["Користувач", "Модератор", "Адміністратор"][sheep.mode] || "Користувач";
|
||||
|
||||
const permKeys = [
|
||||
"can_view_sheeps",
|
||||
"can_view_schedule",
|
||||
"can_view_stand",
|
||||
"can_view_territory",
|
||||
"can_add_sheeps",
|
||||
"can_add_territory",
|
||||
"can_manager_territory",
|
||||
"can_add_stand",
|
||||
"can_manager_stand",
|
||||
"can_add_schedule"
|
||||
];
|
||||
for (const key of permKeys) {
|
||||
sheep.possibilities[key] = form.elements[key].checked;
|
||||
}
|
||||
|
||||
sheepEditorButton.innerText = "Зачекайте...";
|
||||
|
||||
try {
|
||||
const uuid = localStorage.getItem('uuid');
|
||||
const URL = `${CONFIG.api}sheep`;
|
||||
const response = await fetch(URL, {
|
||||
method: 'PUT',
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
"Authorization": uuid
|
||||
},
|
||||
body: JSON.stringify(sheep)
|
||||
});
|
||||
|
||||
if (response.ok) {
|
||||
sheepEditorButton.innerText = "Успішно збережено";
|
||||
const data = await response.json();
|
||||
console.log(data);
|
||||
|
||||
Sheeps.sheeps_list.list = [];
|
||||
await Sheeps.sheeps_list.setHTML();
|
||||
|
||||
setTimeout(() => {
|
||||
sheepEditorButton.innerText = "Зберегти";
|
||||
}, 3000);
|
||||
} else {
|
||||
console.error('Помилка збереження');
|
||||
sheepEditorButton.innerText = "Помилка збереження";
|
||||
}
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
sheepEditorButton.innerText = "Помилка збереження";
|
||||
}
|
||||
|
||||
// тот же код, что был в _onSheepEditorSubmit, но обращаемся к editorForm
|
||||
return;
|
||||
}
|
||||
|
||||
sheep.name = form.elements["name"].value;
|
||||
sheep.group_id = Number(formData.get("group_id"));
|
||||
sheep.mode = formData.get("mode");
|
||||
sheep.mode_title = ["Користувач", "Модератор", "Адміністратор"][sheep.mode] || "Користувач";
|
||||
const addedsForm = e.target.closest('#sheep-addeds');
|
||||
if (addedsForm) {
|
||||
e.preventDefault();
|
||||
const sheepAddedsButton = document.getElementById('sheep-addeds-button');
|
||||
|
||||
const permKeys = [
|
||||
"can_view_sheeps",
|
||||
"can_view_schedule",
|
||||
"can_view_stand",
|
||||
"can_view_territory",
|
||||
"can_add_sheeps",
|
||||
"can_add_territory",
|
||||
"can_manager_territory",
|
||||
"can_add_stand",
|
||||
"can_manager_stand",
|
||||
"can_add_schedule"
|
||||
];
|
||||
for (const key of permKeys) {
|
||||
sheep.possibilities[key] = form.elements[key].checked;
|
||||
}
|
||||
const form = event.target;
|
||||
const formData = new FormData(form);
|
||||
const data = Object.fromEntries(formData.entries());
|
||||
|
||||
sheepEditorButton.innerText = "Зачекайте...";
|
||||
sheepAddedsButton.innerText = "Зачекайте...";
|
||||
|
||||
try {
|
||||
const uuid = localStorage.getItem('uuid');
|
||||
const URL = `${CONFIG.api}sheep`;
|
||||
const response = await fetch(URL, {
|
||||
method: 'PUT',
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
"Authorization": uuid
|
||||
},
|
||||
body: JSON.stringify(sheep)
|
||||
});
|
||||
try {
|
||||
const uuid = localStorage.getItem('uuid');
|
||||
const URL = `${CONFIG.api}sheep`;
|
||||
const response = await fetch(URL, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
"Authorization": uuid
|
||||
},
|
||||
body: JSON.stringify(data)
|
||||
});
|
||||
|
||||
if (response.ok) {
|
||||
sheepEditorButton.innerText = "Успішно збережено";
|
||||
const data = await response.json();
|
||||
console.log(data);
|
||||
if (response.ok) {
|
||||
sheepAddedsButton.innerText = "Вісника додано";
|
||||
const data = await response.json();
|
||||
console.log(data);
|
||||
|
||||
Sheeps.sheeps_list.list = [];
|
||||
await Sheeps.sheeps_list.setHTML();
|
||||
Sheeps.sheeps_list.list = [];
|
||||
|
||||
setTimeout(() => {
|
||||
sheepEditorButton.innerText = "Зберегти";
|
||||
}, 3000);
|
||||
} else {
|
||||
console.error('Помилка збереження');
|
||||
sheepEditorButton.innerText = "Помилка збереження";
|
||||
}
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
sheepEditorButton.innerText = "Помилка збереження";
|
||||
}
|
||||
});
|
||||
const randomNumber = Math.floor(Math.random() * Sheeps_icon.length);
|
||||
|
||||
const sheepAddedsForm = document.getElementById("sheep-addeds");
|
||||
const sheepAddedsButton = document.getElementById('sheep-addeds-button');
|
||||
sheepAddedsForm.addEventListener("submit", async (event) => {
|
||||
event.preventDefault();
|
||||
Sheeps.addeds.close();
|
||||
await Sheeps.editor.setHTML(data.id, randomNumber);
|
||||
|
||||
const form = event.target;
|
||||
const formData = new FormData(form);
|
||||
const data = Object.fromEntries(formData.entries());
|
||||
|
||||
sheepAddedsButton.innerText = "Зачекайте...";
|
||||
|
||||
try {
|
||||
const uuid = localStorage.getItem('uuid');
|
||||
const URL = `${CONFIG.api}sheep`;
|
||||
const response = await fetch(URL, {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
"Content-Type": "application/json",
|
||||
"Authorization": uuid
|
||||
},
|
||||
body: JSON.stringify(data)
|
||||
});
|
||||
|
||||
if (response.ok) {
|
||||
sheepAddedsButton.innerText = "Вісника додано";
|
||||
const data = await response.json();
|
||||
console.log(data);
|
||||
|
||||
Sheeps.sheeps_list.list = [];
|
||||
|
||||
const randomNumber = Math.floor(Math.random() * Sheeps_icon.length);
|
||||
|
||||
Sheeps.addeds.close();
|
||||
await Sheeps.editor.setHTML(data.id, randomNumber);
|
||||
|
||||
setTimeout(() => {
|
||||
sheepAddedsButton.innerText = "Додати";
|
||||
}, 3000);
|
||||
} else {
|
||||
console.error('Помилка додавання');
|
||||
setTimeout(() => {
|
||||
sheepAddedsButton.innerText = "Додати";
|
||||
}, 3000);
|
||||
} else {
|
||||
console.error('Помилка додавання');
|
||||
sheepAddedsButton.innerText = "Помилка додавання";
|
||||
}
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
sheepAddedsButton.innerText = "Помилка додавання";
|
||||
}
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
sheepAddedsButton.innerText = "Помилка додавання";
|
||||
return;
|
||||
}
|
||||
});
|
||||
|
||||
@@ -469,7 +474,7 @@ const Sheeps = {
|
||||
const URL = `${CONFIG.api}house/list?mode=admin&sheep_id=${id}`;
|
||||
const list = await Sheeps.territory.loadAPI(URL);
|
||||
|
||||
if ((USER.possibilities.can_view_territory || USER.mode == 2) && list.length > 0){
|
||||
if ((USER.possibilities.can_view_territory || USER.mode == 2) && list.length > 0) {
|
||||
document.getElementById('editor-blocks-territory').style.display = "";
|
||||
Sheeps.territory.renderCards(list, "house");
|
||||
}
|
||||
@@ -479,7 +484,7 @@ const Sheeps = {
|
||||
const URL = `${CONFIG.api}homestead/list?mode=admin&sheep_id=${id}`;
|
||||
const list = await Sheeps.territory.loadAPI(URL);
|
||||
|
||||
if ((USER.possibilities.can_view_territory || USER.mode == 2) && list.length > 0){
|
||||
if ((USER.possibilities.can_view_territory || USER.mode == 2) && list.length > 0) {
|
||||
document.getElementById('editor-blocks-territory').style.display = "";
|
||||
Sheeps.territory.renderCards(list, "homestead");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user