function padSliderStringValue(a){var b;switch(a.toString().length){case 1:b=(a.toString()+"&nbsp;&nbsp;&nbsp;&nbsp;");break;case 2:b=(a.toString()+"&nbsp;&nbsp;");break;case 3:b=(a.toString());break}return b}function addSelIndicColor(b){var a=new elObj("selIndicColor"+b,b,"color");YAHOO.util.Event.addListener("selIndicColor"+b,"change",syncIndic,a)}function addBtnSldIndicAlpha(c,f){var e=new YAHOO.widget.Menu("opacitymenu"+c,{width:"110px"});var b=f;var a=padSliderStringValue(b);var d=new YAHOO.widget.Button({type:"split",id:"opacitybutton"+c,label:'<em id="opacitybutton-currentopacity'+c+'">'+a+"%</em>",menu:e,container:"slider-alpha"+c,title:_("Set the transparency of your")+" "+_("indicator")});function g(){e.setBody('<div id="bslIndicAlpha'+c+'" tabindex="1" title="Slider"><div id="slider-thumb'+c+'"><img src="/img/thumb-n.gif" title="'+_("Set the transparency of your")+" "+_("indicator")+' alt="I""></div></div>');e.render(this.get("container"));e.align();this.unsubscribe("option",g)}d.on("option",g);e.subscribe("render",function(){oSlider=YAHOO.widget.Slider.getHorizSlider("bslIndicAlpha"+c,"slider-thumb"+c,0,100,1);oSlider.setValue(f,true);var j=YAHOO.util.Dom.get("bslIndicAlpha"+c);YAHOO.util.Dom.addClass(j,"slider-bg-110");oSlider.subscribe("change",function(){var l=oSlider.getValue();var k=YAHOO.util.Dom.get("opacitybutton-currentopacity"+c);k.innerHTML=padSliderStringValue(l)+"%"});var h=new elObj("bslIndicAlpha"+c,c,"alpha");oSlider.subscribe("change",syncChartSldAlpha,h);function i(){if((YAHOO.env.ua.ie||YAHOO.env.ua.gecko)&&j){window.setTimeout(function(){j.focus()},0)}}i();e.subscribe("show",i)})}function addBtnIndicDelete(a){var b=YAHOO.util.Dom.get("imgDelIndic"+a);var c=new elObj("indicator"+a,a);YAHOO.util.Event.addListener(b,"click",onDeleteIndicator,c)}function addRadIndicDashed(b){var a=new elObj("radIndDashed"+b,b,"dashed");YAHOO.util.Event.addListener("radIndDashedYes"+b,"change",syncIndic,a);YAHOO.util.Event.addListener("radIndDashedNo"+b,"change",syncIndic,a)}function addSldIndicThick(b,a){var d=a*10;sliderThick=YAHOO.widget.Slider.getHorizSlider("slider-bg-thick"+b,"slider-thumb-thick"+b,0,50,10);sliderThick.setValue(d,true,true,true);var c=new elObj("slider-bg-thick"+b,b,"thickness");sliderThick.subscribe("change",syncIndicSldThick,c)}function onDeleteIndicator(c,b){var a=YAHOO.util.Dom.get(b.elementId);a.parentNode.removeChild(a);indicParams[b.elementIndex]=null;updateChartParams();resizeLeftPan(0);applyStateChangeToButton("btnSaveElement",true)}function syncIndic(g,f){var d=f.elementId.substr(0,3);switch(d){case"txt":var h=YAHOO.util.Dom.get(f.elementId);var c=h.value;break;case"sel":var h=YAHOO.util.Dom.get(f.elementId);var c=h.options[h.selectedIndex].value;break;case"rad":var h=document.getElementsByName(f.elementId);var a=h.length;for(var b=0;b<a;b++){if(h[b].checked){var c=h[b].value}}break}switch(f.elementParam){case"range":indicParams[f.elementIndex].range=c;break;case"acceleration":indicParams[f.elementIndex].acceleration=c;break;case"maxAcceleration":indicParams[f.elementIndex].maxAcceleration=c;break;case"step":indicParams[f.elementIndex].step=c;break;case"color":indicParams[f.elementIndex].color=c;break;case"colorUp":indicParams[f.elementIndex].colorUp=c;break;case"colorDown":indicParams[f.elementIndex].colorDown=c;break;case"colorOscil":indicParams[f.elementIndex].colorOscil=c;break;case"thickness":indicParams[f.elementIndex].thickness=c;break;case"alpha":indicParams[f.elementIndex].alpha=c;break;case"dashed":indicParams[f.elementIndex].dashed=c;break;case"rate":indicParams[f.elementIndex].rate=c;break;case"vFactor":indicParams[f.elementIndex].vFactor=c;break;case"stddev":indicParams[f.elementIndex].stddev=c;break;case"longRange":indicParams[f.elementIndex].longRange=c;break;case"shortRange":indicParams[f.elementIndex].shortRange=c;break;case"signal":indicParams[f.elementIndex].signal=c;break;case"colorMain":indicParams[f.elementIndex].colorMain=c;break;case"colorSignal":indicParams[f.elementIndex].colorSignal=c;break;case"rangeK":indicParams[f.elementIndex].rangeK=c;break;case"rangeD":indicParams[f.elementIndex].rangeD=c;break;case"smooth":indicParams[f.elementIndex].smooth=c;break;default:indicParams[f.elementIndex][f.elementParam]=c;break}animateUpdateButton();applyStateChangeToButton("btnSaveElement",true)}function syncIndicSldThick(b,a){if(b==0){b=1}else{b=b/10}indicParams[a.elementIndex].thickness=b}function syncChartSldAlpha(b,a){if(b==0){b=1}else{b=b}indicParams[a.elementIndex].alpha=b}function setShowHideIndic(a){setShowHide("optionalParamsIndic"+a,"triggerIndic"+a)}function onAddIndicator(f){var d=YAHOO.util.Dom.get("selAddIndic");var c=d.options[d.selectedIndex].value;var g=new Object();g.type=c;indicParams[nbIndics]=g;var a="/chart/indicPicker/ajax-add-indicator/type/"+escape(c)+"/num/"+nbIndics+"/parts/"+nbParts;var b=YAHOO.util.Connect.asyncRequest("GET",a,cbAddIndicator);addSldIndicThick(nbIndics,0);addRadIndicDashed(nbIndics);addBtnSldIndicAlpha(nbIndics,100);addSelIndicColor(nbIndics);switch(g.type){case"RSI":YAHOO.util.Event.addListener("txtIndicRsiRange"+nbIndics,"change",syncIndic,new elObj("txtIndicRsiRange"+nbIndics,nbIndics,"range"));break;case"SMA":YAHOO.util.Event.addListener("txtIndicSmaRange"+nbIndics,"change",syncIndic,new elObj("txtIndicSmaRange"+nbIndics,nbIndics,"range"));break;case"EMA":YAHOO.util.Event.addListener("txtIndicEmaRange"+nbIndics,"change",syncIndic,new elObj("txtIndicEmaRange"+nbIndics,nbIndics,"range"));break;case"ROC":YAHOO.util.Event.addListener("txtIndicRocRange"+nbIndics,"change",syncIndic,new elObj("txtIndicRocRange"+nbIndics,nbIndics,"range"));break;case"SAR":YAHOO.util.Event.addListener("txtIndicSarAcceleration"+nbIndics,"change",syncIndic,new elObj("txtIndicSarAcceleration"+nbIndics,nbIndics,"acceleration"));YAHOO.util.Event.addListener("txtIndicSarMaxAcceleration"+nbIndics,"change",syncIndic,new elObj("txtIndicSarMaxAcceleration"+nbIndics,nbIndics,"maxAcceleration"));YAHOO.util.Event.addListener("txtIndicSarStep"+nbIndics,"change",syncIndic,new elObj("txtIndicSarStep"+nbIndics,nbIndics,"step"));break;case"CCI":YAHOO.util.Event.addListener("txtIndicCciRange"+nbIndics,"change",syncIndic,new elObj("txtIndicCciRange"+nbIndics,nbIndics,"range"));break;case"ZIG":YAHOO.util.Event.addListener("txtIndicZigRate"+nbIndics,"change",syncIndic,new elObj("txtIndicZigRate"+nbIndics,nbIndics,"rate"));break;case"CMO":YAHOO.util.Event.addListener("txtIndicCmoRange"+nbIndics,"change",syncIndic,new elObj("txtIndicCmoRange"+nbIndics,nbIndics,"range"));break;case"DMA":YAHOO.util.Event.addListener("txtIndicDmaRange"+nbIndics,"change",syncIndic,new elObj("txtIndicDmaRange"+nbIndics,nbIndics,"range"));break;case"GMA":YAHOO.util.Event.addListener("txtIndicGmaRange"+nbIndics,"change",syncIndic,new elObj("txtIndicGmaRange"+nbIndics,nbIndics,"range"));YAHOO.util.Event.addListener("txtIndicGmaVfactor"+nbIndics,"change",syncIndic,new elObj("txtIndicGmaVfactor"+nbIndics,nbIndics,"vFactor"));break;case"MED":break;case"MOM":YAHOO.util.Event.addListener("txtIndicMomRange"+nbIndics,"change",syncIndic,new elObj("txtIndicMomRange"+nbIndics,nbIndics,"range"));break;case"RVI":YAHOO.util.Event.addListener("txtIndicRviRange"+nbIndics,"change",syncIndic,new elObj("txtIndicRviRange"+nbIndics,nbIndics,"range"));YAHOO.util.Event.addListener("txtIndicRviStddev"+nbIndics,"change",syncIndic,new elObj("txtIndicRviStddev"+nbIndics,nbIndics,"stddev"));break;case"STR":YAHOO.util.Event.addListener("txtIndicStrRangeRsi"+nbIndics,"change",syncIndic,new elObj("txtIndicStrRangeRsi"+nbIndics,nbIndics,"rangeRsi"));YAHOO.util.Event.addListener("txtIndicStrRangeSto"+nbIndics,"change",syncIndic,new elObj("txtIndicStrRangeSto"+nbIndics,nbIndics,"rangeSto"));break;case"TMA":YAHOO.util.Event.addListener("txtIndicTmaRange"+nbIndics,"change",syncIndic,new elObj("txtIndicTmaRange"+nbIndics,nbIndics,"range"));break;case"WEC":case"CLV":case"VIG":case"AVG":case"TYP":case"ATR":break;case"ARO":YAHOO.util.Event.addListener("txtIndicAroRange"+nbIndics,"change",syncIndic,new elObj("txtIndicAroRange"+nbIndics,nbIndics,"range"));YAHOO.util.Event.addListener("selIndicAroUpColor"+nbIndics,"change",syncIndic,new elObj("selIndicAroUpColor"+nbIndics,nbIndics,"colorUp"));YAHOO.util.Event.addListener("selIndicAroDownColor"+nbIndics,"change",syncIndic,new elObj("selIndicAroDownColor"+nbIndics,nbIndics,"colorDown"));YAHOO.util.Event.addListener("selIndicAroOscilColor"+nbIndics,"change",syncIndic,new elObj("selIndicAroOscilColor"+nbIndics,nbIndics,"colorOscil"));break;case"DMI":YAHOO.util.Event.addListener("txtIndicDmiRange"+nbIndics,"change",syncIndic,new elObj("txtIndicAroRange"+nbIndics,nbIndics,"range"));YAHOO.util.Event.addListener("selIndicDmiDmpColor"+nbIndics,"change",syncIndic,new elObj("selIndicDmiDmpColor"+nbIndics,nbIndics,"colorUp"));YAHOO.util.Event.addListener("selIndicDmiDmmColor"+nbIndics,"change",syncIndic,new elObj("selIndicDmiDmmColor"+nbIndics,nbIndics,"colorDown"));break;case"CMF":YAHOO.util.Event.addListener("txtIndicCmfRange"+nbIndics,"change",syncIndic,new elObj("txtIndicCmfRange"+nbIndics,nbIndics,"range"));break;case"MACD":YAHOO.util.Event.addListener("txtIndicMacdLong"+nbIndics,"change",syncIndic,new elObj("txtIndicMacdLong"+nbIndics,nbIndics,"long"));YAHOO.util.Event.addListener("txtIndicMacdShort"+nbIndics,"change",syncIndic,new elObj("txtIndicMacdShort"+nbIndics,nbIndics,"short"));YAHOO.util.Event.addListener("txtIndicMacdSignal"+nbIndics,"change",syncIndic,new elObj("txtIndicMacdSignal"+nbIndics,nbIndics,"signal"));YAHOO.util.Event.addListener("selIndicMacdMainColor"+nbIndics,"change",syncIndic,new elObj("selIndicMacdMainColor"+nbIndics,nbIndics,"colorMain"));YAHOO.util.Event.addListener("selIndicMacdSignalColor"+nbIndics,"change",syncIndic,new elObj("selIndicMacdSignalColor"+nbIndics,nbIndics,"colorSignal"));break;case"BOL":YAHOO.util.Event.addListener("txtIndicBolRange"+nbIndics,"change",syncIndic,new elObj("txtIndicBolRange"+nbIndics,nbIndics,"range"));YAHOO.util.Event.addListener("selIndicBolUpColor"+nbIndics,"change",syncIndic,new elObj("selIndicBolUpColor"+nbIndics,nbIndics,"colorUp"));YAHOO.util.Event.addListener("selIndicBolDownColor"+nbIndics,"change",syncIndic,new elObj("selIndicBolDownColor"+nbIndics,nbIndics,"colorDown"));break;case"STOF":YAHOO.util.Event.addListener("txtIndicStofRangeK"+nbIndics,"change",syncIndic,new elObj("txtIndicStofRangeK"+nbIndics,nbIndics,"rangeK"));YAHOO.util.Event.addListener("txtIndicStofRangeD"+nbIndics,"change",syncIndic,new elObj("txtIndicStofRangeD"+nbIndics,nbIndics,"rangeD"));YAHOO.util.Event.addListener("selIndicStofUpColor"+nbIndics,"change",syncIndic,new elObj("selIndicStofUpColor"+nbIndics,nbIndics,"colorUp"));YAHOO.util.Event.addListener("selIndicStofDownColor"+nbIndics,"change",syncIndic,new elObj("selIndicStofDownColor"+nbIndics,nbIndics,"colorDown"));break;case"STOS":YAHOO.util.Event.addListener("txtIndicStosRangeK"+nbIndics,"change",syncIndic,new elObj("txtIndicStosRangeK"+nbIndics,nbIndics,"rangeK"));YAHOO.util.Event.addListener("txtIndicStosRangeD"+nbIndics,"change",syncIndic,new elObj("txtIndicStosRangeD"+nbIndics,nbIndics,"rangeD"));YAHOO.util.Event.addListener("txtIndicStosSmooth"+nbIndics,"change",syncIndic,new elObj("txtIndicStosSmooth"+nbIndics,nbIndics,"smooth"));YAHOO.util.Event.addListener("selIndicStosUpColor"+nbIndics,"change",syncIndic,new elObj("selIndicStosUpColor"+nbIndics,nbIndics,"colorUp"));YAHOO.util.Event.addListener("selIndicStosDownColor"+nbIndics,"change",syncIndic,new elObj("selIndicStosDownColor"+nbIndics,nbIndics,"colorDown"));break}var f=YAHOO.util.Event;f.onAvailable("imgDelIndic"+nbIndics,addBtnIndicDelete,nbIndics);f.onAvailable("radPartIndGroup"+nbIndics,syncIndPartBtnGrp,nbIndics);f.onAvailable("optionalParamsIndic"+nbIndics,setShowHideIndic,nbIndics);nbIndics=nbIndics+1;updateChartParams("part",0);resizeLeftPan(0)}var cbAddIndicator={success:function(e){var b=YAHOO.util.Dom.get("indicSelector");var a=document.createElement("div");a.id="indicator"+(nbIndics-1);b.appendChild(a);YAHOO.util.Dom.get("indicator"+(nbIndics-1)).innerHTML=e.responseText;var d=$D.getElementsByClassName("Indicator_User_Param","input",a);for(var c=0;c<d.length;c++){d[c].innerHTML=c;YAHOO.util.Event.addListener(d[c].id,"change",syncIndic,new elObj(d[c].id,(nbIndics-1),d[c].name));indicParams[(nbIndics-1)][d[c].name]=d[c].value}applyStateChangeToButton("btnSaveElement",true);resizeLeftPan(0)},failure:function(a){alert(_("Error in the function")+" cbAddIndicator")},cache:false};function getIndicHelp(){var a=$("selAddIndic");var d=a.options[a.selectedIndex].value;var b="/chart/indicpicker/help/code/"+d;var c=YAHOO.util.Connect.asyncRequest("GET",b,cbIndicHelp)}var cbIndicHelp={success:function(b){var a=YAHOO.lang.JSON.parse(b.responseText);switch(a.status){case"ok":window.open(a.url,"helpWindow");break;case"ko":alert("Aide indisponible pour cet indicateur");break}},failure:function(a){alert(_("Error in the function")+" cbIndicHelp")},cache:false};YAHOO.util.Event.onContentReady("addIndicator",function(){var a=new YAHOO.widget.Button("btnAddIndic");a.addListener("click",onAddIndicator)});YAHOO.util.Event.onContentReady("addIndicator",function(){var a=$("helpImg");YAHOO.util.Event.addListener(a,"click",getIndicHelp)});