function cart(){this.basket=0;this.total=0.00;this.skus=new Array();this.ItemColumns=['Image','Name','Quantity','Options','Price','Total'];this.load=function(){if(!readCookie("mmBasket")){this.basket=0;this.total=0.00;}else{data=readCookie("mmBasket").split("{-");this.basket=data[0]*1;this.total=data[1]*1;for(x=2;x<(data.length);x++){newItem=new item();itemData=data[x].split(",");i=0;for(i=0;i<itemData.length;i++){pair=itemData[i].split('=');newItem.addValue(pair[0],pair[1]);}
if(!newItem.getValue('name')||!newItem.getValue('price')||!newItem.getValue('quantity')){return false;}
this.skus[x-2]=newItem;}}
this.setUpEvents();this.updateCookie();this.updatePageElements();return;};this.checkOutEvent=function(){mmBasket.checkOut();return false;};this.emptyEvent=function(){mmBasket.empty();return false;};this.setUpEvents=function(){var x=0,element,elements=getElementsByClassName('mmBasket_total');x=0;elements=getElementsByClassName('mmBasket_checkout');for(x=0;x<elements.length;x++){element=elements[x];if(element.addEventListener){element.addEventListener("click",this.checkOutEvent,false);}else if(element.attachEvent){element.attachEvent("onclick",this.checkOutEvent);}}
x=0;elements=getElementsByClassName('mmBasket_empty');for(x=0;x<elements.length;x++){element=elements[x];if(element.addEventListener){element.addEventListener("click",this.emptyEvent,false);}else if(element.attachEvent){element.attachEvent("onclick",this.emptyEvent);}}
return;};this.add=function(){newItem=new item();var x=0;for(x=0;x<arguments.length;x++){temp=arguments[x];data=temp.split('=');newItem.addValue(data[0],data[1]);}
if(!newItem.getValue('name')||!newItem.getValue('price')){return false;}
isnew=true;if(!newItem.getValue('quantity')){newItem.addValue('quantity',1);}
this.basket=this.basket+newItem.getValue('quantity');x=0;for(x=0;x<this.skus.length;x++){tempItem=this.skus[x];if(tempItem.equalTo(newItem)){tempItem.addValue('quantity',(parseInt(tempItem.getValue('quantity'))+parseInt(newItem.getValue('quantity'))));this.total=this.total+parseFloat(tempItem.getValue('price'));isnew=false;}}
if(isnew){this.skus[this.skus.length]=newItem;this.total=this.total+parseFloat(newItem.getValue('price'));}
this.updateCookie();this.updatePageElements();return;};this.slct=function(selection,name,price,image){var selection=document.getElementById(selection);var option_sku=selection[selection.selectedIndex].value;var option_name=selection[selection.selectedIndex].text;if(option_sku=="none"){alert('You must first make your selection from the dropdown.');return false;}else{this.add('name='+option_name+' - '+name,'price='+price,'image=http://www.maplemusic.com/assets/product_images/'+image,'sku='+option_sku);}
return false;};this.bundle1=function(selection,name,price,image){var selection=jQuery("#bundle1 ul:nth-child(1)").attr("name")+':1|'+jQuery("#bundle1 ul:nth-child(2)").attr("name")+":1";if(selection.search('undefined')>=0){alert('Please Drag and Drop Two CDs into the bundle area');return false;}else{var option_name=jQuery("#bundle1 ul:nth-child(1)").attr("title")+' + '+jQuery("#bundle1 ul:nth-child(2)").attr("title");var xskus="2780-090:"+jQuery("#bundle1 ul:nth-child(1)").attr("name")+':'+jQuery("#bundle1 ul:nth-child(2)").attr("name");this.add('name='+option_name,'price='+price,'image=http://www.maplemusic.com/assets/product_images/'+image,'sku='+xskus);}
return false;};this.bundle2=function(selection,name,price,image){var selection=jQuery("#bundle2 ul:nth-child(1)").attr("name")+':1|'+jQuery("#bundle2 ul:nth-child(2)").attr("name")+":1";if(selection.search('undefined')>=0){if(selection.search('hoodie')>=0){alert('Please Drag and Drop A Shirt into the bundle area');}
else if(selection.search('shirt')>=0){alert('Please Drag and Drop A Hoodie into the bundle area');}
else{alert('Please Drag and Drop A Hoodie and Shirt into the bundle area');}
return false;}else{var bundle21_sel=document.getElementById('bundle2-1').getElementsByTagName("select");var bundle21_selb=bundle21_sel[0].selectedIndex;var bundle22_sel=document.getElementById('bundle2-2').getElementsByTagName("select");var bundle22_selb=bundle22_sel[0].selectedIndex;if(bundle21_selb>0&&bundle22_selb>0){var option_name=jQuery("#bundle2 ul:nth-child(1)").attr("title")+' ('+bundle21_sel[0][bundle21_sel[0].selectedIndex].text+') + '+jQuery("#bundle2 ul:nth-child(2)").attr("title")+' ('+bundle22_sel[0][bundle22_sel[0].selectedIndex].text+')';var xskus="2780-092:"+bundle21_sel[0][bundle21_sel[0].selectedIndex].value+':'+bundle22_sel[0][bundle22_sel[0].selectedIndex].value;this.add('name='+option_name,'price='+price,'image=http://www.maplemusic.com/assets/product_images/'+image,'sku='+xskus);return false;}
else{alert('Make both your selections from the dropdowns')}}
return false;};this.bundle3=function(selection,name,price,image){var selection=jQuery("#bundle3 ul:nth-child(1)").attr("name")+':1|'+jQuery("#bundle3 ul:nth-child(2)").attr("name")+":1";if(selection.search('undefined')>=0){alert('Please Drag and Drop A Shirt into the bundle area');return false;}else{var bundle3_sel=document.getElementById('bundle3-1').getElementsByTagName("select");var bundle3_selb=bundle3_sel[0].selectedIndex;if(bundle3_selb>0){var option_name=jQuery("#bundle3 ul:nth-child(1)").attr("title")+' + '+jQuery("#bundle3 ul:nth-child(2)").attr("title")+' ('+bundle3_sel[0][bundle3_sel[0].selectedIndex].text+')';;var xskus="2780-091:2780-080:"+bundle3_sel[0][bundle3_sel[0].selectedIndex].value;this.add('name='+option_name,'price='+price,'image=http://www.maplemusic.com/assets/product_images/'+image,'sku='+xskus);return false;}
else{alert('Make your selection from the dropdown')}}
return false;};this.bundle4=function(selection,name,price,image){var selection=jQuery("#bundle4 ul:nth-child(1)").attr("name")+':1|'+jQuery("#bundle4 ul:nth-child(2)").attr("name")+":1";if(selection.search('undefined')>=0){if(selection.search('CD')>=0){alert('Please Drag and Drop A Shirt into the bundle area');}
else if(selection.search('shirt')>=0){alert('Please Drag and Drop A CD into the bundle area');}
else{alert('Please Drag and Drop A CD and Shirt into the bundle area');}
return false;}else{var bundle42_sel=document.getElementById('bundle4-2').getElementsByTagName("select");var bundle42_selb=bundle42_sel[0].selectedIndex;var bundle41=jQuery("#bundle4 ul:nth-child(1)").attr("name");if(bundle42_selb>0){var option_name=jQuery("#bundle4 ul:nth-child(1)").attr("title")+' + '+jQuery("#bundle4 ul:nth-child(2)").attr("title")+' ('+bundle42_sel[0][bundle42_sel[0].selectedIndex].text+')';var xskus="2780-093:"+bundle41+':'+bundle42_sel[0][bundle42_sel[0].selectedIndex].value;this.add('name='+option_name,'price='+price,'image=http://www.maplemusic.com/assets/product_images/'+image,'sku='+xskus);return false;}
else{alert('Make your selection from the dropdown')}}
return false;};this.addItem=function(newItem){var x=0;for(x=0;x<this.skus.length;x++){var tempItem=this.skus[x];if(tempItem.equalTo(newItem)){tempItem.addValue('quantity',parseInt(newItem.getValue('quantity'))+parseInt(tempItem.getValue('quantity')));this.basket=this.basket+parseInt(newItem.getValue('quantity'));this.total=this.total+parseInt(newItem.getValue('quantity'))*parseFloat(newItem.getValue('price'));return;}}
this.skus[this.skus.length]=newItem;this.basket=this.basket+parseInt(newItem.getValue('quantity'));this.total=this.total+parseInt(newItem.getValue('quantity'))*parseFloat(newItem.getValue('price'));return;};this.updateCookie=function(){cookieString=String(this.basket)+"{-"+String(this.total);x=0;for(x=0;x<this.skus.length;x++){tempItem=this.skus[x];cookieString=cookieString+"{-"+tempItem.cookieString();}
createCookie("mmBasket",cookieString,30);};this.empty=function(){this.skus=new Array();this.basket=0;this.total=0.00;this.updateCookie();this.updatePageElements();return false;};this.deleteItem=function(item){found=false;var temp=new Array();for(x=0;x<this.skus.length;x++){tempItem=this.skus[x];if(tempItem.equalTo(item)){found=true;this.basket=this.basket-parseFloat(tempItem.getValue('quantity'));this.total=this.total-parseFloat(tempItem.getValue('price'));}
if(found){if(x<(this.skus.length-1)){temp[x]=this.skus[x+1];}}else{temp[x]=this.skus[x];}}
this.skus=temp;this.updateCookie();this.updatePageElements();return false;};this.options=function(){var x=0;for(x=0;x<this.skus.length;x++){var temp=this.skus[x];if(temp.optionList()){return true;}}
return false;};this.updatePageElements=function(){var x=0,element,elements=getElementsByClassName('mmBasket_total');for(x=0;x<elements.length;x++){element=elements[x];element.innerHTML=this.returntotal();}
x=0;elements=getElementsByClassName('mmBasket_quantity');for(x=0;x<elements.length;x++){element=elements[x];element.innerHTML=String(this.basket);}
elements=getElementsByClassName('mmBasket_items');for(x=0;x<elements.length;x++){cartTable=elements[x];newRow=document.createElement('div');var x=0,i=0;while(cartTable.childNodes[0]){cartTable.removeChild(cartTable.childNodes[0]);}
newRow.className="cartHeaders";cartTable.appendChild(newRow);x=0;for(x=0;x<this.skus.length;x++){tempItem=this.skus[x];newRow=document.createElement('div');i=0;for(i=0;i<this.ItemColumns.length;i++){tempCell=document.createElement('div');tempCell.className="item"+this.ItemColumns[i];if(this.ItemColumns[i]=='Image'){if(tempItem.getValue('image')){tempCell.innerHTML='<img src="'+tempItem.getValue('image')+'" />';}}
if(this.ItemColumns[i]=='Name'){tempCell.innerHTML=tempItem.getValue('name');}else if(this.ItemColumns[i]=='Price'){tempCell.innerHTML=this.returnFormattedPrice(tempItem.getValue('price'));}else if(this.ItemColumns[i]=='Options'&&this.options()){tempCell.innerHTML=tempItem.optionList();}else if(this.ItemColumns[i]=='Quantity'){tempCell.innerHTML='<input type="text" onblur="mmBasket.updateQuantity('+tempItem.functionString()+',\'new_quantity=\' + this.value);return false;"value="'+tempItem.getValue('quantity')+'" />';}else if(this.ItemColumns[i]=='Total'){tempCell.innerHTML=this.returnFormattedPrice(tempItem.getValue('quantity')*tempItem.getValue('price'));}
newRow.appendChild(tempCell);}
newRow.className="itemContainer";cartTable.appendChild(newRow);}}
return false;};this.returntotal=function(){return this.returnFormattedPrice(this.total);};this.returnFormattedPrice=function(price){temp=Math.round(price*100);change=String(temp%100);if(change.length==0){change="00";}else if(change.length==1){change="0"+change;}
temp=String(Math.floor(temp/100));return"$"+temp+"."+change;};this.updateQuantity=function(){newItem=new item();x=0;for(x=0;x<arguments.length;x++){temp=arguments[x];data=temp.split('=');if(data[0]=='new_quantity'){var new_quantity=data[1];}else{newItem.addValue(data[0],data[1]);}}
if(new_quantity<1){this.deleteItem(newItem);return;}
newQuan=new_quantity-newItem.getValue('quantity');newItem.addValue('quantity',newQuan);this.addItem(newItem);this.updateCookie();this.updatePageElements();return false;};this.checkOut=function(){if(this.basket==0){alert("Your basket is empty!");return false;}
var param="scrollbars,location,resizable,status";var i,j=0,des,counter;var order="http://www.maplemusic.com/outside_orderform.asp?order=";var aofb="";counter=0;for(counter=0;counter<this.skus.length;counter++){tempItem=this.skus[counter];tempItemSku=tempItem.getValue('sku');aofb=aofb+tempItemSku+"|";tempItemSkusplit=tempItemSku.indexOf(":");if(tempItemSku.indexOf(":")>=1){tempItemSkusplit=tempItemSku.substr(0,tempItemSkusplit);}
else{tempItemSkusplit=tempItemSku;}
j=counter+1;order=order+tempItemSkusplit+":"+tempItem.getValue('quantity')+"|";}
order=order.substring(0,order.length-1);aofb=aofb.substring(0,aofb.length-1);order=order+"&artist=2480"+"&aofb="+aofb;window.open(order,"maplemusic",param);return false;};}
function item(){this.names=new Array();this.values=new Array();this.addValue=function(name,value){if(this.names.length!=this.values.length){return false;}
found=false;var a=0;for(a=0;a<this.names.length;a++){if(this.names[a]==name){this.values[a]=value;return;}}
if(!found){this.names[this.names.length]=name;this.values[this.values.length]=value;}
return;};this.getValue=function(name){var g=0;for(g=0;g<this.names.length;g++){if(name==this.names[g]){return this.values[g];}}
return null;};this.equalTo=function(item){if(this.getSize()!=item.getSize()){return false;}
var q=0;for(q=0;q<this.names.length;q++){if(this.names[q]!='quantity'&&(item.getValue(this.names[q])!=this.values[q])){return false;}}
return true;};this.getSize=function(){return this.names.length;};this.cookieString=function(){returnString='';var i=0;returnString=this.names[i]+"="+this.values[i];i=1;for(i=1;i<this.names.length;i++){returnString=returnString+","+this.names[i]+"="+this.values[i];}
return returnString;};this.functionString=function(){returnString='\'';var f=0;returnString='\''+this.names[f]+"="+this.values[f];f=1;for(f=1;f<this.names.length;f++){returnString=returnString+"','"+this.names[f]+"="+this.values[f];}
returnString=returnString+'\'';return returnString;};this.optionList=function(){returnString='';if(this.getSize()<4){return null;}
var o=0;for(o=0;o<this.names.length;o++){if(this.names[o]!='quantity'&&this.names[o]!='price'&&this.names[o]!='name'&&this.names[o]!='image'){returnString=returnString+this.names[o]+':'+this.values[o]+', ';}}
while(returnString.charAt(returnString.length-1)==','||returnString.charAt(returnString.length-1)==' '||returnString.charAt(returnString.length)==':'){returnString=returnString.substring(0,returnString.length-1);}
return returnString;};}
function createCookie(name,value,days){if(days){var date=new Date();date.setTime(date.getTime()+(days*24*60*60*1000));var expires="; expires="+date.toGMTString();}else var expires="";document.cookie=name+"="+value+expires+"; path=/";}
function readCookie(name){var nameEQ=name+"=";var ca=document.cookie.split(';');for(var i=0;i<ca.length;i++){var c=ca[i];while(c.charAt(0)==' ')c=c.substring(1,c.length);if(c.indexOf(nameEQ)==0)return c.substring(nameEQ.length,c.length);}
return null;}
function eraseCookie(name){createCookie(name,"",-1);}
var getElementsByClassName=function(className,tag,elm){if(document.getElementsByClassName){getElementsByClassName=function(className,tag,elm){elm=elm||document;var elements=elm.getElementsByClassName(className),nodeName=(tag)?new RegExp("\\b"+tag+"\\b","i"):null,returnElements=[],current;for(var i=0,il=elements.length;i<il;i+=1){current=elements[i];if(!nodeName||nodeName.test(current.nodeName)){returnElements.push(current);}}
return returnElements;};}else if(document.evaluate){getElementsByClassName=function(className,tag,elm){tag=tag||"*";elm=elm||document;var classes=className.split(" "),classesToCheck="",xhtmlNamespace="http://www.w3.org/1999/xhtml",namespaceResolver=(document.documentElement.namespaceURI===xhtmlNamespace)?xhtmlNamespace:null,returnElements=[],elements,node;for(var j=0,jl=classes.length;j<jl;j+=1){classesToCheck+="[contains(concat(' ', @class, ' '), ' "+classes[j]+" ')]";}
try{elements=document.evaluate(".//"+tag+classesToCheck,elm,namespaceResolver,0,null);}catch(e){elements=document.evaluate(".//"+tag+classesToCheck,elm,null,0,null);}
while((node=elements.iterateNext())){returnElements.push(node);}
return returnElements;};}else{getElementsByClassName=function(className,tag,elm){tag=tag||"*";elm=elm||document;var classes=className.split(" "),classesToCheck=[],elements=(tag==="*"&&elm.all)?elm.all:elm.getElementsByTagName(tag),current,returnElements=[],match;for(var k=0,kl=classes.length;k<kl;k+=1){classesToCheck.push(new RegExp("(^|\\s)"+classes[k]+"(\\s|$)"));}
for(var l=0,ll=elements.length;l<ll;l+=1){current=elements[l];match=false;for(var m=0,ml=classesToCheck.length;m<ml;m+=1){match=classesToCheck[m].test(current.className);if(!match){break;}}
if(match){returnElements.push(current);}}
return returnElements;};}
return getElementsByClassName(className,tag,elm);};function tooltip(target_items,name){jQuery(target_items).each(function(i){jQuery("body").append("<div class='"+name+"' id='"+name+i+"'><p>"+jQuery(this).attr('title')+"</p></div>");var my_tooltip=jQuery("#"+name+i);if(jQuery(this).attr("title")!=""&&jQuery(this).attr("title")!="undefined"){jQuery(this).removeAttr("title").mouseover(function(){my_tooltip.css({opacity:0.95,display:"none"}).fadeIn(200);}).mousemove(function(kmouse){var border_top=jQuery(window).scrollTop();var border_right=jQuery(window).width();var left_pos;var top_pos;var offset=15;if(border_right-(offset*2)>=my_tooltip.width()+kmouse.pageX){left_pos=kmouse.pageX+offset;}else{left_pos=border_right-my_tooltip.width()-offset;}
if(border_top+(offset*2)>=kmouse.pageY-my_tooltip.height()){top_pos=border_top+offset;}else{top_pos=kmouse.pageY-my_tooltip.height()-offset;}
my_tooltip.css({left:left_pos,top:top_pos});}).mouseout(function(){my_tooltip.css({left:"-9999px"});});}});}
function loadBasket(){mmBasket.load();return;}
var ElementCheckInterval=setInterval("mmBasket.updatePageElements()",2000);window.onload=loadBasket;