Advertisement
Guest User

Untitled

a guest
May 23rd, 2019
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve() {
  2.  
  3.     let textAreaElements = document.getElementsByTagName("textarea");
  4.     let buttonsElement = document.getElementsByTagName("button");
  5.     let tbody = document.getElementsByTagName("tbody")[0];
  6.     document.getElementsByTagName("input")[0].disabled = false;
  7.     buttonsElement[0].addEventListener("click", generate);
  8.     buttonsElement[1].addEventListener("click", buy);
  9.  
  10.     function generate() {
  11.  
  12.         let furnitureListInput = JSON.parse(textAreaElements[0].value);
  13.         for (let i = 0; i < furnitureListInput.length; i++) {
  14.             tbody.appendChild(document.getElementsByTagName("tr")[1].cloneNode(true));
  15.             addFurniture(furnitureListInput[i]);
  16.         }
  17.     }
  18.  
  19.     function addFurniture(furniture) {
  20.         let allFurnitureElements = document.getElementsByTagName("tr");
  21.         let currentFurnitureElements = allFurnitureElements[allFurnitureElements.length - 1];
  22.         currentFurnitureElements.getElementsByTagName("img")[0].src = furniture["img"];
  23.         currentFurnitureElements.getElementsByTagName("p")[0].textContent = furniture["name"];
  24.         currentFurnitureElements.getElementsByTagName("p")[1].textContent = furniture["price"];
  25.         currentFurnitureElements.getElementsByTagName("p")[2].textContent = furniture["decFactor"];
  26.     }
  27.  
  28.     function buy() {
  29.         let furniture = [];
  30.         let totalPrice = 0;
  31.         let averageFactor = 0;
  32.         let checkbox = Array.from(document.getElementsByTagName("input"));
  33.         for (let i = 0; i < checkbox.length; i++) {
  34.             if (checkbox[i].checked) {
  35.                 let tableElements = checkbox[i].parentElement.parentElement;
  36.                 let name = tableElements.getElementsByTagName("p")[0].textContent;
  37.                 furniture.push(name);
  38.                 let price = tableElements.getElementsByTagName("p")[1].textContent;
  39.                 totalPrice += +price;
  40.                 let decFactor = tableElements.getElementsByTagName("p")[2].textContent;
  41.                 averageFactor += +decFactor;
  42.             }
  43.         }
  44.         document.getElementsByTagName("textarea")[1].textContent += `Bought furniture: ${furniture.join(", ")}\n`;
  45.         document.getElementsByTagName("textarea")[1].textContent += `Total price: ${totalPrice.toFixed(2)}\n`;
  46.         document.getElementsByTagName("textarea")[1].textContent += `Average decoration factor: ${averageFactor/furniture.length}`;
  47.     }
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement