From 16cd3a1383b662abdef2047160b874a1369f80e9 Mon Sep 17 00:00:00 2001 From: eyob tech Date: Thu, 30 Jul 2026 01:55:37 +0100 Subject: [PATCH 1/2] Fix book library bugs: render syntax error, wrong array reference, author field, delete button, read status logic --- debugging/book-library/script.js | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/debugging/book-library/script.js b/debugging/book-library/script.js index 75ce6c1d..cb0445e2 100644 --- a/debugging/book-library/script.js +++ b/debugging/book-library/script.js @@ -37,8 +37,8 @@ function submit() { alert("Please fill all fields!"); return false; } else { - let book = new Book(title.value, title.value, pages.value, check.checked); - library.push(book); + let book = new Book(title.value, author.value, pages.value, check.checked); + myLibrary.push(book); render(); } } @@ -54,7 +54,7 @@ function render() { let table = document.getElementById("display"); let rowsNumber = table.rows.length; //delete old table - for (let n = rowsNumber - 1; n > 0; n-- { + for (let n = rowsNumber - 1; n > 0; n--) { table.deleteRow(n); } //insert updated row and cells @@ -77,9 +77,9 @@ function render() { wasReadCell.appendChild(changeBut); let readStatus = ""; if (myLibrary[i].check == false) { - readStatus = "Yes"; - } else { readStatus = "No"; + } else { + readStatus = "Yes"; } changeBut.innerText = readStatus; @@ -90,14 +90,14 @@ function render() { //add delete button to every row and render again let delButton = document.createElement("button"); - delBut.id = i + 5; - deleteCell.appendChild(delBut); - delBut.className = "btn btn-warning"; - delBut.innerHTML = "Delete"; - delBut.addEventListener("clicks", function () { - alert(`You've deleted title: ${myLibrary[i].title}`); + delButton.id = i + 5; + deleteCell.appendChild(delButton); + delButton.className = "btn btn-warning"; + delButton.innerHTML = "Delete"; + delButton.addEventListener("click", function () { + alert(You've deleted title: ${myLibrary[i].title}); myLibrary.splice(i, 1); render(); }); } -} +} \ No newline at end of file From f717abe0342acd29a9d3e7c816b8b451b802f427 Mon Sep 17 00:00:00 2001 From: eyob tech Date: Thu, 30 Jul 2026 02:15:31 +0100 Subject: [PATCH 2/2] Fix book library bugs: render syntax error, wrong array reference, author field, delete button, read status logic, missing author validation --- debugging/book-library/script.js | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/debugging/book-library/script.js b/debugging/book-library/script.js index cb0445e2..9ef68e7a 100644 --- a/debugging/book-library/script.js +++ b/debugging/book-library/script.js @@ -29,11 +29,13 @@ const check = document.getElementById("check"); //via Book function and start render function function submit() { if ( - title.value == null || - title.value == "" || - pages.value == null || - pages.value == "" - ) { + title.value == null || + title.value == "" || + author.value == null || + author.value == "" || + pages.value == null || + pages.value == "" +) { alert("Please fill all fields!"); return false; } else { @@ -95,7 +97,7 @@ function render() { delButton.className = "btn btn-warning"; delButton.innerHTML = "Delete"; delButton.addEventListener("click", function () { - alert(You've deleted title: ${myLibrary[i].title}); + alert(`You've deleted title: ${myLibrary[i].title}`); myLibrary.splice(i, 1); render(); });