Advertisement
miroLLL

100/100 Solution

Feb 7th, 2019
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve() {
  2.     let totalProfit = 0;
  3.     let fansCount = 0;
  4.     let seatPlace = document.getElementsByClassName('seat');
  5.     for (let i = 0; i < seatPlace.length; i++) {
  6.         seatPlace[i].addEventListener('click', getSeat, true);
  7.     }
  8.  
  9.     let elToPrint = document.querySelector('#summary span').innerHTML;
  10.     let buttonSumarry = document.querySelector('#summary button').addEventListener('click', () => {
  11.         document.querySelector('#summary span').textContent = `${totalProfit} leva, ${fansCount} fans.`;
  12.     });
  13.  
  14.     function getSeat(e) {
  15.         let newProfit;
  16.         let fans;
  17.         let zones = ["A", "B", "C"];
  18.  
  19.         let obj = {
  20.             "Seat": e.target.textContent,
  21.             "sector": zones[e.target.parentNode.cellIndex],
  22.             "zone": e.target.parentNode.parentNode.parentNode.parentNode.parentNode.className
  23.         };
  24.  
  25.         let isAvailable = (e.target.style.backgroundColor === "rgb(255, 0, 0)" ? false : true);
  26.         if (isAvailable) {
  27.             e.target.style.backgroundColor = 'rgb(255,0,0)';
  28.             //e.path[5].className (levski litex vip)
  29.             //e.path[1].cellIndex (0 = A , 1 = B , 2 = C)
  30.             //e.target.innerText ( 1 2 3 4 5)
  31.             //document.querySelector('#summary span').innerHTML (0 leva, 0 fans)
  32.  
  33.  
  34.            
  35.             fansCount++;
  36.             if (obj.zone == "Levski" || obj.zone == "Litex") {
  37.                 switch (obj.sector) {
  38.                     case "A":
  39.                         newProfit = 10;
  40.                         totalProfit += newProfit;
  41.                         break;
  42.                     case "B":
  43.                         newProfit = 7;
  44.                         totalProfit += newProfit;
  45.                         break;
  46.                     case "C":
  47.                         newProfit = 5;
  48.                         totalProfit += newProfit;
  49.                         break;
  50.                 }
  51.             } else {
  52.                 switch (obj.sector) {
  53.                     case "A":
  54.                         newProfit = 25;
  55.                         totalProfit += newProfit;
  56.                         break;
  57.                     case "B":
  58.                         newProfit = 15;
  59.                         totalProfit += newProfit;
  60.                         break;
  61.                     case "C":
  62.                         newProfit = 10;
  63.                         totalProfit += newProfit;
  64.                         break;
  65.                 }
  66.             }
  67.             document.getElementById('output').innerHTML += ` Seat ${obj.Seat} in zone ${obj.zone} sector ${obj.sector} was taken.\n`
  68.         }
  69.         else {
  70.             document.getElementById('output').innerHTML += ` Seat ${obj.Seat} in zone ${obj.zone} sector ${obj.sector} is unavailable.\n`;
  71.         }
  72.     }
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement