Advertisement
viligen

centralCinema

Jun 8th, 2022
915
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve() {
  2.     let movieName = document.querySelectorAll("#container input")[0];
  3.     let Hall = document.querySelectorAll("#container input")[1];
  4.     let ticketPrice = document.querySelectorAll("#container input")[2];
  5.     let onScreenBtn = document.querySelector("#container button");
  6.  
  7.     let ulMovies = document.querySelector("#movies ul");
  8.  
  9.     let ulArchive = document.querySelector("#archive ul");
  10.  
  11.     let clearBtn = document.querySelector("#archive button");
  12.  
  13.     onScreenBtn.addEventListener("click", onScreen);
  14.  
  15.     function onScreen(ev) {
  16.         ev.preventDefault();
  17.         if (
  18.             movieName.value == false ||
  19.             Hall.value == false ||
  20.             isNaN(ticketPrice.value) ||
  21.             (ticketPrice.value == false && ticketPrice.value !== 0)
  22.         ) {
  23.             return;
  24.         }
  25.         let newLiElement = createLi(
  26.             movieName.value,
  27.             Hall.value,
  28.             ticketPrice.value
  29.         );
  30.         ulMovies.appendChild(newLiElement);
  31.         movieName.value = "";
  32.         Hall.value = "";
  33.         ticketPrice.value = "";
  34.     }
  35.  
  36.     function createLi(name, hall, price) {
  37.         let newLi = document.createElement("li");
  38.         let newSpan = document.createElement("span");
  39.         newSpan.textContent = name;
  40.         newLi.appendChild(newSpan);
  41.         let newStrong = document.createElement("strong");
  42.         newStrong.textContent = "Hall: " + hall;
  43.         newLi.appendChild(newStrong);
  44.         let newDiv = document.createElement("div");
  45.         newLi.appendChild(newDiv);
  46.         let strongInDiv = document.createElement("strong");
  47.         strongInDiv.textContent = Number(price).toFixed(2);
  48.         newDiv.appendChild(strongInDiv);
  49.         let inputInDiv = document.createElement("input");
  50.         inputInDiv.placeholder = "Tickets Sold";
  51.         newDiv.appendChild(inputInDiv);
  52.         let archiveBtn = document.createElement("button");
  53.         archiveBtn.textContent = "Archive";
  54.         archiveBtn.addEventListener("click", archive);
  55.         newDiv.appendChild(archiveBtn);
  56.  
  57.         function archive(ev) {
  58.             if (isNaN(inputInDiv.value) || inputInDiv.value.trim() == "") {
  59.                 return;
  60.             }
  61.             let totalAmnt = Number(inputInDiv.value) * Number(price);
  62.             newDiv.remove();
  63.             newStrong.textContent = "Total amount: " + totalAmnt.toFixed(2);
  64.             let deleteBtn = document.createElement("button");
  65.             deleteBtn.textContent = "Delete";
  66.             deleteBtn.addEventListener("click", deleteLi);
  67.             function deleteLi(ev) {
  68.                 newLi.remove();
  69.             }
  70.  
  71.             newLi.appendChild(deleteBtn);
  72.  
  73.             ulArchive.appendChild(newLi);
  74.         }
  75.  
  76.         return newLi;
  77.     }
  78.  
  79.     clearBtn.addEventListener("click", clearArchives);
  80.     function clearArchives(ev) {
  81.         let allLis = ulArchive.children;
  82.         while (ulArchive.firstChild) {
  83.             ulArchive.removeChild(ulArchive.firstChild);
  84.         }
  85.     }
  86. }
  87.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement