From 8240e51af9beaba9a8f53221a10204763df056db Mon Sep 17 00:00:00 2001 From: allllen4a Date: Fri, 22 Dec 2023 11:28:50 +0300 Subject: [PATCH] Laba4 --- 3 proba/js/lines-modal.js | 502 +++++++++++++++++++++++++++++++---- 3 proba/js/lines-rest-api.js | 1 + 3 proba/js/lines-ui.js | 2 + 3 proba/js/lines.js | 4 + 3 proba/отчет 3.docx | Bin 0 -> 68209 bytes 5 files changed, 452 insertions(+), 57 deletions(-) create mode 100644 3 proba/отчет 3.docx diff --git a/3 proba/js/lines-modal.js b/3 proba/js/lines-modal.js index 2291b51..b337365 100644 --- a/3 proba/js/lines-modal.js +++ b/3 proba/js/lines-modal.js @@ -1,65 +1,453 @@ -// Модуль для работы с модальным окном +/* eslint-disable linebreak-style */ +// модуль с логикой -// импорт компонента Modal из bootstrap -import { Modal } from "bootstrap"; -import { cntrls, imagePlaceholder } from "./lines-ui"; +// eslint-disable-next-line import/no-self-import +import { + hideUpdateModal, + showUpdateModal, +} from "./lines-modal"; +import { + createLine, + deleteLine, + getAllGengeTypes, + getAllAuthorTypes, + getAllLines, + getLine, + updateLine, +} from "./lines-rest-api"; +import { + cntrls, + createTableRow, + imagePlaceholder, + createGenresOption, + createAuthorsOption, + createTableRowOnIndex, +} from "./lines-ui"; -// поиск модального окна на странице -const modal = document.getElementById("items-update"); -// если он найден, то создается экземпляр компонента Modal -// для программного управления модальным окном -const myModal = modal ? new Modal(modal, {}) : null; - -// поиск тега с заголовком модального кона для его смены -const modalTitle = document.getElementById("items-update-title"); - -// обнуление значений модального окна, т. к. -// используется одно окно для всех операций -function resetValues() { - cntrls.lineId.value = ""; - cntrls.itemsType.value = ""; - cntrls.author.value = ""; - cntrls.name.value = ""; - cntrls.desc.value = ""; - cntrls.count.value = 0; - cntrls.date.value = ""; - cntrls.image.value = ""; - cntrls.imagePreview.src = imagePlaceholder; +async function drawGenreSelect() { + // вызов метода REST API для получения списка типов товаров + const data = await getAllGengeTypes(); + const data2 = await getAllAuthorTypes(); + // очистка содержимого select + // удаляется все, что находится между тегами + // но не атрибуты + cntrls.genresType.innerHTML = ""; + cntrls.authorsType.innerHTML = ""; + // пустое значение + cntrls.genresType.appendChild(createGenresOption("Выберите значение", "", true)); + cntrls.authorsType.appendChild(createGenresOption("Выберите значение", "", true)); + // цикл по результату ответа от сервера + // используется лямбда-выражение + // (item) => {} аналогично function(item) {} + data.forEach((genre) => { + cntrls.genresType.appendChild(createGenresOption(genre.name, genre.id)); + }); + data2.forEach((author) => { + cntrls.authorsType.appendChild(createAuthorsOption(author.name, author.id)); + }); } -// функция для показа модального окна -// перед показом происходит заполнение формы для редактирования -// если объект item не пуст -export function showUpdateModal(item) { - modalTitle.innerHTML = item === null ? "Добавить" : "Изменить"; - console.info(item); +async function drawLinesTable() { + console.info("Try to load data"); + if (!cntrls.table) { + return; + } + // вызов метода REST API для получения всех записей + const data = await getAllLines(); + // очистка содержимого table + // удаляется все, что находится между тегами
+ // но не атрибуты + cntrls.table.innerHTML = ""; + // цикл по результату ответа от сервера + // используется лямбда-выражение + // (item, index) => {} аналогично function(item, index) {} + data.forEach((item, index) => { + cntrls.table.appendChild( + createTableRow( + item, + index, + // функции передаются в качестве параметра + // это очень удобно, так как аргументы функций доступны только + // в данном месте кода и не передаются в сервисные модули + () => showUpdateModal(item), + () => removeLine(item.id), + ), + ); + }); +} - if (item) { - cntrls.lineId.value = item.id; - cntrls.itemsType.value = item.itemsId; - cntrls.author.value = item.authorsId; - cntrls.name.value = item.name; - cntrls.desc.value = item.desc; - cntrls.count.value = item.count; - cntrls.date.value = item.date; - // заполнение превью - // Если пользователь выбрал изображение, то оно загружается - // в тэг image с id image - preview - // иначе устанавливается заглушка, адрес которой указан в imagePlaceholder - cntrls.imagePreview.src = item.image ? item.image : imagePlaceholder; - } else { - resetValues(); +async function drawLinesTableOnIndex() { + console.info("Try to load data On Index"); + if (!cntrls.container) { + return; + } + // вызов метода REST API для получения всех записей + const data = await getAllLines(); + // очистка содержимого table + // удаляется все, что находится между тегами
+ // но не атрибуты + cntrls.container.innerHTML = ""; + // цикл по результату ответа от сервера + // используется лямбда-выражение + // (item, index) => {} аналогично function(item, index) {} + data.forEach((item, index) => { + cntrls.container.appendChild( + createTableRowOnIndex( + item, + index, + // функции передаются в качестве параметра + // это очень удобно, так как аргументы функций доступны только + // в данном месте кода и не передаются в сервисные модули + () => showUpdateModal(item), + () => location.assign(`page3.html?id=${item.id}`), + () => removeLine(item.id), + ), + ); + }); +} + +async function addLine(nameBook, authorsType, genresType, year, description, count, date, image) { + console.info("Try to add item"); + // вызов метода REST API для добавления записи + // eslint-disable-next-line max-len + const data = await createLine(nameBook, authorsType, genresType, year, description, count, date, image); + console.info("Added"); + console.info(data); + // загрузка и заполнение table + drawLinesTable(); +} + +// eslint-disable-next-line max-len +async function editLine(id, nameBook, authorsType, genresType, year, description, count, date, image) { + console.info("Try to update item"); + console.log(id, nameBook, authorsType, genresType, description, count, date, image); + // вызов метода REST API для обновления записи + // eslint-disable-next-line max-len + const data = await updateLine(id, nameBook, authorsType, genresType, year, description, count, date, image); + console.info("Updated"); + console.info(data); + // загрузка и заполнение table + drawLinesTable(); +} + +async function removeLine(id) { + if (!confirm("Вы точно хотите удалить этот товар?")) { + console.info("Canceled"); + return; + } + console.info("Try to remove item"); + // вызов метода REST API для удаления записи + const data = await deleteLine(id); + console.info(data); + // загрузка и заполнение table + drawLinesTable(); +} + +// функция для получения содержимого файла в виде base64 строки +// https://ru.wikipedia.org/wiki/Base64 +async function readFile(file) { + const reader = new FileReader(); + + // создание Promise-объекта для использования функции + // с помощью await (асинхронно) без коллбэков (callback) + // https://learn.javascript.ru/promise + return new Promise((resolve, reject) => { + // 2. "Возвращаем" содержимое когда файл прочитан + // через вызов resolve + // Если не использовать Promise, то всю работу по взаимодействию + // с REST API пришлось бы делать в обработчике (callback) функции + // onloadend + reader.onloadend = () => { + const fileContent = reader.result; + // Здесь могла бы быть работа с REST API + // Чтение заканчивает выполняться здесь + resolve(fileContent); + }; + // 3. Возвращаем ошибку + reader.onerror = () => { + // Или здесь в случае ошибки + reject(new Error("oops, something went wrong with the file reader.")); + }; + // Шаг 1. Сначала читаем файл + // Чтение начинает выполняться здесь + reader.readAsDataURL(file); + }); +} + +// функция для обновления блока с превью выбранного изображения +async function updateImagePreview() { + // получение выбранного файла + // возможен выбор нескольких файлов, поэтому необходимо получить только первый + const file = cntrls.image.files[0]; + // чтение содержимого файла в виде base64 строки + const fileContent = await readFile(file); + console.info("base64 ", fileContent); + // обновление атрибута src для тега img с id image-preview + cntrls.imagePreview.src = fileContent; +} + +// Функция для обработки создания и редактирования элементов таблицы через модальное окно +// Если хотите делать через страницу, то удалите эту функцию +export function linesForm() { + console.info("linesForm"); + + // загрузка и заполнение select со списком товаров + drawGenreSelect(); + // drawAuthorSelect(); + // загрузка и заполнение table + drawLinesTable(); + + // Вызов функции обновления превью изображения при возникновении + // события oncahnge в тэге input с id image + cntrls.image.addEventListener("change", () => updateImagePreview()); + + // обработчик события нажатия на кнопку для показа модального окна + cntrls.button.addEventListener("click", () => showUpdateModal(null)); + + // обработчик события отправки формы + // возникает при нажатии на кнопку (button) с типом submit + // кнопка должна находится внутри тега form + cntrls.form.addEventListener("submit", async (event) => { + console.info("Form onSubmit"); + // отключение стандартного поведения формы при отправке + // при отправке страница обновляется и JS перестает работать + event.preventDefault(); + event.stopPropagation(); + // если форма не прошла валидацию, то ничего делать не нужно + if (!cntrls.form.checkValidity()) { + return; + } + + let imageBase64 = ""; + // Получение выбранного пользователем изображения в виде base64 строки + // Если пользователь ничего не выбрал, то не нужно сохранять в БД + // дефолтное изображение + if (cntrls.imagePreview.src !== imagePlaceholder) { + // Загрузка содержимого атрибута src тэга img с id image-preview + // Здесь выполняется HTTP запрос с типом GET + const result = await fetch(cntrls.imagePreview.src); + // Получение из HTTP-ответа бинарного содержимого + const blob = await result.blob(); + // Получение base64 строки для файла + // Здесь выполняется Promise из функции readFile + // Promise позволяет писать линейный код для работы с асинхронными методами + // без использования обработчиков (callback) с помощью await + imageBase64 = await readFile(blob); + } + + // получение id строки для редактирования + // это значение содержится в скрытом input + const currentId = cntrls.lineId.value; + // если значение id не задано, + // то необходимо выполнить добавление записи + // иначе обновление записи + if (!currentId) { + await addLine( + cntrls.nameBook.value, + cntrls.authorsType.value, + cntrls.genresType.value, + cntrls.year.value, + cntrls.description.value, + cntrls.count.value, + cntrls.date.value, + imageBase64, + ); + } else { + await editLine( + currentId, + cntrls.nameBook.value, + cntrls.authorsType.value, + cntrls.genresType.value, + cntrls.year.value, + cntrls.description.value, + cntrls.count.value, + cntrls.date.value, + imageBase64, + ); + } + + // после выполнения добавления/обновления модальное окно скрывается + hideUpdateModal(); + }); +} + +export async function linesFormOnIndex() { + console.info("linesFormOnIndex"); + + // await drawGenreSelect(); + await drawLinesTableOnIndex(); + + // обработчик события отправки формы + // возникает при нажатии на кнопку (button) с типом submit + // кнопка должна находится внутри тега form + cntrls.form.addEventListener("submit", async (event) => { + console.info("Form onSubmit"); + // отключение стандартного поведения формы при отправке + // при отправке страница обновляется и JS перестает работать + event.preventDefault(); + event.stopPropagation(); + // если форма не прошла валидацию, то ничего делать не нужно + if (!cntrls.form.checkValidity()) { + return; + } + + let imageBase64 = ""; + // Получение выбранного пользователем изображения в виде base64 строки + // Если пользователь ничего не выбрал, то не нужно сохранять в БД + // дефолтное изображение + if (cntrls.imagePreview.src !== imagePlaceholder) { + // Загрузка содержимого атрибута src тэга img с id image-preview + // Здесь выполняется HTTP запрос с типом GET + const result = await fetch(cntrls.imagePreview.src); + // Получение из HTTP-ответа бинарного содержимого + const blob = await result.blob(); + // Получение base64 строки для файла + // Здесь выполняется Promise из функции readFile + // Promise позволяет писать линейный код для работы с асинхронными методами + // без использования обработчиков (callback) с помощью await + imageBase64 = await readFile(blob); + } + + // получение id строки для редактирования + // это значение содержится в скрытом input + const currentId = cntrls.lineId.value; + // если значение id не задано, + // то необходимо выполнить добавление записи + // иначе обновление записи + if (!currentId) { + await addLine( + cntrls.nameBook.value, + cntrls.authorsType.value, + cntrls.genresType.value, + cntrls.year.value, + cntrls.description.value, + cntrls.count.value, + cntrls.date.value, + imageBase64, + ); + } else { + await editLine( + currentId, + cntrls.nameBook.value, + cntrls.authorsType.value, + cntrls.genresType.value, + cntrls.year.value, + cntrls.description.value, + cntrls.count.value, + cntrls.date.value, + imageBase64, + ); + } + + // после выполнения добавления/обновления модальное окно скрывается + hideUpdateModal(); + }); +} +// Функция для обработки создания и редактирования элементов таблицы через страницу page-admin.html +// Если хотите делать через модальное окно, то удалите эту функцию +export async function linesPageForm() { + console.info("linesPageForm"); + + // загрузка и заполнение select со списком товаров + // drawGenreSelect(); + + // func1 = (id) => {} аналогично function func1(id) {} + const goBack = () => location.assign("/page3.html"); + + // Вызов функции обновления превью изображения при возникновении + // события onchange в тэге input с id image + cntrls.image.addEventListener("change", () => updateImagePreview()); + + // получение параметров GET-запроса из URL + // параметры перечислены после символа ? (?id=1&color=black&...) + const urlParams = new URLSearchParams(location.search); + + // получение значения конкретного параметра (id) + // указан только при редактировании + const currentId = urlParams.get("id"); + // если id задан + if (currentId) { + try { + // вызов метода REST API для получения записи по первичному ключу(id) + const line = await getLine(currentId); + // заполнение формы для редактирования + cntrls.nameBook.value = line.nameBook; + cntrls.authorsType.value = line.authorsType; + cntrls.genresType.value = line.genresType; + cntrls.year.value = line.year; + cntrls.description.value = line.description; + cntrls.count.value = line.count; + cntrls.date.value = line.date; + // заполнение превью + // Если пользователь выбрал изображение, то оно загружается + // в тэг image с id image - preview + // иначе устанавливается заглушка, адрес которой указан в imagePlaceholder + cntrls.imagePreview.src = line.image ? line.image : imagePlaceholder; + } catch { + // в случае ошибки происходит возврат к index + goBack(); + } } - myModal.show(); -} - -// функция для скрытия модального окна -export function hideUpdateModal() { - resetValues(); - - // удаление класса was-validated для скрытия результатов валидации - cntrls.form.classList.remove("was-validated"); - - myModal.hide(); + // обработчик события отправки формы + // возникает при нажатии на кнопку (button) с типом submit + // кнопка должна находится внутри тега form + cntrls.form.addEventListener("submit", async (event) => { + console.info("Form onSubmit"); + // отключение стандартного поведения формы при отправке + // при отправке страница обновляется и JS перестает работать + event.preventDefault(); + event.stopPropagation(); + // если форма не прошла валидацию, то ничего делать не нужно + if (!cntrls.form.checkValidity()) { + return; + } + + let imageBase64 = ""; + // Получение выбранного пользователем изображения в виде base64 строки + // Если пользователь ничего не выбрал, то не нужно сохранять в БД + // дефолтное изображение + if (cntrls.imagePreview.src !== imagePlaceholder) { + // Загрузка содержимого атрибута src тэга img с id image-preview + // Здесь выполняется HTTP запрос с типом GET + const result = await fetch(cntrls.imagePreview.src); + // Получение из HTTP-ответа бинарного содержимого + const blob = await result.blob(); + // Получение base64 строки для файла + // Здесь выполняется Promise из функции readFile + // Promise позволяет писать линейный код для работы с асинхронными методами + // без использования обработчиков (callback) с помощью await + imageBase64 = await readFile(blob); + } + + // если значение параметра запроса не задано, + // то необходимо выполнить добавление записи + // иначе обновление записи + if (!currentId) { + await addLine( + cntrls.nameBook.value, + cntrls.authorsType.value, + cntrls.genresType.value, + cntrls.year.value, + cntrls.description.value, + cntrls.count.value, + cntrls.date.value, + imageBase64, + ); + } else { + await editLine( + currentId, + cntrls.nameBook.value, + cntrls.authorsType.value, + cntrls.genresType.value, + cntrls.year.value, + cntrls.description.value, + cntrls.count.value, + cntrls.date.value, + imageBase64, + ); + } + // возврат к странице index + goBack(); + }); } diff --git a/3 proba/js/lines-rest-api.js b/3 proba/js/lines-rest-api.js index daaac3b..3a382a6 100644 --- a/3 proba/js/lines-rest-api.js +++ b/3 proba/js/lines-rest-api.js @@ -1,3 +1,4 @@ +/* eslint-disable linebreak-style */ // модуль для работы с REST API сервера // адрес сервера diff --git a/3 proba/js/lines-ui.js b/3 proba/js/lines-ui.js index d89e46b..8e63ed7 100644 --- a/3 proba/js/lines-ui.js +++ b/3 proba/js/lines-ui.js @@ -1,5 +1,7 @@ +/* eslint-disable linebreak-style */ // модуль для работы с элементами управления +// eslint-disable-next-line linebreak-style // объект для удобного получения элементов // при обращении к атрибуту объекта вызывается // нужная функция для поиска элемента diff --git a/3 proba/js/lines.js b/3 proba/js/lines.js index 622216f..ac7e063 100644 --- a/3 proba/js/lines.js +++ b/3 proba/js/lines.js @@ -1,5 +1,9 @@ +/* eslint-disable linebreak-style */ +/* eslint-disable import/named */ +/* eslint-disable linebreak-style */ // модуль с логикой +// eslint-disable-next-line import/named import { hideUpdateModal, showUpdateModal } from "./lines-modal"; import { createLine, diff --git a/3 proba/отчет 3.docx b/3 proba/отчет 3.docx new file mode 100644 index 0000000000000000000000000000000000000000..48b5c4950791099093099c9b722770483b1296d8 GIT binary patch literal 68209 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

b2+%9v4-AU#>VTVDG@G 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 z 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