var lastSortType = getCookie("lastProductSortType"); var lastSortOrder = getCookie("lastProductSortOrder"); function sortProductsBy(w) { if(lastSortType == w) lastSortOrder = lastSortOrder == "ASC" ? "DESC" : "ASC"; else lastSortOrder = "ASC"; setCookie("lastProductSortType", w); setCookie("lastProductSortOrder", lastSortOrder); document.location.href = "?sortBy=" + w + " " + lastSortOrder; } var hasChanges = false; function setHasChanges(changed) { hasChanges = changed; if($('changesmade')) $('changesmade').style.display = hasChanges ? "block" : "none"; } function selectProductIndex(value) { if(value == 1) { $('productIndexTypeOne').style.display = 'block'; $('productIndexTypeTwo').style.display = 'none'; $('productIndexTypeThree').style.display = 'none'; } else if(value == 2) { $('productIndexTypeOne').style.display = 'none'; $('productIndexTypeTwo').style.display = 'block'; $('productIndexTypeThree').style.display = 'none'; } else if(value == 3) { $('productIndexTypeOne').style.display = 'none'; $('productIndexTypeTwo').style.display = 'none'; $('productIndexTypeThree').style.display = 'block'; } } function findProduct(keyword) { new Ajax.Request("/modules/products/admin/settings/?find=" + keyword, { onSuccess : function(r) { var products = r.responseText.evalJSON(); var table = $('searchresult'); table.style.display = "block"; for(var i = table.rows.length - 1; i > 0; i--) { table.deleteRow(i); } for(var i = 0; i < products.length; i++) { var tr = $('searchresult').insertRow(-1); var td = tr.insertCell(-1); td.noWrap = true; var node = document.createTextNode(products[i][1]); td.appendChild(node); td = tr.insertCell(-1); td.noWrap = true; var node = document.createTextNode(products[i][2]); td.appendChild(node); td.width = "100%"; td = tr.insertCell(-1); td.noWrap = true; if(products[i][3] == 1) { node = document.createElement("a"); node.href = "javascript:featureProduct(" + products[i][0] + ")"; node.appendChild(document.createTextNode("Lägg till")); td.appendChild(node); } else { td.appendChild(document.createTextNode("Ej publ.")); } } } }); } function featureProduct(productId) { new Ajax.Request("/modules/products/admin/settings/?feature=" + productId, { onSuccess : function(r) { var product = r.responseText.evalJSON(); var table = $('featuredproducts'); if(!$('featured_' + productId)) { var tr = table.insertRow(-1); tr.id = "featured_" + productId; var td0 = tr.insertCell(-1); var td1 = tr.insertCell(-1); var td2 = tr.insertCell(-1); var td3 = tr.insertCell(-1); var moveup = document.createElement("a"); moveup.className = "moveup"; moveup.onclick = function() { moveProductUp($(this.parentNode.parentNode)); } moveup.href = "javascript:void(0)"; var movedown = document.createElement("a"); movedown.className = "movedown"; movedown.onclick = function() { moveProductDown($(this.parentNode.parentNode)); } movedown.href = "javascript:void(0)"; td0.appendChild(moveup); td0.appendChild(movedown); td1.appendChild(document.createTextNode(product[1])); td1.noWrap = true; td2.appendChild(document.createTextNode(product[2])); td2.noWrap = true; var node = document.createElement("a"); node.href = "javascript:unfeatureProduct(" + product[0] + ")"; node.appendChild(document.createTextNode("Ta bort")); td3.appendChild(node); td3.noWrap = true; } else { alert("Produkten finns redan i listan!"); } } }); } function unfeatureProduct(productId, link) { if(!confirm('Är du säker på att du vill ta bort denna produkt från produktindex?')) return; new Ajax.Request("/modules/products/admin/settings/?unfeature=" + productId, { onSuccess : function(r) { if(r.responseText == "ok") { var node = $('featured_' + productId); var table = $('featuredproducts'); node.parentNode.removeChild(node); } } }); } function clearSearch() { var table = $('searchresult'); for(var i = table.rows.length - 1; i > 0; i--) { table.deleteRow(i); } var tr = table.insertRow(-1); var td = tr.insertCell(-1); var em = document.createElement("em"); em.appendChild(document.createTextNode("inget sökresultat, sök m.h.a rutan ovanför")); td.appendChild(em); table.width = "100%"; } function markAllProducts(elm, checkbox, filter) { elm.select('input').each(function(e, i) { if(e == checkbox) return; if(filter) { if(e.name.indexOf(filter) == -1) return; } e.checked = checkbox.checked; }); } function moveProductUp(row) { var prev = $(row).previous(); if(prev) prev.insertAdjacentElement("beforebegin", row); } function moveProductDown(row) { var next = $(row).next(); if(next) next.insertAdjacentElement("afterend", row); } function moveCategoryChildrenUp(row) { var table = $('productlist'); var rows = table.getElementsByTagName("tr"); var rowsToMove = new Array(); for(var i=rows.length - 1; i >= 0; i--) { if(rows[i].getAttribute("parentNodeId") == row.getAttribute("nodeId")) { rowsToMove.push(rows[i]); } } for(var i=0; i < rowsToMove.length; i++) { row.insertAdjacentElement('afterend', rowsToMove[i]); } for(var i=0; i < rowsToMove.length; i++) { moveCategoryChildrenUp(rowsToMove[i]); } } function moveCategoryUp(row) { var parentId = row.getAttribute("parentNodeId"); var nodeId = row.getAttribute("nodeId"); var table = $('productlist'); if(parentId == "") { var prev = row.previous(); while(prev) { if(prev.getAttribute("parentNodeId") == parentId) { prev.insertAdjacentElement("beforebegin", row); // move children moveCategoryChildrenUp(row); break; } prev = prev.previous(); } } else { var prev = row.previous(); while(prev) { if(prev.getAttribute("parentNodeId") == row.getAttribute("parentNodeId")) { prev.insertAdjacentElement("beforebegin", row); // move children moveCategoryChildrenUp(row); break; } prev = prev.previous(); } } } function moveCategoryDown(row) { var parentId = row.getAttribute("parentNodeId"); var nodeId = row.getAttribute("nodeId"); var table = $('productlist'); if(parentId == "") { var next = row.next(); while(next) { if(next.getAttribute("parentNodeId") == parentId) { moveCategoryUp(next); break; } next = next.next(); } } else { var next = row.next(); while(next) { if(next.getAttribute("parentNodeId") == row.getAttribute("parentNodeId")) { moveCategoryUp(next); break; } next = next.next(); } } } function openhelp(section) { if(section) { $('help_' + section).style.display = ($('help_' + section).style.display=="block")?"none":"block"; } else { var divs = $$('div.tabpage'); if(divs.length == 0) $('help_basic').style.display = ($('help_basic').style.display=="block")?"none":"block"; else for(var i=0;i 0) { var checked = false; for(var i=0; i 0 && virtual[1].selected) { alert('En produkt kan inte både vara virtuell och en variant.'); return false; } if(artnr && artnr.value=="") { alert('Du måste ange ett artnr.'); return false; } if(hasWebshop && price && price.value=="") { alert('Du måste ange ett pris.'); return false; } if(hasWebshop && price && !price.value.match(/^([0-9]*)(\,){0,1}([0-9]+)$/g)) { alert("Priset får bara innehålla siffror samt komma om ören skall anges."); return false; } if(weight && !weight.value.match(/^([0-9]*)(\,){0,1}([0-9]+)$/g)) { alert("Vikten får bara innehålla siffror samt komma."); return false; } if(name && name.value=="") { alert('Du måste ange ett namn.'); return false; } if(templateId) { var selected = false; if(templateId.length) { for(var i=0;i").replace(/\<\!\-\-id\-\-\>/g,myId); holder.innerHTML = templateData; var dummy = holder.getElementsByTagName("TR").item(0); table.getElementsByTagName("TBODY").item(0).appendChild(dummy); setFile($('ginput[' + myId + ']'), $('gallery[' + myId + ']'), true, $('gallery_' + myId)); return false; } } , '.addFile' : function(el) { el.onclick = function(e) { //attrCount++; var table = $('galleryFiles'); var myId = "newDocument_" + table.rows.length; var template = $('documentTemplate'); var holder = document.createElement('div'); var templateData = template.innerHTML.replace(/\<\;/g,"<").replace(/\>\;/g,">").replace(/\<\!\-\-id\-\-\>/g,myId); holder.innerHTML = templateData; var dummy = holder.getElementsByTagName("TR").item(0); table.getElementsByTagName("TBODY").item(0).appendChild(dummy); setFile($('finput[' + myId + ']'), $('file[' + myId + ']'), undefined, undefined, function(item) { var basename = item.getAttribute('filename'); basename = basename.substring(basename.lastIndexOf('/') + 1); $('fnames[' + myId + ']').setAttribute('value', basename); $('file[' + myId + ']').setAttribute('width', 40); $('filepath[' + myId + ']').innerHTML = item.getAttribute('filename') $('no_files').hide(); }); return false; } } }; function addVariation(table,template,copyfrom) { for(var i=0;idaysInMonth)?"datepickdayd":"datepickday"; if(link.date.getDate()==today.getDate() && link.date.getMonth()==today.getMonth() && link.date.getFullYear()==today.getFullYear()) link.className = link.className = " today"; td.appendChild(link); dc++; } tr = table.insertRow(-1); td = tr.insertCell(-1); td.className = "datepickfoot"; var link = document.createElement("a"); link.appendChild(document.createTextNode("<")); link.href = "javascript:void(0)"; link.datePicker = this; link.className = "datepickprev"; link.onclick = function() { this.datePicker.startDate.setMonth(this.datePicker.startDate.getMonth()-1); this.datePicker.Render(); } td.appendChild(link); td = tr.insertCell(-1); td.className = "datepickfoot"; td.colSpan = 6; td.appendChild(document.createTextNode(this.months[this.startDate.getMonth()] + " - " + this.startDate.getFullYear())); td = tr.insertCell(-1); td.className = "datepickfoot"; var link = document.createElement("a"); link.href = "javascript:void(0)"; link.datePicker = this; link.className = "datepicknext"; link.onclick = function() { this.datePicker.startDate.setMonth(this.datePicker.startDate.getMonth()+1); this.datePicker.Render(); } link.appendChild(document.createTextNode(">")); td.appendChild(link); } , handleCallback : function() { this.datePicker.callback(this.date,false); } , handleWeekCallback : function() { this.datePicker.callback(this.date,true); } , Close : function() { document.body.removeChild(this.div); } } function PickProductDate(event,form,field,weekonly) { var element = event.srcElement; if(!element) element = event.target; var x = findPosX(element); var y = findPosY(element); var datePick = new DatePicker(); datePick.Show(x,y, function(date,weekSelect) { if(field && weekSelect && weekonly) { var startDate = new Date(date); form[field].value = startDate.getWeek(); } else if(field) { var startDate = new Date(date); var startDateStr = startDate.getFullYear() + "-" + (startDate.getMonth()<9?"0":"") + (startDate.getMonth()+1) + "-" + (startDate.getDate()<10?"0":"") + startDate.getDate(); form[field].value = startDateStr; try { form[field + 'Dummy'].value = startDateStr; } catch(e) { } } datePick.Close(); }); //var startdate = DatePicker.Pick(); } function enableDate(f1, f2, f3, checked) { $('postform')[f1].disabled = !checked; $('postform')[f2].disabled = !checked; $('postform')[f3].disabled = !checked; } var lid = 1; var currentIngressLanguage = lid; var currentDescriptionLanguage = lid; var currentListDescriptionLanguage = lid; var currentNameLanguage = lid; var currentHTMLLanguage = lid; var currentPIndexLanguage = lid; var currentIntroLanguage = lid; var currentOutroLanguage = lid; var currentTIndexLanguage = lid; var currentShippingInfoLanguage = lid; var currentUrlLanguage = lid; var currentPUrlLanguage = lid; var currentMetaDescLanguage = lid; var currentMetaTitleLanguage = lid; function getLocaleData(productId, languageId, what, link) { var url = "/modules/products/admin/editProduct.php?getlocaledata=1&productId=" + productId + "&languageId=" + languageId + "&what=" + what; link = $(link); var links = link.parentNode.getElementsByTagName("A"); for(var i=0;i