Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function solve() {
- let form = document.querySelector('form');
- let formButton = document.querySelector('form button');
- let sections = document.querySelectorAll('section');
- let total = 0;
- form.setAttribute('onsubmit', 'return false;');
- const regex = /[\d\.]+/gm;
- form.lastElementChild.addEventListener( "click", function (event) {
- let name = form.getElementsByTagName('input')[0].value.trim();
- let year = +form.getElementsByTagName('input')[1].value;
- let price = +form.getElementsByTagName('input')[2].value;
- if( name != '' && year > 0 && price > 0 ) {
- createBook(name, year, price);
- }
- });
- function remove(e) {
- e.target.parentNode.remove();
- }
- function totalProfit( price ) {
- total += +price;
- form.nextElementSibling.innerHTML = ` Total Store Profit: ${Number.parseFloat(total).toFixed(2)} BGN`;
- }
- function createBook( bookName, year, price ) {
- let section;
- let formatPrice = price;
- let divBook = document.createElement('div');
- divBook.className = 'book';
- let p = document.createElement('p');
- p.innerText = `${bookName} [${year}]`;
- let buttonBuy = document.createElement('button');
- let buttonMove = document.createElement('button');
- buttonMove.innerText = `Movie to old section`;
- divBook.appendChild( p );
- if( year > 2000 ) {
- section = sections[1];
- buttonBuy.innerText = `Buy it only for ${ Number.parseFloat(formatPrice).toFixed(2)} BGN`;
- divBook.appendChild( buttonBuy );
- divBook.appendChild( buttonMove );
- } else {
- section = sections[0];
- formatPrice *= .85;
- buttonBuy.innerText = `Buy it only for ${ Number.parseFloat(formatPrice).toFixed(2)} BGN`;
- divBook.appendChild( buttonBuy );
- }
- section.lastElementChild.appendChild( divBook );
- buttonBuy.addEventListener("click", buyBook );
- buttonMove.addEventListener("click", moveBook );
- }
- function buyBook(e) {
- totalProfit( e.target.innerText.match(regex)[0] );
- remove(e);
- }
- function moveBook(e) {
- let price = e.target.previousElementSibling.innerHTML.match(regex)[0] * 0.85;
- e.target.previousElementSibling.innerHTML = `Buy it only for ${ Number.parseFloat(price).toFixed(2)} BGN`;
- let divBook = e.target.parentNode;
- e.target.remove();
- sections[0].appendChild( divBook);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement