/////////////////////////////////////////////////////////////////////////////// /* * Valori di stati possibili: * - initial * - categories * - products * - oneProduct */ var state = "initial"; var animating = false; var screenHeight = 0; var screenWidth = 0; var screenOrientation = "portrait"; /* puo' essere portrait o landscape */ var screenLayout = "littlePhone"; /* puo' essere littlePhone, tablet o fullHD */ var levelStartOffset = 150; var oneProductStartOffset = 0; var menuButtonHeight = 140; var levelCloseTime = 400; var listElementImageWidth = 100; /* larghezza immagine degli elementi lista */ var listElementImageHeight = 100; /* altezza immagine degli elementi lista */ var oneProductImageWidth = 200; /* larghezza immagine del livello dettagli prodotto */ var oneProductImageHeight = 200; /* altezza immagine del livello dettagli prodotto */ var oneProductCarouselHeight = 250; /* altezza delle immagini del carosello */ var animationButtonHeight = 20; /* Altezza di apertura/chiusura dei bottoni mentre sono in animazione */ var selectedAnimationButtonHeight = 10; /* altezza di chiusura di un bottone dallo stato selezionato */ var selectedButtonHeight = 50; /* Altezza di un bottone selezionato */ var selectedTextTopMargin = 25; /* Margine superiore della scelta una volta che il bottone e' selezionato */ var blankListElementHeight = 70; /* Altezza elemento trasparente aggiunto alla fine dei livelli con liste (al momento ininfluente) */ var lastChosenFamilyId = -1; var lastChosenCategoryId = -1; var lastChosenProductId = -1; /* non usato al momento */ var lastC = -1; var lastQST = -1; var lastX = -1; var lastS = -1; var lastBP = -1; var timezones = null; var wp = false; /////////////////////////////////////////////////////////////////////////////// function setDimensionsForWindowSize(fromLogin) { fromLogin = fromLogin === "true"; screenHeight = $(window).height(); screenWidth = $(window).width(); if (screenHeight < screenWidth) { screenOrientation = "landscape"; } else { screenOrientation = "portrait"; } var oldLayout = screenLayout; if (screenWidth < 600) { screenLayout = "littlePhone"; } else /*if (screenWidth < 900)*/ { screenLayout = "tablet"; } /*else { screenLayout = "fullHD"; }*/ if (window.location.search.indexOf("winphone") !== -1) { if (document.getElementById("ordersContainer")) { var tempOffset = $("body").scrollTop() ? $("body").scrollTop() : window.pageYOffset + 60; if ($(document).height() < $(window).height()) { $("#lowerMenu").css("top", $(window).height() - $("#lowerMenu").height() + 60); } else { $("#lowerMenu").css("top", tempOffset + $(window).height() - $("#lowerMenu").height()); } $(window).scroll(function () { var offset = $("body").scrollTop() ? $("body").scrollTop() : window.pageYOffset + 60; if ($(document).height() < $(window).height()) { $("#lowerMenu").css("top", $(window).height() - $("#lowerMenu").height() + 60); } else { $("#lowerMenu").css("top", offset + $(window).height() - $("#lowerMenu").height()); } }); } wp = true; } if (screenLayout === oldLayout && !fromLogin) { if (document.getElementById("ordersContainer")) { } else { redrawAfterNewSize(false); } return; } switch(screenLayout) { case "littlePhone": { if (wp) { document.getElementById("styleToChange").href = "wp/css/phone.css"; } else { document.getElementById("styleToChange").href = "css/phone.css"; } if (document.getElementById("logoImg")) { document.getElementById("logoImg").src = "img/bam_logo_white_little.png"; } levelStartOffset = 150; oneProductStartOffset = 0; menuButtonHeight = 140; listElementImageWidth = 100; listElementImageHeight = 100; oneProductImageWidth = 200; oneProductImageHeight = 200; oneProductCarouselHeight = 250; animationButtonHeight = 20; selectedAnimationButtonHeight = 10; selectedButtonHeight = 50; selectedTextTopMargin = 25; blankListElementHeight = 70; orderMainButtonHeight = 150; detailsOrderHeight = 850; detailsOrderHeightWithCapacity = 1500; break; } case "tablet": { if (wp) { document.getElementById("styleToChange").href = "wp/css/tablet.css"; } else { document.getElementById("styleToChange").href = "css/tablet.css"; } if (document.getElementById("logoImg")) { document.getElementById("logoImg").src = "img/bam_logo_white.png"; } levelStartOffset = 250; oneProductStartOffset = 0; menuButtonHeight = 240; listElementImageWidth = 200; listElementImageHeight = 200; oneProductImageWidth = 300; oneProductImageHeight = 300; oneProductCarouselHeight = 300; animationButtonHeight = 20; selectedAnimationButtonHeight = 20; selectedButtonHeight = 100; selectedTextTopMargin = 50; blankListElementHeight = 140; orderMainButtonHeight = 240; detailsOrderHeight = 1400; detailsOrderHeightWithCapacity = 1800; break; } case "fullHD": { break; } } if (!fromLogin) { if (document.getElementById("ordersContainer")) { redrawOrderPageAfterResize(); } else { redrawAfterNewSize(true); } } } /////////////////////////////////////////////////////////////////////////////// /* todo: se passo da landscape a portrait le scritte degli elementi selezionati devono essere tagliate di nuovo */ function redrawAfterNewSize(needToReloadImages) { var divsToRedraw = ["familiesList","categoriesList","productsList"]; for (var d = 0; d < divsToRedraw.length; d++) { if (!document.getElementById(divsToRedraw[d])) { continue; } for (var i = 0; i < document.getElementById(divsToRedraw[d]).children.length; i++) { var button = $(document.getElementById(divsToRedraw[d]).children[i]); if (button.attr("chosen") === "true") { /* Bottone selezionato */ button.css("height", selectedButtonHeight); if (button.children()[0]) { var img = $(button.children()[0]); img.css("top",((menuButtonHeight - listElementImageHeight) / 2)); if (d !== 0 && needToReloadImages) { var imgSource = (button.attr("image").indexOf("unknown") === -1 ? ("get_image.php?image=" + button.attr("image") + "&width="+ listElementImageWidth +"&height="+ listElementImageHeight) : "img/" + "unknown" + listElementImageWidth + ".gif"); img.attr("src", imgSource); } } if (button.children()[1]) { var p = $(button.children()[1]); p.css("top", selectedTextTopMargin); p.attr("oldLeft", (listElementImageWidth + (($(document).width() / 100) * parseInt(button.children()[0].style.left)) + 20)); p.attr("oldTop", ((menuButtonHeight - p.height()) / 2)); } var selectedTextCutPerc = 0.7; if ($(button.children()[1]).height() > $("#elementSizeTest").height() + 10 || $(button.children()[1]).width() > $(window).width()*selectedTextCutPerc) { var tempInnerHTML = button.children()[1].innerHTML; var exit = true; while (exit) { exit = tempInnerHTML.lastIndexOf(" ") !== -1; if (!exit) { break; } tempInnerHTML = tempInnerHTML.substring(0, tempInnerHTML.lastIndexOf(" ")); button.children()[1].innerHTML = tempInnerHTML + "..."; if ($(button.children()[1]).height() <= $("#elementSizeTest").height() + 10 && $(button.children()[1]).width() < $(window).width()*selectedTextCutPerc) { break; } } } } else if (button.height() < 100) { //bottone chiuso button.css("height", animationButtonHeight); var listNumber = button.attr("listNumber") ? parseInt(button.attr("listNumber")) : i; button.css("top", ((menuButtonHeight * listNumber) + (5 * listNumber) + levelStartOffset)); if (button.children()[0]) { var img = $(button.children()[0]); img.css("top",((menuButtonHeight - listElementImageHeight) / 2)); if (d !== 0 && needToReloadImages) { var imgSource = (button.attr("image").indexOf("unknown") === -1 ? ("get_image.php?image=" + button.attr("image") + "&width="+ listElementImageWidth +"&height="+ listElementImageHeight) : "img/" + "unknown" + listElementImageWidth + ".gif"); img.attr("src", imgSource); } } if (button.children()[1]) { var p = $(button.children()[1]); p.css("left",(listElementImageWidth + (($(document).width() / 100) * parseInt(button.children()[0].style.left)) + 20)); } } else { //bottone aperto button.css("height", menuButtonHeight); var listNumber = button.attr("listNumber") ? parseInt(button.attr("listNumber")) : i; button.css("top", ((menuButtonHeight * listNumber) + (5 * listNumber) + levelStartOffset)); if (button.children()[0]) { var img = $(button.children()[0]); img.css("top",((menuButtonHeight - listElementImageHeight) / 2)); if (d !== 0 && needToReloadImages) { var imgSource = (button.attr("image").indexOf("unknown") === -1 ? ("get_image.php?image=" + button.attr("image") + "&width="+ listElementImageWidth +"&height="+ listElementImageHeight) : "img/" + "unknown" + listElementImageWidth + ".gif"); img.attr("src", imgSource); } } if (button.children()[1]) { var p = $(button.children()[1]); p.css("top",((menuButtonHeight - p.height()) / 2)); p.css("left",(listElementImageWidth + (($(document).width() / 100) * parseInt(button.children()[0].style.left)) + 20)); } } if (button.children().length === 0) { button.css("height",blankListElementHeight); button.css("top", ((menuButtonHeight * i) + (5 * i) + levelStartOffset)); } } } /* SE E' VISIBILE LA PAGINA DEI DETTAGLI FARE IL RESIZE */ if (state === "oneProduct") { var details = document.getElementById("details"); if (details) { details.style.width = $(document).width(); var rangeDesc = document.getElementsByClassName('rangeDesc')[0]; if (screenOrientation === "portrait") { rangeDesc.style.width = ($(document).width() - 20 - 25) + "px"; rangeDesc.style.marginTop = "10px"; } else { rangeDesc.style.width = $(document).width() - oneProductImageWidth - 50 - 25 - 25; } } } } /////////////////////////////////////////////////////////////////////////////// /*TRANSIZIONI DI ANDATA*/ function fromInitialToCategories(familyId) { openVeil(); //replaceOrdersButton(); if ($("body").scrollTop() > 0) { $("body").animate({scrollTop: 0}, 200, function() { if (lastChosenFamilyId === familyId) { closeLevel(0); window.setTimeout(function() { openLevel(1); openLevel(1); closeVeil(); state = "categories"; $('#initial').css("z-index", 0); $('#categories').css("z-index", 2); }, levelCloseTime); } else { loadCategories(familyId); } }); } else { if (lastChosenFamilyId === familyId) { closeLevel(0); window.setTimeout(function() { openLevel(1); closeVeil(); state = "categories"; $('#initial').css("z-index", 0); $('#categories').css("z-index", 2); }, levelCloseTime); } else { loadCategories(familyId); } } } /////////////////////////////////////////////////////////////////////////////// function fromCategoriesToProducts(categoryId) { openVeil(); if ($("body").scrollTop() > 0) { $("body").animate({scrollTop: 0}, 200, function() { if (lastChosenCategoryId === categoryId) { closeLevel(1); window.setTimeout(function() { openLevel(2); closeVeil(); state = "products"; $('#categories').css("z-index", 0); $('#products').css("z-index", 2); }, levelCloseTime); } else { loadProducts(categoryId); } }); } else { if (lastChosenCategoryId === categoryId) { closeLevel(1); window.setTimeout(function() { openLevel(2); closeVeil(); state = "products"; $('#categories').css("z-index", 0); $('#products').css("z-index", 2); }, levelCloseTime); } else { loadProducts(categoryId); } } } /////////////////////////////////////////////////////////////////////////////// function fromProductsToOneProduct(product) { openVeil(); //lastChosenProductId = product; if ($("body").scrollTop() > 0) { $("body").animate({scrollTop: 0}, 200, function() { loadModels(product); }); } else { loadModels(product); } } /////////////////////////////////////////////////////////////////////////////// /*TRANSIZIONI DI RITORNO*/ function fromCategoriesToInitial() { closeLevel(3); closeLevel(2); closeLevel(1); window.setTimeout(function() { openLevel(0); //showOrdersButton(); closeVeil(); state = "initial"; $('#categories').css("z-index", 0); $('#initial').css("z-index", 2); }, levelCloseTime); } /////////////////////////////////////////////////////////////////////////////// function fromProductsToCategories() { closeLevel(3); closeLevel(2); window.setTimeout(function() { openLevel(1); closeVeil(); state = "categories"; $('#products').css("z-index", 0); $('#categories').css("z-index", 2); }, levelCloseTime); } /////////////////////////////////////////////////////////////////////////////// function fromOneProductToProducts() { closeLevel(3); window.setTimeout(function() { openLevel(2); closeVeil(); state = "products"; $('#productDetails').css("z-index", 0); $('#products').css("z-index", 2); }, levelCloseTime); } /////////////////////////////////////////////////////////////////////////////// /*TRANSIZIONI DI SALTO*/ function fromProductsToInitial() { closeLevel(2); closeLevel(1,true); window.setTimeout(function() { openLevel(0); //showOrdersButton(); closeVeil(); state = "initial"; $('#products').css("z-index", 0); $('#categories').css("z-index", 0); $('#initial').css("z-index", 2); }, levelCloseTime); } /////////////////////////////////////////////////////////////////////////////// function fromOneProductToInitial() { closeLevel(3); closeLevel(2,true); closeLevel(1,true); window.setTimeout(function() { openLevel(0); //showOrdersButton(); closeVeil(); state = "initial"; $('#productDetails').css("z-index", 0); $('#products').css("z-index", 0); $('#categories').css("z-index", 0); $('#initial').css("z-index", 2); }, levelCloseTime); } /////////////////////////////////////////////////////////////////////////////// function fromOneProductToCategories() { closeLevel(3); closeLevel(2,true); window.setTimeout(function() { openLevel(1); closeVeil(); state = "categories"; $('#productDetails').css("z-index", 0); $('#products').css("z-index", 0); $('#categories').css("z-index", 2); }, levelCloseTime); } /////////////////////////////////////////////////////////////////////////////// /*FINE TRANSIZIONI DI RITORNO*/ function changeStateDispatcher(toState,eventuallySelected) { if ($("body").scrollTop() > 0) { $("body").animate({scrollTop: 0}, 200, function() { redirectFunction(toState,eventuallySelected); }); } else { redirectFunction(toState,eventuallySelected); } } /////////////////////////////////////////////////////////////////////////////// function redirectFunction(toState,eventuallySelected) { switch(toState) { case "initial": { switch(state) { case "categories": { fromCategoriesToInitial(); break; } case "products": { fromProductsToInitial(); break; } case "oneProduct": { fromOneProductToInitial(); break; } } break; } case "categories": { switch(state) { case "initial": { fromInitialToCategories(eventuallySelected);//never called break; } case "products": { fromProductsToCategories(); break; } case "oneProduct": { fromOneProductToCategories(); break; } } break; } case "products": { switch(state) { case "initial": { fromInitialToProducts(eventuallySelected);//TODO break; } case "categories": { fromCategoriesToProducts(eventuallySelected);//never called break; } case "oneProduct": { fromOneProductToProducts(); break; } } break; } } } /////////////////////////////////////////////////////////////////////////////// function populateFamiliesLevel(list) { var parent = document.getElementById("familiesList"); parent.innerHTML = ""; var openingButtonHeight = 20; for (var i = 0; i < list.length; i++) { var family = list[i]; var div = document.createElement('div'); div.setAttribute("family", family.id); div.setAttribute("listNumber", i); div.id = "fam" + i; div.description = family.description; div.style.position = "absolute"; div.style.left = '0px'; div.style.top = ((menuButtonHeight * i) + (5 * i) + levelStartOffset) + 'px'; div.style.height = openingButtonHeight + 'px'; div.style.width = '0px'; if (i === list.length - 1) { var blankDiv = document.createElement('div'); blankDiv.style.height = blankListElementHeight + "px"; blankDiv.style.width = "100%"; blankDiv.style.position = "absolute"; blankDiv.style.top = (parseInt(div.style.top) + menuButtonHeight - 60) + 'px'; blankDiv.style.left = "0px"; } div.className = "listElement"; div.onclick = function() { if (animating) { return; } animating = true; if (state !== "initial") { changeStateDispatcher("initial"); return; } this.setAttribute("chosen", "true"); //se scelgo ll famiglia "Lift" allora non mostro il bottone per il calcolo //alert(this.description); if(this.description == "Lift Tables" || this.description == "Forks" || this.description == "Accessories and Options"){ mostraBtnResidualCalculaton = false; } else{ mostraBtnResidualCalculaton = true; } fromInitialToCategories(this.getAttribute('family')); }; var img = document.createElement('img'); img.id = "fam"+i+"Img"; img.src = "img/families/" + family.image.replace(".jpg",".png"); img.style.margin = '0px'; img.style.position = "absolute"; img.style.left = '10%'; img.style.top = ((menuButtonHeight - listElementImageHeight) / 2) + 'px'; img.className = "toFade"; div.appendChild(img); var p = document.createElement('p'); p.id = "fam"+i+"p"; p.innerHTML = family.description; p.style.left = (listElementImageWidth + (($(document).width() / 100) * parseInt(img.style.left)) + 20) + 'px'; p.style.display = 'none'; div.appendChild(p); var changeButton = document.createElement('div'); changeButton.className = "changeButton toFade"; changeButton.innerHTML = "CHANGE"; changeButton.style.opacity = 0; div.appendChild(changeButton); var desc = document.createElement('div'); desc.className = "toFade groupDesc"; desc.innerHTML = "Family"; desc.style.opacity = 0; div.appendChild(desc); parent.appendChild(div); if (blankDiv) { parent.appendChild(blankDiv); } } openLevel(0); closeVeil(); } /////////////////////////////////////////////////////////////////////////////// function populateCategoriesLevel(list) { var parent = document.getElementById("categoriesList"); parent.innerHTML = ""; var openingButtonHeight = 20; for (var i = 0; i < list.length; i++) { var category = list[i]; var div = document.createElement('div'); div.setAttribute("category", category.id); div.setAttribute("listNumber", i); div.setAttribute("image", category.image ? category.image : "unknown" + listElementImageWidth + ".gif"); div.style.position = "absolute"; div.style.left = '0px'; div.style.top = ((menuButtonHeight * i) + (5 * i) + levelStartOffset) + 'px'; div.style.height = openingButtonHeight + 'px'; div.style.width = '0px'; div.className = "listElement"; if (i === list.length - 1) { var blankDiv = document.createElement('div'); blankDiv.style.height = blankListElementHeight + "px"; blankDiv.style.width = "100%"; blankDiv.style.position = "absolute"; blankDiv.style.top = (parseInt(div.style.top) + menuButtonHeight - 60) + 'px'; blankDiv.style.left = "0px"; } div.onclick = function(event) { if (animating) { return; } animating = true; event = event || window.event; event.preventDefault(); if (state !== "categories") { changeStateDispatcher("categories"); return; } this.setAttribute("chosen", "true"); fromCategoriesToProducts(this.getAttribute('category')); }; var img = document.createElement('img'); //var imgSource = (category.image ? ("get_image.php?image=" + category.image + "&width="+ listElementImageWidth +"&height="+ listElementImageHeight) : "img/" + "unknown" + listElementImageWidth + ".gif"); var imgSource = (category.image ? ("imgsize.php?img=../admin/uploads/" + category.image + "&w="+ listElementImageWidth +"&h1="+ listElementImageHeight) : "img/" + "unknown" + listElementImageWidth + ".gif"); img.src = imgSource; img.style.position = "absolute"; img.style.top = ((menuButtonHeight - listElementImageHeight) / 2) + 'px'; img.style.left = '10%'; img.className = "toFade"; div.appendChild(img); var p = document.createElement('p'); p.style.left = (listElementImageWidth + (($(document).width() / 100) * parseInt(img.style.left)) + 20) + 'px'; p.innerHTML = category.description; div.appendChild(p); var changeButton = document.createElement('div'); changeButton.className = "changeButton toFade"; changeButton.innerHTML = "CHANGE"; changeButton.style.opacity = 0; div.appendChild(changeButton); var desc = document.createElement('div'); desc.className = "toFade groupDesc"; desc.innerHTML = "Category"; desc.style.opacity = 0; div.appendChild(desc); parent.appendChild(div); if (blankDiv) { parent.appendChild(blankDiv); } } closeLevel(0); window.setTimeout(function() { openLevel(1); closeVeil(); state = "categories"; $('#initial').css("z-index", 0); $('#categories').css("z-index", 2); getTimezones(); }, levelCloseTime); } /////////////////////////////////////////////////////////////////////////////// function populateProductsLevel(list) { var parent = document.getElementById("productsList"); parent.innerHTML = ""; var openingButtonHeight = 20; for (var i = 0; i < list.length; i++) { var product = list[i]; //nasconde il pulsante switch(product.id) { case "27": mostraBtnResidualCalculaton = false; break; case "197": case "198": case "209": case "210": case "211": case "212": case "213": case "214": case "215": case "216": mostraBtnResidualCalculaton = false; break; case "39": case "40": case "41": mostraBtnResidualCalculaton = false; break; case "30": case "31": mostraBtnResidualCalculaton = false; break; case "32": case "33": mostraBtnResidualCalculaton = false; break; case "43": mostraBtnResidualCalculaton = false; break; case "205": case "207": case "208": mostraBtnResidualCalculaton = false; break; case "199": case "200": mostraBtnResidualCalculaton = false; break; } var div = document.createElement('div'); div.setAttribute("product", product.id); div.setAttribute("listNumber", i); div.setAttribute("image", product.image ? product.image : "unknown" + listElementImageWidth + ".gif"); div.style.position = "absolute"; div.style.left = '0px'; div.style.top = ((menuButtonHeight * i) + (5 * i) + levelStartOffset) + 'px'; div.style.height = openingButtonHeight + 'px'; div.style.width = '0px'; div.className = "listElement"; if (i === list.length - 1) { var blankDiv = document.createElement('div'); blankDiv.style.height = blankListElementHeight + "px"; blankDiv.style.width = "100%"; blankDiv.style.position = "absolute"; blankDiv.style.top = (parseInt(div.style.top) + menuButtonHeight - 60) + 'px'; blankDiv.style.left = "0px"; } div.onclick = function(event) { if (animating) { return; } animating = true; event = event || window.event; event.preventDefault(); if (state !== "products") { changeStateDispatcher("products"); return; } this.setAttribute("chosen", "true"); fromProductsToOneProduct(this.getAttribute('product')); }; var img = document.createElement('img'); //var imgSource = (product.image ? ("get_image.php?image=" + product.image + "&width="+ listElementImageWidth +"&height="+ listElementImageHeight) : "img/" + "unknown" + listElementImageWidth + ".gif"); var imgSource = (product.image ? ("imgsize.php?img=../admin/uploads/" + product.image + "&w="+ listElementImageWidth +"&h1="+ listElementImageHeight) : "img/" + "unknown" + listElementImageWidth + ".gif"); img.src = imgSource; img.style.position = "absolute"; img.style.top = ((menuButtonHeight - listElementImageHeight) / 2) + 'px'; img.style.left = '10%'; img.className = "toFade"; div.appendChild(img); //var p = document.createElement('p'); //p.innerHTML = imgSource; //div.appendChild(p); var p = document.createElement('p'); p.style.left = (listElementImageWidth + (($(document).width() / 100) * parseInt(img.style.left)) + 20) + 'px'; p.innerHTML = product.name_uk; div.appendChild(p); var changeButton = document.createElement('div'); changeButton.className = "changeButton toFade"; changeButton.innerHTML = "CHANGE"; changeButton.style.opacity = 0; div.appendChild(changeButton); var desc = document.createElement('div'); desc.className = "toFade groupDesc"; desc.innerHTML = "Product"; desc.style.opacity = 0; div.appendChild(desc); parent.appendChild(div); if (blankDiv) { parent.appendChild(blankDiv); } } closeLevel(1); window.setTimeout(function() { openLevel(2); closeVeil(); state = "products"; $('#categories').css("z-index", 0); $('#products').css("z-index", 2); }, levelCloseTime); } /////////////////////////////////////////////////////////////////////////////// //funzione per mostrare il contenuto di una scheda prodotto function populateOneProductLevel(productId) { var product = null; for (var i = 0; i < lastProductsReceived.length; i++) { if (lastProductsReceived[i].id === productId) { product = lastProductsReceived[i]; break; } } if (product === null) { closeVeil(); return; } $('#detailsContainer').css("top", oneProductStartOffset); $('#detailsContainer').css("display", "none"); var baseDivName = "details"; var baseDiv = document.getElementById(baseDivName); baseDiv.style.width = $(document).width(); baseDiv.innerHTML = ""; var mainImg = document.createElement('img'); var imgSource = (product.image ? ("get_image.php?image=" + product.image + "&width="+ oneProductImageWidth +"&height="+ oneProductImageHeight) : "img/" + "unknown" + oneProductImageWidth + ".gif"); mainImg.src = imgSource; mainImg.className = "oneProductImage"; var rangeDesc1 = document.createElement('div'); if (screenOrientation === "portrait") { rangeDesc1.style.width = ($(document).width() - 20 - 25) + "px"; rangeDesc1.style.marginTop = "10px"; } else { rangeDesc1.style.width = $(document).width() - oneProductImageWidth - 50 - 25 - 25; } rangeDesc1.className = "rangeDesc"; var rangeDesc2 = document.createElement('div'); if (screenOrientation === "portrait") { rangeDesc2.style.width = ($(document).width() - 20 - 25) + "px"; rangeDesc2.style.marginTop = "10px"; } else { rangeDesc2.style.width = $(document).width() - oneProductImageWidth - 50 - 25 - 25; } rangeDesc2.className = "rangeDesc"; var range = document.createElement('p'); range.className = "oneProductRange"; range.innerHTML = "Range: " + product.range; if(product.range != ""){ rangeDesc1.appendChild(range); } //Plus var plusDesc = document.createElement('p'); plusDesc.className = "oneProductPlus"; plusDesc.innerHTML = "Plus:"; var ol = document.createElement('ol'); var phrases = product.plus_uk.split("."); for (var i = 0; i < phrases.length; i++) { if (!phrases[i]) { continue; } var li = document.createElement('li'); li.innerHTML = phrases[i]; ol.appendChild(li); } //aggiunge il Plus if(product.plus_uk != ""){ //if (phrases.length > 0) { rangeDesc1.appendChild(plusDesc); rangeDesc1.appendChild(ol); } //Notes var notesDesc = document.createElement('p'); notesDesc.className = "oneProductPlus"; notesDesc.innerHTML = "Notes:"; var olNotes = document.createElement('ol'); var phrasesNotes = product.notes_uk.split("."); for (var i = 0; i < phrasesNotes.length; i++) { if (!phrasesNotes[i]) { continue; } var liNotes = document.createElement('li'); liNotes.innerHTML = phrasesNotes[i]; olNotes.appendChild(liNotes); } //Options var optionsDesc = document.createElement('p'); optionsDesc.className = "oneProductPlus"; optionsDesc.innerHTML = "Options:"; var olOptions = document.createElement('ol'); var phrasesOptions = product.options_uk.split("."); for (var i = 0; i < phrasesOptions.length; i++) { if (!phrasesOptions[i]) { continue; } var liOptions = document.createElement('li'); liOptions.innerHTML = phrasesOptions[i]; olOptions.appendChild(liOptions); } //aggiunge le Notes if(product.notes_uk != ""){ //if (phrasesNotes.length > 0) { rangeDesc2.appendChild(notesDesc); rangeDesc2.appendChild(olNotes); } //aggiunge le Options //if (phrasesOptions.length > 0) { if(product.options_uk != ""){ rangeDesc2.appendChild(optionsDesc); rangeDesc2.appendChild(olOptions); } baseDiv.appendChild(mainImg); baseDiv.appendChild(rangeDesc1); if (!wp) { var owCarousel = document.createElement('div'); owCarousel.setAttribute("id", "owl-demo"); /*if (product.tech_image !== "") { var divCarousel = document.createElement('div'); divCarousel.className = "item"; var imgElement = document.createElement('img'); imgElement.src = "get_image.php?image=" + product.tech_image + "&height="+ oneProductCarouselHeight; divCarousel.appendChild(imgElement); owCarousel.appendChild(divCarousel); }*/ if (product.application_1 !== "") { var divCarousel = document.createElement('div'); divCarousel.className = "item"; var imgElement = document.createElement('img'); imgElement.src = "get_image.php?image=" + product.application_1 + "&height="+ oneProductCarouselHeight; divCarousel.appendChild(imgElement); owCarousel.appendChild(divCarousel); } if (product.application_2 !== "") { var divCarousel = document.createElement('div'); divCarousel.className = "item"; var imgElement = document.createElement('img'); imgElement.src = "get_image.php?image=" + product.application_2 + "&height="+ oneProductCarouselHeight; divCarousel.appendChild(imgElement); owCarousel.appendChild(divCarousel); } if (product.application_3 !== "") { var divCarousel = document.createElement('div'); divCarousel.className = "item"; var imgElement = document.createElement('img'); imgElement.src = "get_image.php?image=" + product.application_3 + "&height="+ oneProductCarouselHeight; divCarousel.appendChild(imgElement); owCarousel.appendChild(divCarousel); } if (product.application_4 !== "") { var divCarousel = document.createElement('div'); divCarousel.className = "item"; var imgElement = document.createElement('img'); imgElement.src = "get_image.php?image=" + product.application_4 + "&height="+ oneProductCarouselHeight; divCarousel.appendChild(imgElement); owCarousel.appendChild(divCarousel); } if (product.application_5 !== "") { var divCarousel = document.createElement('div'); divCarousel.className = "item"; var imgElement = document.createElement('img'); imgElement.src = "get_image.php?image=" + product.application_5 + "&height="+ oneProductCarouselHeight; divCarousel.appendChild(imgElement); owCarousel.appendChild(divCarousel); } //aggiungo il tutto alla pagina if (owCarousel.childNodes.length > 0) { var owlContainer = document.createElement('div'); owlContainer.id = "owl-container"; owlContainer.appendChild(owCarousel); baseDiv.appendChild(owlContainer); } if (owCarousel.childNodes.length > 0) { $("#owl-demo").owlCarousel({ items: 4, itemsDesktop: [1199, 3], itemsDesktopSmall: [979, 2] }); } } baseDiv.appendChild(rangeDesc2); /* bottoni di calcolo e ordine */ var buttonsContainer = document.createElement("div"); buttonsContainer.className = "oneProductButtonsContainer"; //bottone residual capacity calculation var calc = document.createElement("div"); calc.innerHTML = "RESIDUAL CAPACITY CALCULATION"; calc.className = "calcButton"; calc.onclick = function() { if ($("#capacityList").css("display") === "none") { document.getElementById("detailsContainer").style.height = parseInt($("#detailsContainer").css("height")) + (parseInt($("#capacityList").css("height")) + 100) + "px"; $("#capacityList").slideDown(600, function() { $("body").animate({scrollTop: $("#capacityList").offset().top}, 500); }); } else { $("#capacityList").slideUp(600, function() { document.getElementById("detailsContainer").style.height = parseInt($("#detailsContainer").css("height")) - parseInt($("#capacityList").css("height")) + "px"; }); $("body").animate({scrollTop: $("#detailsContainer").offset().top + parseInt($("#productDetails").css("top"))}, 500); } }; if(mostraBtnResidualCalculaton){ buttonsContainer.appendChild(calc); } //request a quote var order = document.createElement("div"); order.innerHTML = "REQUEST A QUOTE"; order.className = "oneProductOrderButton"; order.onclick = function() { if ($("#orderContainer").css("display") === "none") { document.getElementById("detailsContainer").style.height = parseInt($("#detailsContainer").css("height")) + parseInt($("#orderContainer").css("height")) + "px"; $("#orderContainer").slideDown(600, function() { $("body").animate({scrollTop: parseInt($("#orderContainer").offset().top)}, 500); }); } else { $("#orderContainer").slideUp(600, function() { document.getElementById("detailsContainer").style.height = parseInt($("#detailsContainer").css("height")) - parseInt($("#orderContainer").css("height")) + "px"; }); $("body").animate({scrollTop: $("#detailsContainer").offset().top + parseInt($("#productDetails").css("top"))}, 500); } }; buttonsContainer.appendChild(order); //bottone per il download della brochure if(product.bruchure_uk != ""){ var brochureBtn = document.createElement("div"); brochureBtn.innerHTML = "DOWNLOAD BROCHURE"; brochureBtn.className = "brochureButton"; brochureBtn.onclick = function() { window.open("../admin/uploads/" + product.bruchure_uk); }; buttonsContainer.appendChild(brochureBtn); } baseDiv.appendChild(buttonsContainer); /* FORM PER IL CALCOLO DELLA PORTATA */ var capacityFormContainer = document.createElement("ul"); capacityFormContainer.id = "capacityList"; capacityFormContainer.className = "calcList centered"; for (var i = 0; i < calcDivisionList.length; i++) { var contents = calcDivisionList[i]; var divColumn = document.createElement("li"); var title = document.createElement("p"); title.className = "calcFormTitle"; title.innerHTML = contents.title; divColumn.appendChild(title); var inputs = document.createElement("div"); for (var t = 0; t < contents.inputList.length; t++) { var singleInput = contents.inputList[t]; var inputContainer = document.createElement("div"); var label = document.createElement("p"); label.className = "calcInputDescription"; label.innerHTML = singleInput[0]; //inputs.appendChild(label); inputContainer.appendChild(label); if (singleInput[0] === "MODEL") { //Scelta multipla dei modelli var select = document.createElement("select"); select.id = "modelsSelect"; for (var s = 0; s < lastModelsList.length; s++) { var oneModel = lastModelsList[s]; var model = document.createElement("option"); model.innerHTML = oneModel.code_model; model.value = oneModel.id; model.setAttribute("W", ((oneModel.W == null) ? "" : oneModel.W)); model.setAttribute("HCG", ((oneModel.HCG == null) ? "" : oneModel.HCG)); model.setAttribute("LL", ((oneModel.LL == null) ? "" : oneModel.LL)); select.appendChild(model); } select.onchange = function() { var selection = $("#" + this.id + " option:selected")[0]; document.getElementById("W").value = selection.getAttribute("w"); document.getElementById("HCG").value = selection.getAttribute("hcg"); document.getElementById("LL").value = selection.getAttribute("ll"); }; //inputs.appendChild(select); inputContainer.appendChild(select); } else if (singleInput[1] === "COMPUTE") { var calcButton = document.createElement("div"); calcButton.id = "calcButton"; calcButton.className = "styledButton"; calcButton.innerHTML = "CALCULATE"; //singleInput[1]; calcButton.onclick = function () { portataResiduaAjax($("#QST").val(), $("#X").val(), $("#S").val(), $("#C").val(), $("#BP").val(), $("#W").val(), $("#HCG").val(), $("#LL").val()); //cambia il layout del box risultati $("#resultContainer").css("text-align", "center"); $("#resultContainer").css("background-color", "white"); $("#resultContainer").css("color", "red"); $("#resultContainer").fadeIn(); }; //inputs.appendChild(calcButton); inputContainer.appendChild(calcButton); var resultContainer = document.createElement("div"); resultContainer.id = "resultContainer"; resultContainer.style.width = "100%"; resultContainer.style.display = "none"; var resultDescription = document.createElement("p"); resultDescription.id = "resultDescription"; resultDescription.innerHTML = singleInput[2]; resultContainer.appendChild(resultDescription); var result = document.createElement("p"); result.id = "result"; resultContainer.appendChild(result); //inputs.appendChild(resultContainer); inputContainer.appendChild(resultContainer); } else { var input = document.createElement("input"); input.id = singleInput[1]; input.type = "text"; //wp ? "text" : "number"; //inputs.appendChild(input); inputContainer.appendChild(input); var unitMeasure = document.createElement("label"); unitMeasure.for = singleInput[1]; unitMeasure.innerHTML = singleInput[2]; //inputs.appendChild(unitMeasure); inputContainer.appendChild(unitMeasure); } inputs.appendChild(inputContainer); } divColumn.appendChild(inputs); capacityFormContainer.appendChild(divColumn); } capacityFormContainer.style.display = "none"; baseDiv.appendChild(capacityFormContainer); window.setTimeout(function() { var tempSelect = $("#modelsSelect"); if (tempSelect && tempSelect.val()) { document.getElementById("W").value = $("#modelsSelect option:selected")[0].getAttribute("w"); document.getElementById("HCG").value = $("#modelsSelect option:selected")[0].getAttribute("hcg"); document.getElementById("LL").value = $("#modelsSelect option:selected")[0].getAttribute("ll"); } }, 1000); /* INIZIO GESTIONE ORDINE */ var orderContainer = document.createElement("div"); orderContainer.id = "orderContainer"; orderContainer.style.display = "none"; var validOrderFamily = false; var orderTemplate = null; //alert(lastChosenFamilyId); switch(parseInt(lastChosenFamilyId)) { case 2: { validOrderFamily = true; orderTemplate = paperRollClampsOrder; break; } case 3: { validOrderFamily = true; orderTemplate = baleClampsOrder; break; } case 4: { validOrderFamily = true; orderTemplate = forkPositionersOrder; break; } case 5: { orderTemplate = multipalletHandlersOrder; validOrderFamily = true; break; } case 6: { orderTemplate = palletForkClampsOrder; validOrderFamily = true; break; } case 7: { orderTemplate = cartonClampsOrder; validOrderFamily = true; break; } case 14: { orderTemplate = liftTablesOrder; validOrderFamily = true; break; } default: { orderTemplate = generalModuleOrder; validOrderFamily = true; break; } } if (validOrderFamily === true) { var orderInfoTitle = document.createElement("p"); orderInfoTitle.innerHTML = "REQUEST INFO"; orderInfoTitle.className = "orderGlobalTitle"; orderContainer.appendChild(orderInfoTitle); var modelContainer = document.createElement("div"); modelContainer.className = "ordersInfoGroup"; var modelDesc = document.createElement("label"); modelDesc.innerHTML = "Model"; var modelSelect = document.createElement("select"); modelSelect.id = "ordersmodelsSelect"; modelDesc.setAttribute("for", "ordersmodelsSelect"); for (var s = 0; s < lastModelsList.length; s++) { var oneModel = lastModelsList[s]; var model = document.createElement("option"); model.innerHTML = oneModel.code_model; model.value = oneModel.id; model.setAttribute("W", oneModel.W); model.setAttribute("HCG", oneModel.HCG); model.setAttribute("LL", oneModel.LL); modelSelect.appendChild(model); } modelContainer.appendChild(modelDesc); modelContainer.appendChild(modelSelect); //orderContainer.appendChild(modelContainer); drawOrder(orderContainer, orderTemplate); switch(parseInt(lastChosenFamilyId)) { case 14: { break; } default: { drawForkliftInfoFields(orderContainer); break; } } drawClientInfoFields(orderContainer); var boxContainer = document.createElement("div"); boxContainer.className = "ordersBoxContainer"; var inputBox = document.createElement("textarea"); inputBox.id = "notesArea"; inputBox.placeholder = "Notes here"; boxContainer.appendChild(inputBox); var sendOrder = document.createElement("div"); sendOrder.id = "sendOrderButton"; sendOrder.className = "styledButton"; sendOrder.innerHTML = "SEND REQUEST"; sendOrder.onclick = function() { if (composingOrSending === false) { composeObjectsAndSendOrder(); } }; boxContainer.appendChild(sendOrder); orderContainer.appendChild(boxContainer); } baseDiv.appendChild(orderContainer); closeLevel(2); window.setTimeout(function() { openLevel(3); closeVeil(); state = "oneProduct"; $('#products').css("z-index", 0); $('#productDetails').css("z-index", 2); }, levelCloseTime); } /////////////////////////////////////////////////////////////////////////////// var composingOrSending = false; /////////////////////////////////////////////////////////////////////////////// function composeObjectsAndSendOrder() { composingOrSending = true; var notExit = true; var labels = document.getElementsByTagName("label"); var load_type = ""; var i = 0; while(notExit) { var temp = document.getElementById("ordersload_type"+i); i++; if (temp) { if (temp.checked === true) { if (temp.className === "checkWithNote") { var notes = document.getElementsByClassName("orderNoteAfterCheck"); for (var q = 0; q < notes.length; q++) { if (notes[q].getAttribute("referredTo") === temp.id) { load_type += notes[q].value; break; } } load_type += "\n"; } else { for (var t = 0; t < labels.length; t++) { if (labels[t].getAttribute("for") === temp.id) { load_type += labels[t].innerHTML + "\n"; break; } } } } } else { notExit = false; } } var notExit = true; var load_distribution = ""; var i = 0; while(notExit) { var temp = document.getElementById("ordersload_distribution"+i); i++; if (temp) { if (temp.checked === true) { if (temp.className === "checkWithNote") { var notes = document.getElementsByClassName("orderNoteAfterCheck"); for (var q = 0; q < notes.length; q++) { if (notes[q].getAttribute("referredTo") === temp.id) { load_distribution += notes[q].value; break; } } load_distribution += "\n"; } else { for (var t = 0; t < labels.length; t++) { if (labels[t].getAttribute("for") === temp.id) { load_distribution += labels[t].innerHTML + "\n"; break; } } } } } else { notExit = false; } } var notExit = true; var power_pack = ""; var i = 0; while(notExit) { var temp = document.getElementById("orderspower_pack"+i); i++; if (temp) { if (temp.checked === true) { if (temp.className === "checkWithNote") { var notes = document.getElementsByClassName("orderNoteAfterCheck"); for (var q = 0; q < notes.length; q++) { if (notes[q].getAttribute("referredTo") === temp.id) { power_pack += notes[q].value; break; } } power_pack += "\n"; } else { for (var t = 0; t < labels.length; t++) { if (labels[t].getAttribute("for") === temp.id) { power_pack += labels[t].innerHTML + "\n"; break; } } } } } else { notExit = false; } } var notExit = true; var installation = ""; var i = 0; while(notExit) { var temp = document.getElementById("ordersinstallation"+i); i++; if (temp) { if (temp.checked === true) { if (temp.className === "checkWithNote") { var notes = document.getElementsByClassName("orderNoteAfterCheck"); for (var q = 0; q < notes.length; q++) { if (notes[q].getAttribute("referredTo") === temp.id) { installation += notes[q].value; break; } } installation += "\n"; } else { for (var t = 0; t < labels.length; t++) { if (labels[t].getAttribute("for") === temp.id) { installation += labels[t].innerHTML + "\n"; break; } } } } } else { notExit = false; } } i = 0; notExit = true; var kind_of_package = ""; while(notExit) { var temp = document.getElementById("orderskind_of_package"+i); i++; if (temp) { if (temp.checked === true) { if (temp.className === "checkWithNote") { var notes = document.getElementsByClassName("orderNoteAfterCheck"); for (var q = 0; q < notes.length; q++) { if (notes[q].getAttribute("referredTo") === temp.id) { kind_of_package += notes[q].value; break; } } kind_of_package += "\n"; } else { for (var t = 0; t < labels.length; t++) { if (labels[t].getAttribute("for") === temp.id) { kind_of_package += labels[t].innerHTML + "\n"; break; } } } } } else { notExit = false; } } var single_load_height_mm = null; if (document.getElementById("orderssingle_load_height_mm")) { single_load_height_mm = document.getElementById("orderssingle_load_height_mm").value; } if(single_load_height_mm != ""){ if(isNaN(single_load_height_mm)){ composingOrSending = false; alert("Missing or invalid value for field Load Height mm"); return; } } var single_load_length_mm = null; if (document.getElementById("orderssingle_load_length_mm")) { single_load_length_mm = document.getElementById("orderssingle_load_length_mm").value; } if(single_load_length_mm != ""){ if(isNaN(single_load_length_mm)){ composingOrSending = false; alert("Missing or invalid value for field Load Length mm"); return; } } var single_load_width_mm = null; if (document.getElementById("orderssingle_load_width_mm")) { single_load_width_mm = document.getElementById("orderssingle_load_width_mm").value; } if(single_load_width_mm != ""){ if(isNaN(single_load_width_mm)){ composingOrSending = false; alert("Missing or invalid value for field Load Width mm"); return; } } var single_load_weight_kg = null; if (document.getElementById("orderssingle_load_weight_kg")) { single_load_weight_kg = document.getElementById("orderssingle_load_weight_kg").value; } if(single_load_weight_kg != ""){ if(isNaN(single_load_weight_kg)){ composingOrSending = false; alert("Missing or invalid value for field Load Weight Kg"); return; } } var total_load_quantity = null; if (document.getElementById("orderstotal_load_quantity")) { total_load_quantity = document.getElementById("orderstotal_load_quantity").value; } if(total_load_quantity != ""){ if(isNaN(total_load_quantity)){ composingOrSending = false; alert("Missing or invalid or invalid value for field Total Load Quantity"); return; } } var total_load_position = $("#total_load_position") ? $("#total_load_position").val() : null; var total_load_length_mm = null; if (document.getElementById("orderstotal_load_length_mm")) { total_load_length_mm = document.getElementById("orderstotal_load_length_mm").value; } if(total_load_length_mm != ""){ if(isNaN(total_load_length_mm)){ composingOrSending = false; alert("Missing or invalid or invalid value for field Total Load Length mm"); return; } } var total_load_height_mm = null; if (document.getElementById("orderstotal_load_height_mm")) { total_load_height_mm = document.getElementById("orderstotal_load_height_mm").value; } if(total_load_height_mm != ""){ if(isNaN(total_load_height_mm)){ composingOrSending = false; alert("Missing or invalid or invalid value for field Total Load Height mm"); return; } } var total_load_width_mm = null; if (document.getElementById("orderstotal_load_width_mm")) { total_load_width_mm = document.getElementById("orderstotal_load_width_mm").value; } if(total_load_width_mm != ""){ if(isNaN(total_load_width_mm)){ composingOrSending = false; alert("Missing or invalid or invalid value for field Total Load Width mm"); return; } } var total_load_weight_kg = null; if (document.getElementById("orderstotal_load_weight_kg")) { total_load_weight_kg = document.getElementById("orderstotal_load_weight_kg").value; } if(total_load_weight_kg != ""){ if(isNaN(total_load_weight_kg)){ composingOrSending = false; alert("Missing or invalid or invalid value for field Total Load Weight Kg"); return; } } var shifts_per_day = $("#shifts_per_day") ? $("#shifts_per_day").val() : null; var condition_of_use = $("#condition_of_use") ? $("#condition_of_use").val() : null; var required_quantity = null; if (document.getElementById("ordersrequired_quantity")) { required_quantity = document.getElementById("ordersrequired_quantity").value; } if(required_quantity == ""){ composingOrSending = false; alert("Missing or invalid or invalid value for field Required Quantity"); return; } var pallet_height_mm = null; if (document.getElementById("orderspallet_height_mm")) { pallet_height_mm = document.getElementById("orderspallet_height_mm").value; } if(pallet_height_mm != ""){ if(isNaN(pallet_height_mm)){ composingOrSending = false; alert("Missing or invalid or invalid value for field Pallet Height mm"); return; } } var pallet_width_mm = null; if (document.getElementById("orderspallet_width_mm")) { pallet_width_mm = document.getElementById("orderspallet_width_mm").value; } if(pallet_width_mm != ""){ if(isNaN(pallet_width_mm)){ composingOrSending = false; alert("Missing or invalid or invalid value for field Pallet Width mm"); return; } } var pallet_length_mm = null; if (document.getElementById("orderspallet_length_mm")) { pallet_length_mm = document.getElementById("orderspallet_length_mm").value; } if(pallet_length_mm != ""){ if(isNaN(pallet_length_mm)){ composingOrSending = false; alert("Missing or invalid or invalid value for field Pallet Length mm"); return; } } var pallet_side_way_width_mm = null; if (document.getElementById("orderspallet_side_way_width_mm")) { pallet_side_way_width_mm = document.getElementById("orderspallet_side_way_width_mm").value; } if(pallet_side_way_width_mm != ""){ if(isNaN(pallet_side_way_width_mm)){ composingOrSending = false; alert("Missing or invalid value for field Pallet Height mm"); return; } } var pallet_way_width_mm = null; if (document.getElementById("orderspallet_way_width_mm")) { pallet_way_width_mm = document.getElementById("orderspallet_way_width_mm").value; } if(pallet_way_width_mm != ""){ if(isNaN(pallet_way_width_mm)){ composingOrSending = false; alert("Missing or invalid value for field Pallet Width mm"); return; } } var pallet_weight_kg = null; if (document.getElementById("orderspallet_weight_kg")) { pallet_weight_kg = document.getElementById("orderspallet_weight_kg").value; } if(pallet_weight_kg != ""){ if(isNaN(pallet_weight_kg)){ composingOrSending = false; alert("Missing or invalid value for field Pallet Weight Kg"); return; } } var pallet_lateral_feet_width_mm = null; if (document.getElementById("orderspallet_lateral_feet_width_mm")) { pallet_lateral_feet_width_mm = document.getElementById("orderspallet_lateral_feet_width_mm").value; } if(pallet_lateral_feet_width_mm != ""){ if(isNaN(pallet_lateral_feet_width_mm)){ composingOrSending = false; alert("Missing or invalid value for field Pallet Feet Width mm"); return; } } var pallet_central_feet_width_mm = null; if (document.getElementById("orderspallet_central_feet_width_mm")) { pallet_central_feet_width_mm = document.getElementById("orderspallet_central_feet_width_mm").value; } if(pallet_central_feet_width_mm != ""){ if(isNaN(pallet_central_feet_width_mm)){ composingOrSending = false; alert("Missing or invalid value for field Pallet Central Feet Width mm"); return; } } var pallet_way_height_mm = null; if (document.getElementById("orderspallet_way_height_mm")) { pallet_way_height_mm = document.getElementById("orderspallet_way_height_mm").value; } if(pallet_way_height_mm != ""){ if(isNaN(pallet_way_height_mm)){ composingOrSending = false; alert("Missing or invalid value for field Pallet Way Height mm"); return; } } var distance_between_pallets_mm = null; if (document.getElementById("ordersdistance_between_pallets_mm")) { distance_between_pallets_mm = document.getElementById("ordersdistance_between_pallets_mm").value; } if(distance_between_pallets_mm != ""){ if(isNaN(distance_between_pallets_mm)){ composingOrSending = false; alert("Missing or invalid value for field distance between Pallet mm"); return; } } var number_of_pallets_handled = ""; i = 0; notExit = true; while(notExit) { var temp = document.getElementById("ordersnumber_of_pallets_handled"+i); i++; if (temp) { if (temp.checked === true) { if (temp.className === "checkWithNote") { var notes = document.getElementsByClassName("orderNoteAfterCheck"); for (var q = 0; q < notes.length; q++) { if (notes[q].getAttribute("referredTo") === temp.id) { number_of_pallets_handled += notes[q].value; break; } } number_of_pallets_handled += "\n"; } else { for (var t = 0; t < labels.length; t++) { if (labels[t].getAttribute("for") === temp.id) { number_of_pallets_handled += labels[t].innerHTML + "\n"; break; } } } } } else { notExit = false; } } if (number_of_pallets_handled === "") { number_of_pallets_handled = null; } var fork_height_mm = null; if (document.getElementById("ordersfork_height_mm")) { fork_height_mm = document.getElementById("ordersfork_height_mm").value; } var fork_width_mm = null; if (document.getElementById("ordersfork_width_mm")) { fork_width_mm = document.getElementById("ordersfork_width_mm").value; } var required_fork_length_mm = null; if (document.getElementById("ordersrequired_fork_length_mm")) { required_fork_length_mm = document.getElementById("ordersrequired_fork_length_mm").value; } //capacity var capacity_kg = null; if (document.getElementById("orderscapacity_platform_kg")) { capacity_kg = document.getElementById("orderscapacity_platform_kg").value; } var capacity_a_mm = null; if (document.getElementById("orderscapacity_platform_a_mm")) { capacity_a_mm = document.getElementById("orderscapacity_platform_a_mm").value; } var capacity_b_mm = null; if (document.getElementById("orderscapacity_platform_b_mm")) { capacity_b_mm = document.getElementById("orderscapacity_platform_b_mm").value; } var capacity_height_mm = null; if (document.getElementById("orderscapacity_collapsed_height_h_mm")) { capacity_height_mm = document.getElementById("orderscapacity_collapsed_height_h_mm").value; } var capacity_stroke_mm = null; if (document.getElementById("orderscapacity_stroke_e_mm")) { capacity_stroke_mm = document.getElementById("orderscapacity_stroke_e_mm").value; } //operating var operating_v = null; if (document.getElementById("ordersoperating_voltage_v")) { operating_v = document.getElementById("ordersoperating_voltage_v").value; } var operating_hz = null; if (document.getElementById("ordersoperating_voltage_hz")) { operating_hz = document.getElementById("ordersoperating_voltage_hz").value; } var operating_ph = null; if (document.getElementById("ordersoperating_voltage_phase")) { operating_ph = document.getElementById("ordersoperating_voltage_phase").value; } var cycles_h = null; if (document.getElementById("orderscycles_hours")) { cycles_h = document.getElementById("orderscycles_hours").value; } var order_note = document.getElementById("notesArea").value; var details = new detailsToSendObject(load_type, kind_of_package, single_load_height_mm, lastChosenFamilyId == 2 ? single_load_width_mm : single_load_length_mm, single_load_width_mm, single_load_weight_kg, total_load_quantity, total_load_position, lastChosenFamilyId == 2 ? total_load_width_mm : total_load_length_mm, total_load_height_mm, total_load_width_mm, total_load_weight_kg, shifts_per_day, condition_of_use, required_quantity, order_note, pallet_height_mm, pallet_width_mm, pallet_length_mm, pallet_side_way_width_mm, pallet_way_width_mm, pallet_weight_kg, pallet_lateral_feet_width_mm, pallet_central_feet_width_mm, pallet_way_height_mm, distance_between_pallets_mm, number_of_pallets_handled, fork_height_mm, fork_width_mm, required_fork_length_mm, capacity_kg, capacity_a_mm, capacity_b_mm, capacity_height_mm, capacity_stroke_mm, operating_v, operating_hz, operating_ph, load_distribution, power_pack, installation, cycles_h ); var family_id = lastChosenFamilyId; var product_id = lastChosenProductId; var model_id = $("#ordersmodelsSelect").val(); var customer_country = document.getElementById("ordersclientState").value; var customer_name = document.getElementById("ordersclientName").value; var customer_phone = document.getElementById("ordersclientPhone").value; var customer_address = ""; //document.getElementById("ordersclientAddress").value; var customer_email = document.getElementById("ordersclientEmail").value; var customer_timezone = "Europe/Rome"; //timezones === null ? "Europe/Rome" : $("#ordersclientTimezone").val();; var customer_locale = "it-IT"; //$("#ordersclientLocale").val(); var customer_forklift_brand = null; if (document.getElementById("ordersforkBrand")) { customer_forklift_brand = document.getElementById("ordersforkBrand").value; } if(family_id != 14 && customer_forklift_brand == ""){ composingOrSending = false; alert("Missing or invalid value for field Forklift Brand"); return; } var customer_forklift_model = null; if (document.getElementById("ordersforkModel")) { customer_forklift_model = document.getElementById("ordersforkModel").value; } if(family_id != 14 && customer_forklift_model == ""){ composingOrSending = false; alert("Missing or invalid value for field Forklift Model"); return; } var customer_forklift_capacity_kg = null; if (document.getElementById("ordersforkBrand")) { customer_forklift_capacity_kg = document.getElementById("ordersforkCapacity").value; } if(family_id != 14 && customer_forklift_capacity_kg == ""){ composingOrSending = false; alert("Missing or invalid value for field Forklift Capacity Kg"); return; } var customer_forklift_plug_type = null; if (document.getElementById("ordersforkPlugType")) { customer_forklift_plug_type = document.getElementById("ordersforkPlugType").value; } if(family_id != 14 && customer_forklift_plug_type == ""){ composingOrSending = false; alert("Missing or invalid value for field Forklift Hooking Type"); return; } var order = new orderToSendObject( family_id, product_id, model_id, customer_country, customer_name, customer_phone, customer_address, customer_email, customer_timezone, customer_locale, customer_forklift_brand, customer_forklift_model, customer_forklift_capacity_kg, customer_forklift_plug_type); // console.log(details); // console.log(order); sendOrder(order, details); } /////////////////////////////////////////////////////////////////////////////// function composeObjectsAndSeachSparePart() { composingOrSending = true; var keywords = ""; if (document.getElementById("orderskeywords")) { keywords = document.getElementById("orderskeywords").value; } var mancode = ""; if (document.getElementById("ordersmancode")) { mancode = document.getElementById("ordersmancode").value; } sendSPSearch(keywords,mancode); } /////////////////////////////////////////////////////////////////////////////// function toFirstPositions() { var load = document.getElementById('loading'); load.style.position = 'absolute'; load.style.top = ($(window).height() - 32)/2; load.style.left = ($(window).width() - 32)/2; $('#initial').css("top", 0); $('#initial').css("left", 0); $('#initial').css("z-index", 2); $('#categories').css("left", 0); $('#categories').css("z-index", 0); $('#products').css("left", 0); $('#products').css("z-index", 0); $('#productDetails').css("left", 0); $('#productDetails').css("z-index", 0); $('#loadingVeil').css("z-index", -1); $("#backButton").css("left", -100); setDimensionsForWindowSize(false); if (wp) { var tempOffset = $("body").scrollTop() ? $("body").scrollTop() : window.pageYOffset + 60; if ($(document).height() < $(window).height()) { $("#lowerMenu").css("top", $(window).height() - $("#lowerMenu").height() + 60); } else { $("#lowerMenu").css("top", tempOffset + $(window).height() - $("#lowerMenu").height()); } $(window).scroll(function () { var offset = $("body").scrollTop() ? $("body").scrollTop() : window.pageYOffset + 60; if ($(document).height() < $(window).height()) { $("#lowerMenu").css("top", $(window).height() - $("#lowerMenu").height() + 60); } else { $("#lowerMenu").css("top", offset + $(window).height() - $("#lowerMenu").height()); } }); } $("#backButton").animate({ left: 0 }, 300); loadFamilies(); } /////////////////////////////////////////////////////////////////////////////// function openLevel(levelNumber) { var levelName = ""; var levelButtonHeight = 0; switch (levelNumber) { case 0: { levelName = "#familiesList"; levelButtonHeight = menuButtonHeight; $('#familyDesc').css("opacity",1); break; } case 1: { levelName = "#categoriesList"; levelButtonHeight = menuButtonHeight; $('#categoryDesc').css("opacity",1); break; } case 2: { levelName = "#productsList"; levelButtonHeight = menuButtonHeight; $('#productDesc').css("opacity",1); break; } case 3: { levelName = "#productDetails"; $('#detailsContainer').css("height", 'auto'); levelButtonHeight = $('#detailsContainer').height() + 30; } } var list = $(levelName).children(); for (var i = 0; i < list.length; i++) { if (list[i].getAttribute("chosen") === "true") { deselectButton($(list[i]), levelButtonHeight); list[i].setAttribute("chosen",""); } else { if (parseInt($(list[i]).css("top")) > $(window).height()) { openButtonWithoutAnimation($(list[i]), levelButtonHeight); } else { openButton($(list[i]), levelButtonHeight); } } } } /////////////////////////////////////////////////////////////////////////////// function closeLevel(levelNumber, closeFromSelected) { var levelName = ""; switch (levelNumber) { case 0: { levelName = "#familiesList"; $('#familyDesc').css("opacity",0); break; } case 1: { levelName = "#categoriesList"; $('#categoryDesc').css("opacity",0); break; } case 2: { levelName = "#productsList"; $('#productDesc').css("opacity",0); break; } case 3: { levelName = "#productDetails"; } } var list = $(levelName).children(); for (var i = 0; i < list.length; i++) { if (list[i].getAttribute("chosen") === "true") { if (closeFromSelected) { closeAndDeselectButton($(list[i]), selectedAnimationButtonHeight); } else { selectButton($(list[i])); } } else { if (parseInt($(list[i]).css("top")) > $(window).height()) { closeButtonWithoutAnimation($(list[i]), animationButtonHeight); } else { closeButton($(list[i]), animationButtonHeight); } } } } /////////////////////////////////////////////////////////////////////////////// function selectButton(buttonJQueryObj) { buttonJQueryObj.animate({ height: selectedButtonHeight + 'px', top: '0px' }, 400); $(buttonJQueryObj.children()[2]).css("opacity",1); $(buttonJQueryObj.children()[3]).css("opacity",1); $(buttonJQueryObj.children()[1]).attr("oldTop",$(buttonJQueryObj.children()[1]).css("top")); $(buttonJQueryObj.children()[1]).attr("oldLeft",$(buttonJQueryObj.children()[1]).css("left")); var nextLeft = $(buttonJQueryObj.children()[0]).css("left"); $(buttonJQueryObj.children()[0]).css("opacity",0); $(buttonJQueryObj.children()[1]).animate({ left: nextLeft, top: selectedTextTopMargin + "px" }, 100, function () { var selectedTextCutPerc = 0.7; if ($(buttonJQueryObj.children()[1]).height() > $("#elementSizeTest").height() + 10 || $(buttonJQueryObj.children()[1]).width() > $(window).width()*selectedTextCutPerc) { buttonJQueryObj.children()[1].setAttribute("fullText", buttonJQueryObj.children()[1].innerHTML); var tempInnerHTML = buttonJQueryObj.children()[1].innerHTML; var exit = true; while (exit) { exit = tempInnerHTML.lastIndexOf(" ") !== -1; if (!exit) { break; } tempInnerHTML = tempInnerHTML.substring(0, tempInnerHTML.lastIndexOf(" ")); buttonJQueryObj.children()[1].innerHTML = tempInnerHTML + "..."; if ($(buttonJQueryObj.children()[1]).height() <= $("#elementSizeTest").height() + 10 && $(buttonJQueryObj.children()[1]).width() < $(window).width()*selectedTextCutPerc) { break; } } } }); } /////////////////////////////////////////////////////////////////////////////// function deselectButton(buttonJQueryObj, buttonMaxHeight) { $(buttonJQueryObj.children()[2]).css("opacity",0); $(buttonJQueryObj.children()[3]).css("opacity",0); if (buttonJQueryObj.children()[1].getAttribute("fullText")) { buttonJQueryObj.children()[1].innerHTML = buttonJQueryObj.children()[1].getAttribute("fullText"); } for (var i = 0; i < buttonJQueryObj.children().length; i++) { var temp = buttonJQueryObj.children()[i]; if (temp.nodeName === "P") { $(temp).animate({ top: $(temp).attr("oldTop"), left: $(temp).attr("oldLeft") },100); } } var listNumber = parseInt(buttonJQueryObj.attr("listNumber")); buttonJQueryObj.animate({ top: ((buttonMaxHeight * listNumber) + (5 * listNumber) + levelStartOffset) + 'px', height: buttonMaxHeight },400); $(buttonJQueryObj.children()[0]).css("opacity",1); } /////////////////////////////////////////////////////////////////////////////// /* Tempo di apertura bottone 650ms */ function openButton(buttonJQueryObj, buttonMaxHeight) { if (buttonJQueryObj.height() === buttonMaxHeight) { return; } for (var i = 0; i < buttonJQueryObj.children().length; i++) { var temp = buttonJQueryObj.children()[i]; if (temp.nodeName === "P") { buttonJQueryObj.css("width", "100%"); temp.style.top = ((buttonMaxHeight - $(temp).height()) / 2) + 'px'; temp.style.display = ""; buttonJQueryObj.css("width", "0px"); } } buttonJQueryObj.css("height", "20px"); buttonJQueryObj.css("width", "0px"); if (buttonJQueryObj.css("display") === "none") { buttonJQueryObj.css("display", ""); } buttonJQueryObj.animate({ width: '100%' }, 350, function() { buttonJQueryObj.animate({ height: buttonMaxHeight }, 300); }); } /////////////////////////////////////////////////////////////////////////////// function openButtonWithoutAnimation(buttonJQueryObj, buttonMaxHeight) { if (buttonJQueryObj.height() === buttonMaxHeight) { return; } for (var i = 0; i < buttonJQueryObj.children().length; i++) { var temp = buttonJQueryObj.children()[i]; if (temp.nodeName === "P") { buttonJQueryObj.css("width", "100%"); temp.style.top = ((buttonMaxHeight - $(temp).height()) / 2) + 'px'; temp.style.display = ""; buttonJQueryObj.css("width", "0px"); } } buttonJQueryObj.css("height", buttonMaxHeight); buttonJQueryObj.css("width", "100%"); if (buttonJQueryObj.css("display") === "none") { buttonJQueryObj.css("display", ""); } } /////////////////////////////////////////////////////////////////////////////// /* Tempo di chiusura bottone 400ms */ function closeButton(buttonJQueryObj, buttonAnimationHeight) { if (buttonJQueryObj.width() === 0) { return; } buttonJQueryObj.animate({ height: buttonAnimationHeight }, 200, function() { buttonJQueryObj.animate({ width: '0px' }, 200); }); } /////////////////////////////////////////////////////////////////////////////// function closeAndDeselectButton(buttonJQueryObj, buttonAnimationHeight) { buttonJQueryObj.animate({ height: buttonAnimationHeight }, 200, function() { buttonJQueryObj.animate({ width: '0px' }, 200, function() { $(buttonJQueryObj.children()[2]).css("opacity",0); $(buttonJQueryObj.children()[3]).css("opacity",0); if (buttonJQueryObj.children()[1].getAttribute("fullText")) { buttonJQueryObj.children()[1].innerHTML = buttonJQueryObj.children()[1].getAttribute("fullText"); } for (var i = 0; i < buttonJQueryObj.children().length; i++) { var temp = buttonJQueryObj.children()[i]; if (temp.nodeName === "P") { $(temp).css("top", $(temp).attr("oldTop")); $(temp).css("left", $(temp).attr("oldLeft")); } } var listNumber = parseInt(buttonJQueryObj.attr("listNumber")); buttonJQueryObj.css("top",((menuButtonHeight * listNumber) + (5 * listNumber) + levelStartOffset) + 'px'); $(buttonJQueryObj.children()[0]).css("opacity",1); buttonJQueryObj.attr("chosen",""); //AGGIUNTO (sembra ok) }); }); } /////////////////////////////////////////////////////////////////////////////// function closeButtonWithoutAnimation(buttonJQueryObj, buttonAnimationHeight) { if (buttonJQueryObj.width() === 0) { return; } buttonJQueryObj.css("height", buttonAnimationHeight); buttonJQueryObj.css("width", "0px"); } /////////////////////////////////////////////////////////////////////////////// function back() { if (animating) { return; } switch (state) { case "initial": { closeLevel(0, false); toMainMenu(); return; } case "categories": { changeStateDispatcher("initial"); break; } case "products": { changeStateDispatcher("categories"); break; } case "oneProduct": { changeStateDispatcher("products"); break; } } } /////////////////////////////////////////////////////////////////////////////// function toMainMenu() { $("#backButton").animate({ left: -150 }, 300); window.setTimeout(function() { location.href = "index.php" + (wp ? "?dev=winphone" : ""); }, 400); } /////////////////////////////////////////////////////////////////////////////// var veilTimer = null; /////////////////////////////////////////////////////////////////////////////// function openVeil() { return; $('#loadingVeil').css("z-index", 4); $('#loadingVeil').css("opacity", 1); } /////////////////////////////////////////////////////////////////////////////// function closeVeil() { animating = false; return; if (veilTimer !== null) { window.clearTimeout(veilTimer); veilTimer = null; animating = false; return; } $('#loadingVeil').css("opacity", 0); window.setTimeout(function() { $('#loadingVeil').css("z-index", -1); animating = false; },200); } /////////////////////////////////////////////////////////////////////////////// function replaceOrdersButton() { $("#toOrders").animate({ left: -150 }, 300, function() { $("#backButton").animate({ left: 0 }, 300); }); } /////////////////////////////////////////////////////////////////////////////// function showOrdersButton() { $("#backButton").animate({ left: -150 }, 300, function() { $("#toOrders").animate({ left: 0 }, 300); }); } /////////////////////////////////////////////////////////////////////////////// function clearChosenFromButtons(levelId) { var childrenList = document.getElementById(levelId).children; for (var i = 0; i < childrenList.length; i++) { if (childrenList[i].getAttribute("chosen")) { childrenList[i].setAttribute("chosen",""); } } } /////////////////////////////////////////////////////////////////////////////// function backToCatalogue() { location.href = "index.php" + (wp ? "?dev=winphone" : ""); } /////////////////////////////////////////////////////////////////////////////// function toOrdersPage() { location.href = "show_orders.php" + (wp ? "?dev=winphone" : ""); } /////////////////////////////////////////////////////////////////////////////// function drawOrdersForUser() { var parent = document.getElementById("ordersContainer"); for (var i = 0; i < lastOrderList.length; i++) { var order = lastOrderList[i]; var orderDiv = document.createElement("div"); orderDiv.className = "orderPageOrder"; orderDiv.style.top = (orderMainButtonHeight * i + (5 * i) + levelStartOffset) + "px"; orderDiv.style.width = "0px"; orderDiv.style.height = animationButtonHeight; orderDiv.setAttribute("index", i); orderDiv.setAttribute("orderId", order.id); orderDiv.onclick = function(e) { if (e.target.tagName === "INPUT" || e.target.tagName === "input" || e.target.className.indexOf("orderPageCalcButton") !== -1 || e.target.className.indexOf("orderPageShowCalc") !== -1) { return; } showOrderDetails(this.getAttribute("index"), this); }; var prodInfoContainer = document.createElement("div"); prodInfoContainer.className = "orderPageProdInfoContainer"; var orderId = document.createElement("div"); orderId.style.width = "100%"; var idDesc = document.createElement("div"); idDesc.className = "orderPageFieldDesc"; idDesc.innerHTML = "Request id: "; var idValue = document.createElement("div"); idValue.className = "orderPageFieldValue"; idValue.innerHTML = order.id; orderId.appendChild(idDesc); orderId.appendChild(idValue); var famInfo = document.createElement("div"); famInfo.style.width = "100%"; famInfo.style.clear = "left"; var famDesc = document.createElement("div"); famDesc.className = "orderPageFieldDesc"; famDesc.innerHTML = "Family: "; var famValue = document.createElement("div"); famValue.id = "order" + order.id + "FamilyName"; famValue.className = "orderPageFieldValue"; famInfo.appendChild(famDesc); famInfo.appendChild(famValue); var prodInfo = document.createElement("div"); //Non visualizzato prodInfo.style.width = "100%"; prodInfo.style.clear = "left"; var prodDesc = document.createElement("div"); prodDesc.className = "orderPageFieldDesc"; prodDesc.innerHTML = "Product: "; var prodValue = document.createElement("div"); prodValue.id = "order" + order.id + "ProductName"; prodValue.className = "orderPageFieldValue"; prodInfo.appendChild(prodDesc); prodInfo.appendChild(prodValue); var modelInfo = document.createElement("div"); modelInfo.style.width = "100%"; modelInfo.style.clear = "left"; var modelDesc = document.createElement("div"); modelDesc.className = "orderPageFieldDesc"; modelDesc.innerHTML = "Model: "; var modelValue = document.createElement("div"); modelValue.id = "order" + order.id + "ModelName"; modelValue.className = "orderPageFieldValue"; //modelInfo.appendChild(modelDesc); modelInfo.appendChild(modelValue); var dateInfo = document.createElement("div"); //Non visualizzato dateInfo.style.width = "100%"; dateInfo.style.clear = "left"; var dateDesc = document.createElement("div"); dateDesc.className = "orderPageFieldDesc"; dateDesc.innerHTML = "Order date: "; var dateValue = document.createElement("div"); dateValue.className = "orderPageFieldValue"; dateValue.innerHTML = order.created_at; dateInfo.appendChild(dateDesc); dateInfo.appendChild(dateValue); prodInfoContainer.appendChild(orderId); prodInfoContainer.appendChild(famInfo); //prodInfoContainer.appendChild(prodInfo); prodInfoContainer.appendChild(modelInfo); //prodInfoContainer.appendChild(dateInfo); var customerInfoContainer = document.createElement("div"); customerInfoContainer.className = "orderPageCustomerInfoContainer"; var clientNameDiv = document.createElement("div"); clientNameDiv.style.width = "100%"; var nameDesc = document.createElement("div"); nameDesc.className = "orderPageFieldDesc"; nameDesc.innerHTML = "Customer name: "; var nameValue = document.createElement("div"); nameValue.id = "order" + order.id + "ClientName"; nameValue.className = "orderPageFieldValue"; nameValue.innerHTML = order.customer_name; clientNameDiv.appendChild(nameDesc); clientNameDiv.appendChild(nameValue); customerInfoContainer.appendChild(clientNameDiv); var clientPhoneDiv = document.createElement("div"); clientPhoneDiv.style.width = "100%"; clientPhoneDiv.style.clear = "left"; var phoneDesc = document.createElement("div"); phoneDesc.className = "orderPageFieldDesc"; phoneDesc.innerHTML = "Customer phone: "; var phoneValue = document.createElement("div"); phoneValue.id = "order" + order.id + "ClientPhone"; phoneValue.className = "orderPageFieldValue"; phoneValue.innerHTML = order.customer_phone; clientPhoneDiv.appendChild(phoneDesc); clientPhoneDiv.appendChild(phoneValue); customerInfoContainer.appendChild(clientPhoneDiv); var clientEmailDiv = document.createElement("div"); clientEmailDiv.style.width = "100%"; clientEmailDiv.style.clear = "left"; var emailDesc = document.createElement("div"); emailDesc.className = "orderPageFieldDesc"; emailDesc.innerHTML = "Customer email: "; var emailValue = document.createElement("div"); emailValue.id = "order" + order.id + "ClientEmail"; emailValue.className = "orderPageFieldValue"; emailValue.innerHTML = order.customer_email; clientEmailDiv.appendChild(emailDesc); clientEmailDiv.appendChild(emailValue); customerInfoContainer.appendChild(clientEmailDiv); var clientAddressDiv = document.createElement("div"); //Non visualizzato clientAddressDiv.style.width = "100%"; clientAddressDiv.style.clear = "left"; var addressDesc = document.createElement("div"); addressDesc.className = "orderPageFieldDesc"; addressDesc.innerHTML = "Customer address: "; var addressValue = document.createElement("div"); addressValue.id = "order" + order.id + "ClientAddress"; addressValue.className = "orderPageFieldValue"; addressValue.innerHTML = order.customer_address; clientAddressDiv.appendChild(addressDesc); clientAddressDiv.appendChild(addressValue); //customerInfoContainer.appendChild(clientAddressDiv); orderDiv.appendChild(customerInfoContainer); orderDiv.appendChild(prodInfoContainer); var orderDetailsContainer = document.createElement("div"); orderDetailsContainer.id = "order" + order.id + "detailsContainer"; orderDetailsContainer.style.display = "none"; orderDiv.appendChild(orderDetailsContainer); parent.appendChild(orderDiv); //getProductDetails(order.product_id, true, order.id); //getModelDetails(order.model_id, true, order.id); getFamilyDetails(order.family_id, true, order.id); /* componente trasparente per non andare sotto la barra di fondo */ if (i === lastOrderList.length - 1) { var emptyDiv = document.createElement("div"); emptyDiv.id = "emptyDiv"; emptyDiv.style.position = "absolute"; emptyDiv.style.width = "100%"; emptyDiv.style.height = "100px"; emptyDiv.style.marginBottom = "5px"; emptyDiv.style.top = (orderMainButtonHeight * i + (5 * i) + levelStartOffset + orderMainButtonHeight) + "px"; parent.appendChild(emptyDiv); } } openOrderLevel(); } /////////////////////////////////////////////////////////////////////////////// function fillProductDetailsInOrdersPage(details, orderId) { document.getElementById("order" + orderId + "ProductName").innerHTML = details.name_uk; } /////////////////////////////////////////////////////////////////////////////// function fillModelDetailsInOrdersPage(details, orderId) { document.getElementById("order" + orderId + "ModelName").innerHTML = details.code_model; document.getElementById("order" + orderId + "ModelName").setAttribute("hcg", details.HCG); document.getElementById("order" + orderId + "ModelName").setAttribute("ll", details.LL); document.getElementById("order" + orderId + "ModelName").setAttribute("w", details.W); } /////////////////////////////////////////////////////////////////////////////// function fillFamilyDetailsInOrdersPage(details, orderId) { document.getElementById("order" + orderId + "FamilyName").innerHTML = details.name_uk; } /////////////////////////////////////////////////////////////////////////////// var orderMainButtonHeight = 150; var detailsOrderHeight = 850; var detailsOrderHeightWithCapacity = 1500; var openingOrClosingOrdersButton = false; var maxDisplayableOrders = 8; var orderDetailsCache = []; /////////////////////////////////////////////////////////////////////////////// function showOrderDetails(divIndex, button) { if(openingOrClosingOrdersButton === true || animatingOrderPage === true) { return; } openingOrClosingOrdersButton = true; var closing = button.getAttribute("state") === "details"; if ($("#order" + button.getAttribute("orderId") + "detailsContainer").children().length === 0) { loadOrderDetails(button.getAttribute("orderId"), button); } else { if (closing) { $("#order" + button.getAttribute("orderId") + "detailsContainer").fadeOut(); } else { $("#order" + button.getAttribute("orderId") + "detailsContainer").fadeIn(); } } var jQButton = $(button); if (closing) { if ($("#"+ button.getAttribute("orderId") +"capacityList").css("display") !== "none") { $("#"+ button.getAttribute("orderId") +"capacityList").slideUp(1000); } } jQButton.animate({ height: closing ? orderMainButtonHeight : detailsOrderHeight }, 1500, function() { closing ? button.setAttribute("state", "") : button.setAttribute("state", "details"); openingOrClosingOrdersButton = false; }); var presentOrderList = $("#ordersContainer").children(); for ( var i = parseInt(divIndex) + 1; i < presentOrderList.length; i++ ) { $(presentOrderList[i]).animate({ top: closing ? (parseInt($(presentOrderList[i]).css("top")) - ((jQButton.height() === detailsOrderHeight ? detailsOrderHeight : detailsOrderHeightWithCapacity) - orderMainButtonHeight)) : (parseInt($(presentOrderList[i]).css("top")) + (detailsOrderHeight - orderMainButtonHeight)) }, 1500); } } /////////////////////////////////////////////////////////////////////////////// function fillOrderDetails(details, caller) { var leftContainer = document.createElement("div"); leftContainer.style.width = "100%"; leftContainer.style.float = "left"; leftContainer.style.clear = "both"; var rightContainer = document.createElement("div"); rightContainer.style.width = "60%"; rightContainer.style.float = "left"; var order = lastOrderList[parseInt(caller.getAttribute("index"))]; var properties = [ ["Customer country", "", order.customer_country], ["Customer locale", "", order.customer_locale], /*["Customer timezone", "", order.customer_timezone],*/ ["Forklift brand", "", order.customer_forklift_brand], ["Forklift mounting type", "", order.customer_forklift_plug_type], ["Forklift capacity", " kg", order.customer_forklift_capacity_kg], ["Load type", "", details.load_type], ["Kind of package", "", details.kind_of_package], ["Single load height", " mm", details.single_load_height_mm], ["Single load width", " mm", details.single_load_width_mm], ["Single load length", " mm", details.single_load_length_mm], ["Single load weight", " kg", details.single_load_weight_kg], ["Total load height", " mm", details.total_load_height_mm], ["Total load width", " mm", details.total_load_width_mm], ["Total load length", " mm", details.total_load_length_mm], ["Total load weight", " kg", details.total_load_weight_kg], ["Total load position", "", details.total_load_position], ["Total load quantity", "", details.total_load_quantity], /* Nuovi campi */ ["Pallet height", " mm", details.pallet_height_mm], ["Pallet width", " mm", details.pallet_width_mm], ["Pallet length", " mm", details.pallet_length_mm], ["Pallet side way width", " mm", details.pallet_side_way_width_mm], ["Pallet way width", " mm", details.pallet_way_width_mm], ["Pallet weight", " kg", details.pallet_weight_kg], ["Pallet lateral feet width", " mm", details.pallet_lateral_feet_width_mm], ["Pallet central feet width", " mm", details.pallet_centrale_feet_width_mm], ["Pallet way height", " mm", details.pallet_way_height_mm], ["Distance between pallets", " mm", details.distance_between_pallets_mm], ["Number of pallets handled", "", details.number_of_pallets_handled], ["Fork height", " mm", details.fork_height_mm], ["Fork width", " mm", details.fork_width_mm], ["Required fork length", " mm", details.required_fork_length_mm], /* campi lift table */ ["Load Distribution", "", details.load_distribution], ["Capacity", " Kg", details.capacity_platform_kg], ["Capacity Platform A", " mm", details.capacity_platform_a_mm], ["Capacity Platform B", " mm", details.capacity_platform_b_mm], ["Collapsed Height", " mm", details.capacity_collapsed_height_h_mm], ["Stroke", " mm", details.capacity_stroke_e_mm], ["Operating Voltage V", " V", details.operating_voltage_v], ["Operating Voltage Hz", " Hz", details.operating_voltage_hz], ["Operating Voltage Phase", "", details.operating_voltage_phase], ["Power Pack", "", details.power_pack], ["Installation", "", details.installation], ["Cycles Hours", "", details.cycles_hours], /* Fine nuovi campi */ ["Shifts per day", "", details.shifts_per_day], ["Condition of use", "", details.condition_of_use], ["Required quantity", "", details.required_quantity] ]; for (var i = 0; i < properties.length; i++) { var field = properties[i]; if (field[2] === null || field[2] === undefined) { continue; } if (field[0] === "Kind of package" && field[2] === "None") { continue; } var fieldContainer = document.createElement("div"); fieldContainer.style.width = "100%"; fieldContainer.style.clear = "left"; var fieldDesc = document.createElement("div"); fieldDesc.className = "orderPageFieldDesc"; fieldDesc.innerHTML = field[0] + ": "; var fieldValue = document.createElement("div"); fieldValue.className = "orderPageFieldValue"; fieldValue.innerHTML = field[2] + field[1]; fieldContainer.appendChild(fieldDesc); fieldContainer.appendChild(fieldValue); leftContainer.appendChild(fieldContainer); } document.getElementById("order" + caller.getAttribute("orderId") + "detailsContainer").appendChild(leftContainer); //document.getElementById("order" + caller.getAttribute("orderId") + "detailsContainer").appendChild(rightContainer); if (details.order_note) { var notesField = document.createElement("div"); notesField.className = "orderPageNotesFieldContainer"; var notesDesc = document.createElement("div"); notesDesc.className = "orderPageFieldDesc"; notesDesc.innerHTML = "Notes: "; var notesValue = document.createElement("div"); notesValue.className = "orderPageFieldValue"; notesValue.innerHTML = details.order_note; notesField.appendChild(notesDesc); notesField.appendChild(notesValue); document.getElementById("order" + caller.getAttribute("orderId") + "detailsContainer").appendChild(notesField); } /* BOTTONE CHE MOSTRA IL FORM PER IL CALCOLO DELLA PORTATA */ var calc = document.createElement("div"); calc.innerHTML = "RESIDUAL CAPACITY CALCULATION"; calc.className = "orderPageShowCalc centered styledButton"; calc.style.clear = "both"; calc.style.marginTop = "20px"; calc.onclick = function() { if(openingOrClosingOrdersButton === true) { return; } openingOrClosingOrdersButton = true; var jQButton = $(this.parentNode.parentNode); var closing = jQButton.height() === detailsOrderHeightWithCapacity; jQButton.animate({ height: closing ? detailsOrderHeight : detailsOrderHeightWithCapacity }, 1500, function() { //closing ? button.setAttribute("state", "") : button.setAttribute("state", "details"); openingOrClosingOrdersButton = false; }); var presentOrderList = $("#ordersContainer").children(); for ( var i = parseInt(this.parentNode.parentNode.getAttribute("index")) + 1; i < presentOrderList.length; i++ ) { $(presentOrderList[i]).animate({ top: closing ? (parseInt($(presentOrderList[i]).css("top")) - (detailsOrderHeightWithCapacity - detailsOrderHeight)) : (parseInt($(presentOrderList[i]).css("top")) + (detailsOrderHeightWithCapacity - detailsOrderHeight)) }, 1500); } if ($("#"+ order.id +"capacityList").css("display") === "none") { $("#"+ order.id +"capacityList").slideDown(1000, function() { //$("body").animate({scrollTop: $("#capacityList").offset().top}, 500); }); } else { $("#"+ order.id +"capacityList").slideUp(1000); } }; //document.getElementById("order" + caller.getAttribute("orderId") + "detailsContainer").appendChild(calc); /* FORM PER IL CALCOLO DELLA PORTATA */ var capacityFormContainer = document.createElement("ul"); capacityFormContainer.id = order.id + "capacityList"; capacityFormContainer.className = "calcList centered"; //capacityFormContainer.style.paddingTop = "30px"; capacityFormContainer.style.clear = "both"; capacityFormContainer.style.display = "none"; for (var i = 0; i < calcDivisionList.length; i++) { var contents = calcDivisionList[i]; var divColumn = document.createElement("li"); var title = document.createElement("p"); title.className = "calcFormTitle"; title.innerHTML = contents.title; divColumn.appendChild(title); var inputs = document.createElement("div"); for (var t = 0; t < contents.inputList.length; t++) { var singleInput = contents.inputList[t]; if (singleInput[0] === "MODEL") { continue; } var inputContainer = document.createElement("div"); var label = document.createElement("p"); label.className = "calcInputDescription"; label.innerHTML = singleInput[0]; //inputs.appendChild(label); inputContainer.appendChild(label); if (singleInput[1] === "COMPUTE") { var calcButton = document.createElement("div"); calcButton.className = "styledButton orderPageCalcButton"; calcButton.innerHTML = "CALCULATE"; //singleInput[1]; calcButton.onclick = function () { var functionResult = portataResidua($("#" + order.id + "QST").val(), $("#" + order.id + "X").val(), $("#" + order.id + "S").val(), $("#" + order.id + "C").val(), $("#" + order.id + "BP").val(), $("#" + order.id + "W").val(), $("#" + order.id + "HCG").val(), $("#" + order.id + "LL").val()); if (functionResult !== 0) { document.getElementById(order.id +"result").innerHTML = functionResult + " Kg"; $("#"+ order.id +"resultContainer").fadeIn(); } }; //inputs.appendChild(calcButton); inputContainer.appendChild(calcButton); var resultContainer = document.createElement("div"); resultContainer.id = order.id + "resultContainer"; resultContainer.className = "orderPageResultContainer"; resultContainer.style.width = "100%"; resultContainer.style.display = "none"; var resultDescription = document.createElement("p"); resultDescription.className = "orderPageResultDescription"; resultDescription.innerHTML = singleInput[2]; resultContainer.appendChild(resultDescription); var result = document.createElement("p"); result.id = order.id + "result"; result.className = "orderPageResult"; resultContainer.appendChild(result); //inputs.appendChild(resultContainer); inputContainer.appendChild(resultContainer); } else { var input = document.createElement("input"); input.id = order.id + singleInput[1]; input.type = wp ? "text" : "number"; if (singleInput[1] === "HCG" || singleInput[1] === "LL" || singleInput[1] === "W") { input.value = document.getElementById("order" + order.id + "ModelName").getAttribute(singleInput[1]); } //inputs.appendChild(input); inputContainer.appendChild(input); var unitMeasure = document.createElement("label"); unitMeasure.for = singleInput[1]; unitMeasure.innerHTML = singleInput[2]; //inputs.appendChild(unitMeasure); inputContainer.appendChild(unitMeasure); } inputs.appendChild(inputContainer); } divColumn.appendChild(inputs); capacityFormContainer.appendChild(divColumn); } document.getElementById("order" + caller.getAttribute("orderId") + "detailsContainer").appendChild(capacityFormContainer); $("#order" + caller.getAttribute("orderId") + "detailsContainer").fadeIn(); } /////////////////////////////////////////////////////////////////////////////// var timezoneRetry = 0; /////////////////////////////////////////////////////////////////////////////// function getTimezones() { if (timezones === null) { $.getJSON("get_timezones.php", function(data) { timezones = data; var timezonesSelect = document.getElementById("ordersclientTimezone"); if (timezonesSelect && $(timezonesSelect).children().length === 0) { var timezonesKeys = Object.keys(timezones); for (var i = 0; i < timezonesKeys.length; i++) { var timezonesOption = document.createElement("option"); timezonesOption.setAttribute("value", timezonesKeys[i]); timezonesOption.innerHTML = timezonesKeys[i]; timezonesSelect.appendChild(timezonesOption); } } }).error(function(error) { console.log("[getTimezones] ERRORE!!"); console.log(error); if (timezoneRetry < 5) { timezoneRetry++; getTimezones(); } }); } } /////////////////////////////////////////////////////////////////////////////// var animatingOrderPage = false; /////////////////////////////////////////////////////////////////////////////// function openOrderLevel() { animatingOrderPage = true; var levelContainer = document.getElementById("ordersContainer"); var list = $(levelContainer).children(); for (var i = 0; i < list.length; i++) { if (list[i].id === "emptyDiv") { continue; } if (parseInt($(list[i]).css("top")) > $(window).height()) { openOrderWithoutAnimation(list[i]); } else { openOrder(list[i]); } } window.setTimeout(function () { animatingOrderPage = false; }, 700); } /////////////////////////////////////////////////////////////////////////////// function openOrder(order) { $(order).animate({ width: "100%" }, 350, function() { $(order).animate({ height: orderMainButtonHeight }, 300); }); } /////////////////////////////////////////////////////////////////////////////// function openOrderWithoutAnimation(order) { order.style.width = "100%"; order.style.height = orderMainButtonHeight; } /////////////////////////////////////////////////////////////////////////////// function closeOrderLevel() { //TODO animatingOrderPage = true; var levelContainer = document.getElementById("ordersContainer"); var list = $(levelContainer).children(); for (var i = 0; i < list.length; i++) { } } /////////////////////////////////////////////////////////////////////////////// var firstSize = true; /////////////////////////////////////////////////////////////////////////////// function redrawOrderPageAfterResize() { var levelContainer = document.getElementById("ordersContainer"); var list = $(levelContainer).children(); for (var i = 0; i < list.length; i++) { if (list[i].id === "emptyDiv") { list[i].style.top = (orderMainButtonHeight * i + (5 * i) + levelStartOffset) + "px"; continue; } list[i].style.height = orderMainButtonHeight + "px"; // Devo chiuderli sempre a causa del top (sarebbe un casino da calcolare) list[i].setAttribute("state", ""); if (document.getElementById(list[i].getAttribute("orderid") + "capacityList") && document.getElementById(list[i].getAttribute("orderid") + "capacityList").style.display !== "none") { document.getElementById(list[i].getAttribute("orderid") + "capacityList").style.display = "none"; } if (document.getElementById("order" + list[i].getAttribute("orderid") + "detailsContainer")) { document.getElementById("order" + list[i].getAttribute("orderid") + "detailsContainer").style.display = "none"; } list[i].style.top = (orderMainButtonHeight * i + (5 * i) + levelStartOffset) + "px"; } } ///////////////////////////////////////////////////////////////////////////////