function PileTagCounter(d,b){this.span=d;this.anchor=b;var e=this.findCounterPosition(this.span.innerHTML);this.counterSpan={position:e,has:(e.start>=0&&e.end>=1)};if(this.counterSpan.has){var a=this.span.innerHTML;this.counterSpan.prefix=a.substring(0,this.counterSpan.position.start);this.counterSpan.sufix=a.substring(this.counterSpan.position.end,a.length);var c=a.substring(this.counterSpan.position.start,this.counterSpan.position.end);this.counter=parseInt(c)}this.counterAnchor={};this.counterAnchor.has=b&&b.getAttribute("title")}PileTagCounter.prototype.increment=function(){this.counter++;if(this.counterSpan.has){this.span.innerHTML=this.counterSpan.prefix+this.counter+this.counterSpan.sufix}if(this.counterAnchor.has){this.anchor.setAttribute("title",this.anchor.getAttribute("title").replace(this.counter-1,this.counter))}};PileTagCounter.prototype.decrement=function(){this.counter--;if(this.counterSpan.has){this.span.innerHTML=this.counterSpan.prefix+this.counter+this.counterSpan.sufix}if(this.counterAnchor.has){this.anchor.setAttribute("title",this.anchor.getAttribute("title").replace(this.counter+1,this.counter))}};PileTagCounter.prototype.findCounterPosition=function(d){var a="0123456789";var c={start:-1,end:-1};var b=0;for(b=0;b<d.length;b++){if(a.indexOf(d.charAt(b))>=0){if(c.start<0){c.start=b}}else{if(c.start>-1){c.end=b;break}}}if(c.start>-1&&c.end<0){c.end=d.length}return c};function PileTagControl(b,a,d){this.piles=a;this.objId=this.piles.objId;this.appY=this.piles.appY;this.tag=b.getAttribute("tag");this.container=b;this.status=d;this.inProgress=false;var e=TaggingUtils.findNodes(b,"span","counter");var c=TaggingUtils.findNodes(b,"a");if(e&&e.length>0){this.counter=new PileTagCounter(e[0],c&&c.length>0?c[0]:null)}}PileTagControl.prototype.init=function(){if(this.piles.useCSSforImages){this.check=document.createElement("i");this.check.className=(this.piles.useCSSforImages==2)?"check swSprite s_checkUnmarked":"checkBtnOff";this.container.insertBefore(this.check,this.container.firstChild);this.setStatus(this.status);this.check.control=this;this.check.tagAction="yes";TaggingUtils.observe(this.check,"click",TaggingUtils.bindAsEventListener(this.triggerAction,this),false);TaggingUtils.observe(this.check,"mouseover",TaggingUtils.bindAsEventListener(this.onMouseOver,this),false);TaggingUtils.observe(this.check,"mouseout",TaggingUtils.bindAsEventListener(this.onMouseOut,this),false)}else{this.imgYes=document.createElement("img");this.imgYes.className="pill-yes";this.setStatus(this.status);this.container.insertBefore(this.imgYes,this.container.firstChild);this.imgYes.control=this;this.imgYes.tagAction="yes";TaggingUtils.observe(this.imgYes,"click",TaggingUtils.bindAsEventListener(this.triggerAction,this),false);TaggingUtils.observe(this.imgYes,"mouseover",TaggingUtils.bindAsEventListener(this.onMouseOver,this),false);TaggingUtils.observe(this.imgYes,"mouseout",TaggingUtils.bindAsEventListener(this.onMouseOut,this),false)}};PileTagControl.prototype.setStatus=function(a){if(this.piles.useCSSforImages){this.status=a;this.check.title=TaggingOptions.piles.clickTagSuggest.replace("TAG",this.tag);if(this.status=="yes"){this.check.className=(this.piles.useCSSforImages==2)?"check swSprite s_checkMarked":"checkBtnOn";this.check.title=TaggingOptions.piles.undoTagSuggest.replace("TAG",this.tag)}else{this.check.className=(this.piles.useCSSforImages==2)?"check swSprite s_checkUnmarked":"checkBtnOff"}}else{this.status=a;this.imgYes.title=TaggingOptions.piles.clickTagSuggest.replace("TAG",this.tag);if(this.status=="yes"){this.imgYes.src=TaggingOptions.piles.yesCheckedImg;this.imgYes.title=TaggingOptions.piles.undoTagSuggest.replace("TAG",this.tag)}else{this.imgYes.src=TaggingOptions.piles.yesImg}}};PileTagControl.prototype.onMouseOver=function(a){if(!this.inProgress){var c=a||window.event;var b=c.target||c.srcElement;if(this.piles.useCSSforImages){if(b.tagAction=="yes"&&this.status!="yes"&&b.className!="checkBtnOn"&&b.className!="check swSprite s_checkMarked"){b.className=(this.piles.useCSSforImages==2)?"check swSprite swSprite s_checkHover":"checkBtnOver"}}else{if(b.tagAction=="yes"&&this.status!="yes"&&b.src!=TaggingOptions.piles.yesCheckedImg){b.src=TaggingOptions.piles.yesHoverImg}}}};PileTagControl.prototype.onMouseOut=function(a){if(!this.inProgress){var c=a||window.event;var b=c.target||c.srcElement;if(this.piles.useCSSforImages){if(b.tagAction=="yes"&&this.status!="yes"&&b.className!="checkBtnOff"&&b.className!="check swSprite s_checkUnmarked"){b.className=(this.piles.useCSSforImages==2)?"check swSprite s_checkUnmarked":"checkBtnOff"}}else{if(b.tagAction=="yes"&&this.status!="yes"&&b.src!=TaggingOptions.piles.yesImg){b.src=TaggingOptions.piles.yesImg}}}};PileTagControl.prototype.triggerAction=function(a){if(!this.inProgress&&this.piles.ackStartWorkingControler(this)){this.inProgress=true;var h=this.appY;if(TaggingProductTags.editPanel){TaggingProductTags.editPanel.hide();TaggingProductTags.editPanel=null}var g=a||window.event;var b=g.target||g.srcElement;var c=b.src;if(this.piles.useCSSforImages){b.className="snake"}else{b.src=TaggingOptions.piles.progressImg}var d={method:"GET",asynchronous:true,sameInstance:true,trigger:b,previousImg:c};if(!this.status||this.status!=b.tagAction){d.parameters="appID="+h+"&tgTag="+this.tag+"&ASIN="+this.objId;d.onSuccess=TaggingUtils.bind(function(e){this.doneTagging(e,d)},this);d.onError=TaggingUtils.bind(function(e){this.failedTagging(e,d)},this);d.onTimeout=TaggingUtils.bind(function(e){this.failedTagging(e,d)},this);var f=new TaggingAjax.Request(d);f.makeRequest(b.tagAction=="yes"?TaggingOptions.piles.tagObjectUrlYes:TaggingOptions.piles.tagObjectUrlNo)}else{d.parameters="appID="+h+"&tgTag="+this.tag+"&ASIN="+this.objId;d.onSuccess=TaggingUtils.bind(function(e){this.doneRemove(e,d)},this);d.onError=TaggingUtils.bind(function(e){this.failedRemove(e,d)},this);d.onTimeout=TaggingUtils.bind(function(e){this.failedRemove(e,d)},this);var f=new TaggingAjax.Request(d);f.makeRequest(b.tagAction=="yes"?TaggingOptions.piles.removeObjecTagUrlYes:TaggingOptions.piles.removeObjecTagUrlNo)}}};PileTagControl.prototype.doneTagging=function(d,c){var a=TaggingUtils.trim(d.responseText);var b=c.trigger;var e="error";if(a.indexOf(this.tag+":"+this.objId+":ok")!=-1){e="success";if(b.tagAction=="yes"){this.setStatus("yes");this.addTagToYTUI();if(this.counter){this.counter.increment()}}}else{b.src=c.previousImg}this.inProgress=false;this.piles.ackDoneWorkingControler(this,"tag",b.tagAction,e)};PileTagControl.prototype.failedTagging=function(b,a){if(!b&&TaggingOptions.piles.newTagsCustomerUrl){document.location=TaggingOptions.piles.newTagsCustomerUrl}else{a.trigger.src=a.previousImg;this.inProgress=false}this.piles.ackDoneWorkingControler(this);this.piles.ackDoneWorkingControler(this,"tag",a.trigger.tagAction,"error")};PileTagControl.prototype.doneRemove=function(d,c){var a=TaggingUtils.trim(d.responseText);var b=c.trigger;var e="error";if(a.indexOf(this.objId+":ok")!=-1){e="success";b.src=TaggingOptions.piles.yesImg;this.setStatus();if(this.counter){this.counter.decrement()}this.removeTagFromYTUI()}else{b.src=c.previousImg}this.inProgress=false;this.piles.ackDoneWorkingControler(this,"remove",b.tagAction,e)};PileTagControl.prototype.failedRemove=function(b,a){a.trigger.src=a.previousImg;this.inProgress=false;this.piles.ackDoneWorkingControler(this,"remove",a.trigger.tagAction,"error")};PileTagControl.prototype.addTagToYTUI=function(){var c=document[this.objId];if(c&&!c.containsTag(this.tag)){c.addTagAnchor(this.tag);c.addTag(this.tag);var a=document.getElementById(this.objId+"-edit");if(a){a.style.display=""}var b=document.getElementById(this.objId+"-compact-edit");if(b){b.style.display=""}}};PileTagControl.prototype.removeTagFromYTUI=function(){var d=document[this.objId];if(d&&d.containsTag(this.tag)){var a=d.tags;if(a&&a.length>=1){for(i=0;i<a.length;i++){if(a[i]==this.tag){a.splice(i,1);d.tags=new Array();d.tagsReplaced(a);break}}}}if(d.tags.length==0){var b=document.getElementById(this.objId+"-edit");if(b){b.style.display="none"}var c=document.getElementById(this.objId+"-compact-edit");if(c){c.style.display="none"}}};function PilesTagger(a){this.objId=a.objId;this.appY=a.appY;this.id=this.objId+"-piles";this.notifyEle=document.getElementById(this.objId+"-piles-feedback");this.notifyEle.parentNode.style.display="";this.workingControlers=0;if(a.fruit){this.useCSSforImages=2}else{if(this.appY=="lm"||this.appY=="sylt"){this.useCSSforImages=0}else{this.useCSSforImages=1}}}PilesTagger.prototype.init=function(){var f=document[this.objId]||new Object();var b=document.getElementById(this.id);if(f&&b){this.triggers=new Array();var e=TaggingUtils.findNodes(b,"div","tag");var d=0;for(;d<e.length;d++){var a=null;if(typeof f.containsTag=="function"&&f.containsTag(e[d].getAttribute("tag"))){a="yes"}var g=new PileTagControl(e[d],this,a);this.triggers.push(g);g.init()}f.onTagAdded=TaggingUtils.bind(this.onTagAdded,this);f.onTagsReplaced=TaggingUtils.bind(this.onTagsReplaced,this)}};PilesTagger.prototype.ackStartWorkingControler=function(a){if(!TaggingProductTags.addTagInProgress||(TaggingProductTags.addTagInProgress&&this.workingControlers>0)){TaggingProductTags.addTagInProgress=true;this.workingControlers++}return this.workingControlers>0};PilesTagger.prototype.ackDoneWorkingControler=function(d,b,a,c){var e="";if(c=="success"){e=TaggingOptions.piles[c+"_"+a+"_"+b]}else{e=TaggingOptions.piles.errorMsg}if(e){e=e.replace("TAG",d.tag)}e=e||"&nbsp;";this.updateNotify(this.notifyEle,e,c=="error");if(this.workingControlers>0){this.workingControlers--;if(this.workingControlers==0){TaggingProductTags.addTagInProgress=false}}};PilesTagger.prototype.onTagAdded=function(b,a){for(i=0;i<this.triggers.length;i++){if(this.triggers[i].tag==a){this.triggers[i].setStatus("yes");if(this.triggers[i].counter){this.triggers[i].counter.increment()}return}}};PilesTagger.prototype.onTagsReplaced=function(e,c,b){if(!b){b=new Array()}for(i=0;i<this.triggers.length;i++){var a=this.triggers[i].status;var d=false;for(j=0;j<b.length;j++){if(this.triggers[i].tag==b[j]){a="yes";d=true;break}}if(!d&&a=="yes"){a=null}if(this.triggers[i].status!=a){this.triggers[i].setStatus(a);if(this.triggers[i].container){if(a=="yes"){this.triggers[i].counter.increment()}else{this.triggers[i].counter.decrement()}}}}};PilesTagger.prototype.updateNotify=function(c,d,a){var b={};c.frame=0;c.steps=50;c.innerHTML=d;c.error=a;if(d!="&nbsp;"){b.updateNotify=function(m){if(m.frame<m.steps){m.frame++;var l=(m.steps-m.frame);var f=(m.error)?{r:parseInt("0xFF"),g:parseInt("0x00"),b:parseInt("0x00")}:{r:parseInt("0xD6"),g:parseInt("0xDD"),b:parseInt("0xEA")};var k=255-parseInt(l*(255-f.r)/m.steps);var h=255-parseInt(l*(255-f.g)/m.steps);var e=255-parseInt(l*(255-f.b)/m.steps);m.style.color=(m.error)?"#DD0000":"#000000";m.style.background="rgb("+k+","+h+","+e+")";setTimeout(function(){b.updateNotify(m)},10)}};b.updateNotify(c)}};if("taggingScriptsToLoad" in window&&!--taggingScriptsToLoad&&typeof amznJQ!=="undefined"){amznJQ.declareAvailable("externalJS.tagging")};
