
var osX=0;var osY=0;var intGraphHeight=0;var run="";var loaded=false;var g2_erros="";var tx_frais_AV=0.8;var tx_imp4_AV=45;var tx_imp8_AV=25;var tx_impF_AV=17.5;var tx_impA_AV=10;var abb_cel_AV=30000;var abb_mar_AV=60000;var calcul_ok=false;var VR=new Array();var VN=new Array();var valCapacite;var valValeurRachat;var valValeurNet;var valCapitalDepart;var valHorizon;var valRepartMon;var valRepartAct;var valRepartObl;var valRentMon;var valRentAct;var valRentObl;var N1;var Apport;function isOverflow(n)
{return(isNaN(n)||n==Number.POSITIVE_INFINITY||n==Number.NEGATIVE_INFINITY)}
function isNumeric(c)
{return(c==','||c=='.'||c=='-'||(c>='0'&&c<='9'))}
function IsNumeric(sText)
{var ValidChars="0123456789.,";var IsNumber=true;var Char;for(i=0;i<sText.length&&IsNumber==true;i++)
{Char=sText.charAt(i);if(ValidChars.indexOf(Char)==-1)
{IsNumber=false;}}
return IsNumber;}
function removeNonNumerics(s)
{if(s==null)return null
s=''+s
var tmp=''
var isLeadingZero=true
for(var i=0;i<s.length;i++)
{var c=s.charAt(i)
if(isNumeric(c))
{if(isLeadingZero==true&&c=='0')
{continue;}
else
{isLeadingZero=false}
tmp=tmp+c}}
return tmp}
function removeCommas(s)
{if(s==null)return null
s=''+s
var tmp=''
var isLeadingZero=true
for(var i=0;i<s.length;i++)
{var c=s.charAt(i)
if(isNumeric(c))
{if(c==',')
{c='.';}
if(isLeadingZero==true&&c=='0')
{continue;}
else
{isLeadingZero=false}
tmp=tmp+c}}
return tmp}
function strToInt(s)
{var n=parseInt(removeNonNumerics(s))
if(isNaN(n))
{n=0}
return(n<0)?0:n;}
function intToStr(i)
{if(i!=0){return i}
else{return"0"}}
function addCommas(tmp)
{var s=''
var len=tmp.length
var end=len-1
for(var i=0;i<len;i++)
{c=tmp.charAt(end-i)
s=c+((i>2&&i%3==0)?' ':'')+s}
return s}
function _numToUnits(n,units_prefix,decimal_places,units_suffix)
{if(isOverflow(n))return'<i>numeric overflow</i>'
var isNegative=(n<0)?true:false
var s=''
var d=strToInt(decimal_places)
var x=Math.abs(Math.round(n*Math.pow(10,decimal_places)))
if(x==0)
{var defaultStr='0'
if(d>0)
{defaultStr+=','
for(var i=0;i<d;i++)defaultStr+='0'}
defaultStr=units_prefix+defaultStr+units_suffix
return defaultStr}
if(d==0)
{var tmp=''+x
s=addCommas(tmp)}
else
{var leftTmp=''+x
var rightTmp=''+x
var len=leftTmp.length
for(var i=0;i<d+1-len;i++)
{leftTmp='0'+leftTmp
rightTmp='0'+rightTmp}
len=leftTmp.length
var decimalSplit=len-d
var leftStr=addCommas(leftTmp.substring(0,decimalSplit))
var rightStr=rightTmp.substring(decimalSplit,len)
s=leftStr+','+rightStr}
s=units_prefix+s+units_suffix
if(isNegative)s='-'+s
return s}
function numToFloat(n)
{if(n!=0){return _numToUnits(n,'',2,'')}
else{return 0}}
function numToDollars(n)
{return _numToUnits(n,'$',0,'')}
function numToPercent(n)
{return _numToUnits(n,'',2,' %')}
function numToUnits(n,units)
{return _numToUnits(n,'',0,' '+units)}
function numToYear(n)
{if(n==1)
{return _numToUnits(n,'',0,' year');}
else
{return _numToUnits(n,'',0,' years');}}
function numToPercentStr(num){var tmp=new String(num)
return tmp+"%"}
function strToFloat(s)
{var n=parseFloat(removeCommas(s))
if(isNaN(n))
{n=0;}
else{var tab=removeCommas(s).split(".")
var toParse=tab[0];if(tab.length>1){toParse=toParse+"."
for(var j=0;j<(tab[1].length<2?tab[1].length:2);j++){toParse=toParse+tab[1].charAt(j);}}
n=parseFloat(toParse);}
return(n<0)?0:n;}
function strToIntRange(s,low,high){var num=strToInt(s);if(num<low)
num=low;else
if(num>high)
num=high;return num;}
function strToFloatRange(s,low,high){var num=strToFloat(s);if(num<low)
num=low;else
if(num>high)
num=high;return num;}
function floatToPrecisionStr(f,n)
{var tmp=''+Math.round(f*Math.pow(10,n))
var decimalSplit=tmp.length-n
return tmp.substring(0,decimalSplit)+'.'+tmp.substring(decimalSplit,n+1)}
function formatAndSum(myParam){var f=document.capital3;if(myParam!=null){f.RepartTot.value=numToFloat(strToFloat(strToFloat(f.RepartMon.value)+strToFloat(f.RepartAct.value)+strToFloat(f.RepartObl.value)));f.RendTot.value=numToFloat((strToFloat(f.RepartMon.value)*strToFloat(f.RentMon.value)+strToFloat(f.RepartAct.value)*strToFloat(f.RentAct.value)+strToFloat(f.RepartObl.value)*strToFloat(f.RentObl.value))/100);if(strToFloat(f.elements[myParam].value)!=0){f.elements[myParam].value=numToFloat(strToFloat(f.elements[myParam].value));}}
else{f.RepartTot.value=numToFloat(strToFloat(strToFloat(f.RepartMon.value)+strToFloat(f.RepartAct.value)+strToFloat(f.RepartObl.value)));f.RendTot.value=numToFloat((strToFloat(f.RepartMon.value)*strToFloat(f.RentMon.value)+strToFloat(f.RepartAct.value)*strToFloat(f.RentAct.value)+strToFloat(f.RepartObl.value)*strToFloat(f.RentObl.value))/100);}}
function format(formno,myParam){var f=eval("document.capital"+formno);f.elements[myParam].value=numToFloat(strToFloat(f.elements[myParam].value));}
function TypeGestion_onchange()
{var f=document.capital3;if(f.TypeGestion.options[1].selected){f.RepartMon.value=numToFloat(strToFloat(5));f.RepartAct.value=numToFloat(strToFloat(70));f.RepartObl.value=numToFloat(strToFloat(25));}
else if(f.TypeGestion.options[3].selected){f.RepartMon.value=numToFloat(strToFloat(0));f.RepartAct.value=numToFloat(strToFloat(100));f.RepartObl.value=numToFloat(strToFloat(0));}
else if(f.TypeGestion.options[2].selected){f.RepartMon.value=numToFloat(strToFloat(10));f.RepartAct.value=numToFloat(strToFloat(20));f.RepartObl.value=numToFloat(strToFloat(70));}
else{f.RepartMon.value=numToFloat(strToFloat(8));f.RepartAct.value=numToFloat(strToFloat(40));f.RepartObl.value=numToFloat(strToFloat(52));}
formatAndSum();}
function monav(idname,pic)
{if(document.images&&loaded)
{document.images[idname].src=pic;}}
var curhelp="";function showhelp(formno,qty,helpid)
{if(loaded)
{helpid="help"+formno+"-"+helpid;if(curhelp=="")
{for(n=1;n<=qty;n++){document.getElementById("help"+formno+"-"+n).style.display="none";}}
else
{document.getElementById(curhelp).style.display="none";}
if(document.getElementById(helpid))
{document.getElementById(helpid).style.display="";curhelp=helpid;document.getElementById("showall"+formno).style.display="";}}}
function showall(formno,qty)
{for(n=1;n<=qty;n++)
{document.getElementById("help"+formno+"-"+n).style.display="";}
window.focus();curhelp="";document.getElementById("showall"+formno).style.display="none";}
function jump(pageFrom,pageTo,helpqty)
{g2_erros="";if(ValidatePage(pageFrom))
{if(pageFrom!=pageTo)
{eval("document.capital"+pageFrom+".style.visibility='hidden';");eval("document.capital"+pageTo+".style.visibility='visible';");eval("document.capital"+pageTo+".style.position='static';");eval("document.capital"+pageFrom+".style.position='absolute';");}
vtemp=document.capital6.offsetTop;if(helpqty>0)
{eval("showall("+pageTo+","+helpqty+")");}
if(pageTo==5)
{calculCapital();DisplayResults();}
if(pageTo==6)
{calculCapital();DisplayGraph()}}
else
{alert("Certaines donn\u00E9es sont erron\u00E9es.\nV\u00E9rifiez ces champs: "+g2_erros)}}
function addError(name)
{g2_erros=g2_erros+"\n"+name;}
function check3Inputs(formno,myInput1,myInput2,myInput3)
{var myInput1=eval("document.capital"+formno+"."+myInput1+".value");var myInput2=eval("document.capital"+formno+"."+myInput2+".value");var myInput3=eval("document.capital"+formno+"."+myInput3+".value");if(((parseFloat(myInput1)!=0)&&(parseFloat(myInput2)!=0))||((parseFloat(myInput1)!=0)&&(parseFloat(myInput3)!=0))||((parseFloat(myInput2)!=0)&&(parseFloat(myInput3)!=0)))
return false;else
return true;}
function checkTotalRepart(formno,myInput)
{var str=eval("document.capital"+formno+"."+myInput+".value");str=str.replace(/ /g,"");if(IsNumeric(str))
{if(parseFloat(str)==100)
{return true;}
else
{return false;}}
else
{return false;}}
function checkInput(formno,myInput,myType)
{var str,arg;var str=eval("document.capital"+formno+"."+myInput+".value");if(str!="")
{arg=str;arg=arg.replace(/ /g,"");myInput=arg;if(IsNumeric(arg))
{switch(myType)
{case"N":if(parseFloat(myInput)>0)
{return true;}
else
{return false;}
break;case"I":if((str.indexOf(",")!=-1)||(str.indexOf(".")!=-1)||(str==0))
return false;else
return true;break;case"N0":if(parseFloat(myInput)>=0)
return true;else
return false;break;case"N0C":if(parseFloat(myInput)!=0)
{if(parseFloat(myInput)<=parseFloat(eval("document.capital"+formno+"."+"CapitalDepart"+".value")))
return false;else
return true;}
else
return true;break;case"P0":myInput=myInput.replace(/,/g,".");if((parseFloat(myInput)>=0)&&(parseFloat(myInput)<=100))
return true;else
return false;break;case"P":myInput=myInput.replace(/,/g,".");if((parseFloat(myInput)>0)&&(parseFloat(myInput)<=100))
{return true;}
else
{return false;}
break;}}
else
{return false;}}
else
{return false;}}
function ValidatePage(tmp_current)
{if(tmp_current==2)
{if(!checkInput(2,"CapitalDepart","N"))
{addError("Capital de d\u00E9part");}
if(!checkInput(2,"Horizon","I"))
{addError("Horizon d'investissement");}
if(!checkInput(2,"Capacite","N0"))
{addError("Capacite d'\u00E9pargne annuelle");}
if(!checkInput(2,"ValeurRachat","N0C"))
{addError("Valeur avant imp\u00F4ts \u00E0 terme");}
if(!checkInput(2,"ValeurNet","N0C"))
{addError("Valeur apr\u00E8s imp\u00F4ts \u00E0 terme");}
if(!check3Inputs(2,"Capacite","ValeurNet","ValeurRachat"))
{addError("Donnez au plus l'une des trois valeurs suivantes (les autres doivent \u00EAtre \u00E0 0) :\nCapacite d'\u00E9pargne annuelle\nValeur avant imp\u00F4ts \u00E0 terme\nValeur apr\u00E8s imp\u00F4ts \u00E0 terme");}}
if(tmp_current==3)
{if(!checkInput(3,"RepartMon","P0"))
{addError("R\u00E9partition Mon\u00E9taire");}
if(!checkInput(3,"RepartAct","P0"))
{addError("R\u00E9partition Actions");}
if(!checkInput(3,"RepartObl","P0"))
{addError("R\u00E9partition Obligations");}
if(!checkInput(3,"RentMon","P0"))
{addError("Rentabilit\u00E9 Mon\u00E9taire");}
if(!checkInput(3,"RentAct","P0"))
{addError("Rentabilit\u00E9 Actions");}
if(!checkInput(3,"RentObl","P0"))
{addError("Rentabilit\u00E9 Obligatfions");}
if(!checkTotalRepart(3,"RepartTot"))
{addError("R\u00E9partition Total");return false;}}
if(tmp_current==4)
{if(!checkInput(4,"FraisAV","P"))
{addError("<P>Taux de frais de gestion</P>");return false;}}
if(g2_erros!="")
return false;return true;}
function calculCapital()
{var Repartition=new Array();var Rentabilite=new Array();var Portefeuille=new Array();var Prix=new Array();var FraisGestion=new Array();var Impot=new Array();var Coef=0;var Param1=0;var Param2=0;var Param3=0;var Apport_without_abbt=0;var Apport_with_abbt=0;valCapacite=0;valValeurRachat=0;valValeurNet=0;valCapitalDepart=0;valHorizon=0;valRepartMon=0;valRepartAct=0;valRepartObl=0;valRentMon=0;valRentAct=0;valRentObl=0;valCapitalDepart=document.capital2.CapitalDepart.value;valCapitalDepart=valCapitalDepart.replace(/,/g,".");valCapitalDepart=valCapitalDepart.replace(/ /g,"");valCapitalDepart=parseFloat(valCapitalDepart);CapitalDepart=valCapitalDepart;valHorizon=document.capital2.Horizon.value;valHorizon=valHorizon.replace(/,/g,".");valHorizon=valHorizon.replace(/ /g,"");valHorizon=parseFloat(valHorizon);N=valHorizon;valCapacite=document.capital2.Capacite.value;valCapacite=valCapacite.replace(/,/g,".");valCapacite=valCapacite.replace(/ /g,"");valCapacite=parseFloat(valCapacite);Apport=valCapacite;valValeurRachat=document.capital2.ValeurRachat.value;valValeurRachat=valValeurRachat.replace(/,/g,".");valValeurRachat=valValeurRachat.replace(/ /g,"");valValeurRachat=parseFloat(valValeurRachat);ValeurRachat=valValeurRachat;valValeurNet=document.capital2.ValeurNet.value;valValeurNet=valValeurNet.replace(/,/g,".");valValeurNet=valValeurNet.replace(/ /g,"");valValeurNet=parseFloat(valValeurNet);ValeurNet=valValeurNet;valRepartMon=document.capital3.RepartMon.value;valRepartMon=valRepartMon.replace(/,/g,".");valRepartMon=valRepartMon.replace(/ /g,"");valRepartMon=parseFloat(valRepartMon)/100;valRepartAct=document.capital3.RepartAct.value;valRepartAct=valRepartAct.replace(/,/g,".");valRepartAct=valRepartAct.replace(/ /g,"");valRepartAct=parseFloat(valRepartAct)/100;valRepartObl=document.capital3.RepartObl.value;valRepartObl=valRepartObl.replace(/,/g,".");valRepartObl=valRepartObl.replace(/ /g,"");valRepartObl=parseFloat(valRepartObl)/100;Repartition[1]=valRepartMon;Repartition[2]=valRepartAct;Repartition[3]=valRepartObl;valRentMon=document.capital3.RentMon.value;valRentMon=valRentMon.replace(/,/g,".");valRentMon=valRentMon.replace(/ /g,"");valRentMon=parseFloat(valRentMon)/100;valRentAct=document.capital3.RentAct.value;valRentAct=valRentAct.replace(/,/g,".");valRentAct=valRentAct.replace(/ /g,"");valRentAct=parseFloat(valRentAct)/100;valRentObl=document.capital3.RentObl.value;valRentObl=valRentObl.replace(/,/g,".");valRentObl=valRentObl.replace(/ /g,"");valRentObl=parseFloat(valRentObl)/100;Rentabilite[1]=valRentMon;Rentabilite[2]=valRentAct;Rentabilite[3]=valRentObl;FraisAV=document.capital4.FraisAV.value;FraisAV=FraisAV.replace(/,/g,".");FraisAV=FraisAV.replace(/ /g,"");FraisAV=parseFloat(FraisAV)/100;TxImp4=parseFloat(tx_imp4_AV)/100;TxImp8=parseFloat(tx_imp8_AV)/100;TxImpF=parseFloat(tx_impF_AV)/100;TxImpA=parseFloat(tx_impA_AV)/100;AbbatementAV=parseFloat(abb_cel_AV);N1=N;for(j=1;j<=3;j++)
{Coef=Coef+Repartition[j]*Rentabilite[j];}
Portefeuille[0]=CapitalDepart;Prix[0]=Portefeuille[0];FraisGestion[0]=0;Impot[0]=0;VR[0]=Portefeuille[0];VN[0]=Portefeuille[0];if((ValeurRachat==0)&&(ValeurNet==0))
{for(i=1;i<=N;i++)
{Portefeuille[i]=VR[i-1]*(1+Coef);Prix[i]=Prix[i-1]+Apport;FraisGestion[i]=Portefeuille[i]*FraisAV;VR[i]=(VR[i-1]+Apport)*(1+Coef)-FraisGestion[i];if(i<=4)
{Impot[i]=(VR[i]-Prix[i])*TxImp4;}
else if((i>4)&&(i<=8))
{Impot[i]=(VR[i]-Prix[i])*TxImp8;}
else
{if((VR[i]-Prix[i])<AbbatementAV)
{Impot[i]=(VR[i]-Prix[i])*TxImpA;}
else
{Impot[i]=(VR[i]-Prix[i]-AbbatementAV)*(TxImpF-TxImpA)+(VR[i]-Prix[i])*TxImpA;}}
VN[i]=VR[i-1]*(1+Coef)-Impot[i];}
calcul_ok=true;}
else if((Apport==0)&&(ValeurRachat!=0)&&(ValeurNet==0))
{VR[N]=ValeurRachat;for(i=0;i<=N-1;i++)
{Param1=Param1+Math.pow((1-FraisAV),i)*Math.pow((1+Coef),(i+1));}
Apport=(VR[N]-VR[0]*Math.pow((1-FraisAV),N)*Math.pow((1+Coef),N))/Param1
if(Apport<0)
{Apport=0;}
for(i=1;i<=N-1;i++)
{Portefeuille[i]=VR[i-1]*(1+Coef);Prix[i]=Prix[i-1]+Apport;FraisGestion[i]=Portefeuille[i]*FraisAV;VR[i]=(VR[i-1]+Apport)*(1+Coef)-FraisGestion[i];if(i<=4)
{Impot[i]=(VR[i]-Prix[i])*TxImp4;}
else if((i>4)&&(i<=8))
{Impot[i]=(VR[i]-Prix[i])*TxImp8;}
else
{if((VR[i]-Prix[i])<AbbatementAV)
{Impot[i]=(VR[i]-Prix[i])*TxImpA;}
else
{Impot[i]=(VR[i]-Prix[i]-AbbatementAV)*(TxImpF-TxImpA)+(VR[i]-Prix[i])*TxImpA;}}
VN[i]=VR[i-1]*(1+Coef)-Impot[i];}
Portefeuille[N]=VR[N-1]*(1+Coef);Prix[N]=Prix[N-1]+Apport;FraisGestion[N]=Portefeuille[N]*FraisAV;VR[N]=(VR[N-1]+Apport)*(1+Coef)-FraisGestion[N];if(N<=4)
{Impot[N]=(VR[N]-Prix[N])*TxImp4;}
else if((N>4)&&(N<=8))
{Impot[N]=(VR[N]-Prix[N])*TxImp8;}
else
{if((VR[N]-Prix[N])<AbbatementAV)
{Impot[N]=(VR[N]-Prix[N])*TxImpA;}
else
{Impot[N]=(VR[N]-Prix[N]-AbbatementAV)*(TxImpF-TxImpA)+(VR[N]-Prix[N])*TxImpA;}}
VN[N]=VR[N-1]*(1+Coef)-Impot[N];for(i=0;i<=N;i++)
{if(VR[i]>ValeurRachat)
{N1=i;break;}}
calcul_ok=true;}
else if((Apport==0)&&(ValeurRachat==0)&&(ValeurNet!=0))
{VN[N]=ValeurNet;for(i=0;i<=N-2;i++)
{Param2=Param2+Math.pow((1+FraisAV),i)*Math.pow((1+Coef),(i+2));}
if(N<=4)
{Param2=Param2*(1-TxImp4*(1-FraisAV));Apport=(VN[N]-VR[0]*Math.pow((1-FraisAV),(N-1))*Math.pow((1+Coef),N)*(1-TxImp4*(1-FraisAV))-TxImp4*Prix[0])/(Param2-TxImp4*(1+Coef-N));}
else if((N>4)&&(N<=8))
{Param2=Param2*(1-TxImp8*(1-FraisAV));Apport=(VN[N]-VR[0]*Math.pow((1-FraisAV),(N-1))*Math.pow((1+Coef),N)*(1-TxImp8*(1-FraisAV))-TxImp8*Prix[0])/(Param2-TxImp8*(1+Coef-N));}
else
{Param2=Param2*(1-TxImpF*(1-FraisAV));Apport_without_abbt=(VN[N]-VR[0]*Math.pow((1-FraisAV),(N-1))*Math.pow((1+Coef),N)*(1-TxImpF*(1-FraisAV))-TxImpF*Prix[0]-AbbatementAV*(TxImpF-TxImpA))/(Param2-TxImpF*(1+Coef-N));Apport_with_abbt=(VN[N]-VR[0]*Math.pow((1-FraisAV),(N-1))*Math.pow((1+Coef),N)*(1-TxImpF*(1-FraisAV))-TxImpF*Prix[0])/(Param2-TxImpF*(1+Coef-N));for(i=0;i<=N-1;i++)
{Param3=Param3+Math.pow((1+Coef),i)*Math.pow((1-TxImpF),(i-1));}
if((VR[0]*Math.pow((1+Coef),N)*Math.pow((1-TxImpF),N)+Apport_without_abbt*Param3)<AbbatementAV)
{Apport=Apport_without_abbt;}
else
{Apport=Apport_with_abbt;}}
if(Apport<0)
{Apport=0;}
for(i=1;i<=N-1;i++)
{Portefeuille[i]=VR[i-1]*(1+Coef);Prix[i]=Prix[i-1]+Apport;FraisGestion[i]=Portefeuille[i]*FraisAV;VR[i]=(VR[i-1]+Apport)*(1+Coef)-FraisGestion[i];if(i<=4)
{Impot[i]=(VR[i]-Prix[i])*TxImp4;}
else if((i>4)&&(i<=8))
{Impot[i]=(VR[i]-Prix[i])*TxImp8;}
else
{if(VR[i]-Prix[i]<AbbatementAV)
{Impot[i]=(VR[i]-Prix[i])*TxImpA;}
else
{Impot[i]=(VR[i]-Prix[i]-AbbatementAV)*(TxImpF-TxImpA)+(VR[i]-Prix[i])*TxImpA;}}
VN[i]=VR[i-1]*(1+Coef)-Impot[i]}
Portefeuille[N]=VR[N-1]*(1+Coef);Prix[N]=Prix[N-1]+Apport;FraisGestion[N]=Portefeuille[N]*FraisAV;VR[N]=(VR[N-1]+Apport)*(1+Coef)-FraisGestion[N];if(N<=4)
{Impot[N]=(VR[N]-Prix[N])*TxImp4;}
else if((N>4)&&(N<=8))
{Impot[N]=(VR[N]-Prix[N])*TxImp8;}
else
{if(VR[N]-Prix[N]<AbbatementAV)
{Impot[N]=(VR[N]-Prix[N])*TxImpA;}
else
{Impot[N]=(VR[N]-Prix[N]-AbbatementAV)*(TxImpF-TxImpA)+(VR[N]-Prix[N])*TxImpA;}}
VN[N]=VR[N-1]*(1+Coef)-Impot[N];for(i=0;i<=N;i++)
{if(VN[i]>ValeurNet)
{N1=i;break;}}
calcul_ok=true;}
else
{Apport=0;VR[N]=0;VN[N]=0;calcul_ok=false;}}
function Left(str,n){if(n<=0)
return"";else if(n>String(str).length)
return str;else
return String(str).substring(0,n);}
function Right(str,n){if(n<=0)
return"";else if(n>String(str).length)
return str;else{var iLen=String(str).length;return String(str).substring(iLen,iLen-n);}}
function addCommasbis(tmp)
{s="";lon=tmp.length;fin=lon;for(i=0;i<=lon-1;i++)
{c=Right(Left(tmp,fin-i),1);test=i%3;if((i>2)&&(test==0))
{ajout=" ";}
else
{ajout="";}
s=c+ajout+s;}
return s;}
function numToFloatbis(n)
{n=n.replace(/ /g,"");if(n.length>0)
{return _numToUnits(n,"",0,"")}}
function putValue(myInput,defInput)
{if(myInput!="")
return numToFloatbis(myInput);else
return numToFloatbis(defInput);}
function addGraph(){var buffer=new String();var values=new Array();values[0]=new Array();var nams=new Array();var strOut="";for(i=0;i<=N;i++)
{if(calcul_ok)
values[0][i]=VN[i];else
values[0][i]=0;}
nams[0]='Assurance vie';var os=navigator.userAgent;var browserName=navigator.appName;if(browserName=="Netscape"||browserName=="Opera"||os.indexOf("WIN95")!=-1||os.indexOf("Windows 95")!=-1)
{return"";}
else{buffer=myVMLDrawGraph(250,150,values,nams,"AV");return buffer;}}
function DisplayResults()
{var strResults="";strResults=strResults+"<table width=\"100%\" border=\"0\">";strResults=strResults+"<tr>";strResults=strResults+"<td><p>Capital de d\u00E9part</p></td>";strResults=strResults+"<td><p>"+putValue(document.capital2.CapitalDepart.value,0)+"&nbsp;\u20AC</p></td>";strResults=strResults+"</tr>";strResults=strResults+"<tr>";strResults=strResults+"<td><p>Horizon d'investissement</p></td>";strResults=strResults+"<td><p>"+putValue(document.capital2.Horizon.value,0)+"&nbsp;ans</p></td>";strResults=strResults+"</tr>";if(calcul_ok)
{if((valCapacite!=0)&&(valValeurRachat==0)&&(valValeurNet==0))
{strResults=strResults+"<tr>";strResults=strResults+"<td><p>Capacit\u00E9 d'\u00E9pargne annuelle</p></td>";strResults=strResults+"<td><p>"+putValue(valCapacite.toString(),0)+"&nbsp;\u20AC</p></td>";strResults=strResults+"</tr>";strResults=strResults+"<tr>";strResults=strResults+"<td colspan=2><br>";strResults=strResults+"<p>Avec une capacit\u00E9 d'\u00E9pargne annuelle de <br><b>"+numToFloatbis(valCapacite.toString())+"&nbsp;\u20AC</b>,";strResults=strResults+"la valeur avant imp\u00F4ts \u00E0 terme sera de <br><b>"+numToFloatbis(VR[N1].toString())+"&nbsp;\u20AC</b>,";strResults=strResults+"et la valeur apr\u00E8s imp\u00F4ts \u00E0 terme sera de <br><b>"+numToFloatbis(VN[N1].toString())+"&nbsp;\u20AC</b>.</p>";strResults=strResults+"</td>";strResults=strResults+"</tr>";}
else if((valCapacite==0)&&(valValeurRachat!=0)&&(valValeurNet==0))
{if(N1==valHorizon)
{strResults=strResults+"<tr>";strResults=strResults+"<td><p>Valeur avant imp\u00F4ts souhait\u00E9e</p></td>";strResults=strResults+"<td><p>"+putValue(valValeurRachat.toString(),0)+"&nbsp;\u20AC</p></td>";strResults=strResults+"</tr>";strResults=strResults+"<tr>";strResults=strResults+"<td colspan=2><br>";strResults=strResults+"<p>Avec une capacit\u00E9 d'\u00E9pargne annuelle de <br><b>"+numToFloatbis(Apport.toString())+"&nbsp;\u20AC</b>,";strResults=strResults+"la valeur avant imp\u00F4ts \u00E0 terme sera de <br><b>"+numToFloatbis(VR[N1].toString())+"&nbsp;\u20AC</b>.";strResults=strResults+"<br>La valeur apr\u00E8s imp\u00F4ts \u00E0 terme sera alors de <br><b>"+numToFloatbis(VN[N1].toString())+"&nbsp;\u20AC</b>.</p>";strResults=strResults+"</td>";strResults=strResults+"</tr>";}
else
{strResults=strResults+"<tr>";strResults=strResults+"<td><p>Valeur avant imp\u00F4ts souhait\u00E9e</p></td>";strResults=strResults+"<td><p>"+putValue(valValeurRachat.toString(),0)+"&nbsp;\u20AC</p></td>";strResults=strResults+"</tr>";strResults=strResults+"<tr>";strResults=strResults+"<td colspan=2><br>";strResults=strResults+"<p>La valeur avant imp\u00F4ts sera de <br><b>"+numToFloatbis(VR[N1].toString())+"&nbsp;\u20AC</b>,";strResults=strResults+"sans aucune capacit\u00E9 d'\u00E9pargne annuelle. Cette valeur avant imp\u00F4ts sera atteinte d\u00E8s <b>"+N1;if(N1==1)
strResults=strResults+" an";else
strResults=strResults+" ans";strResults=strResults+"</b>.<br>La valeur apr\u00E8s imp\u00F4ts apr\u00E8s "+N1;if(N1==1)
strResults=strResults+" an";else
strResults=strResults+" ans";strResults=strResults+"sera alors de <br><b>"+numToFloatbis(VN[N1].toString())+"&nbsp;\u20AC</b>.</p>";strResults=strResults+"</td>";strResults=strResults+"</tr>";}}
else if((valCapacite==0)&&(valValeurRachat==0)&&(valValeurNet!=0))
{if(N1==valHorizon)
{strResults=strResults+"<tr>";strResults=strResults+"<td><p>Valeur apr\u00E8s imp\u00F4ts souhait\u00E9e</p></td>";strResults=strResults+"<td><p>"+putValue(valValeurNet.toString(),0)+"&nbsp;\u20AC</p></td>";strResults=strResults+"</tr>";strResults=strResults+"<tr>";strResults=strResults+"<td colspan=2><br>";strResults=strResults+"<p>Avec une capacit\u00E9 d'\u00E9pargne annuelle de <br><b>"+numToFloatbis(Apport.toString())+"&nbsp;\u20AC</b>, ";strResults=strResults+"la valeur apr\u00E8s imp\u00F4ts \u00E0 terme sera de <br><b>"+numToFloatbis(VN[N1].toString())+"&nbsp;\u20AC</b>.";strResults=strResults+"<br>La valeur avant imp\u00F4ts \u00E0 terme sera alors de <br><b>"+numToFloatbis(VR[N1].toString())+"&nbsp;\u20AC</b>.</p>";strResults=strResults+"</td>";strResults=strResults+"</tr>";}
else
{strResults=strResults+"<tr>";strResults=strResults+"<td><p>Valeur apr\u00E8s imp\u00F4ts souhait\u00E9e</p></td>";strResults=strResults+"<td><p>"+putValue(valValeurNet.toString(),0)+"&nbsp;\u20AC</p></td>";strResults=strResults+"</tr>";strResults=strResults+"<tr>";strResults=strResults+"<td colspan=2><br>";strResults=strResults+"<p>La valeur apr\u00E8s imp\u00F4ts sera de <br><b>"+numToFloatbis(VN[N1].toString())+"&nbsp;\u20AC</b>,";strResults=strResults+"sans aucune capacit\u00E9 d'\u00E9pargne annuelle. Cette valeur apr\u00E8s imp\u00F4ts sera atteinte d\u00E8s <b>"+N1;if(N1==1)
strResults=strResults+" an";else
strResults=strResults+" ans";strResults=strResults+"</b>.";strResults=strResults+"<br>La valeur avant imp\u00F4ts apr\u00E8s "+N1;if(N1==1)
strResults=strResults+" an";else
strResults=strResults+" ans";strResults=strResults+" sera alors de <br><b>"+numToFloatbis(VR[N1].toString())+"&nbsp;\u20AC</b>.</p>";strResults=strResults+"</td>";strResults=strResults+"</tr>";}}
else
{strResults=strResults+"<tr>";strResults=strResults+"<td colspan=2><br>";strResults=strResults+"<p>La valeur apr\u00E8s imp\u00F4ts \u00E0 terme sera de <b>"+numToFloatbis(VN[N1].toString())+"&nbsp;\u20AC</b>,&nbsp;";strResults=strResults+"sans aucune capacit\u00E9 d'\u00E9pargne annuelle.<br>";strResults=strResults+"La valeur avant imp\u00F4ts \u00E0 terme sera alors de <b>"+numToFloatbis(VR[N1].toString())+"&nbsp;\u20AC</b>.</p>";strResults=strResults+"</td>";strResults=strResults+"</tr>";}}
else
{strResults=strResults+"<tr>";strResults=strResults+"<td colspan=2><br>";strResults=strResults+"<p><b>Probl\u00E8me dans les valeurs initiales.</b></p>";strResults=strResults+"</td>";strResults=strResults+"</tr>";}
strResults=strResults+"</table>";document.getElementById("divResults").innerHTML=strResults;}
function GetBodyOffsetsRelative(strElementName)
{var obj=document.getElementById(strElementName);while(obj.offsetParent)
{if(obj==document.getElementsByTagName('body')[0])
{break;}
else
{osX=osX+obj.offsetParent.offsetLeft;osY=osY+obj.offsetParent.offsetTop;obj=obj.offsetParent;}}}
function DisplayGraph()
{var strGraph="";var strTemp="";osX=0;osY=0;GetBodyOffsetsRelative("divGraph");strTemp=addGraph();strGraph=strGraph+"<table width='100%' border='0'>";strGraph=strGraph+"<tr>";strGraph=strGraph+"<td align=center id='graphe' height='"+intGraphHeight+"'>";strGraph=strGraph+strTemp;strGraph=strGraph+"</td>";strGraph=strGraph+"</tr>";if((navigator.appName.indexOf("Netscape")!=-1)||(navigator.appName.indexOf("Opera")!=-1))
{}
else
{strGraph=strGraph+"<tr><td><p><font size=1>Les pointill\u00E9s sur le graphe servent \u00E0 mettre en avant l'impact qu'a la variation du taux d'imposition dans le temps, sur la valeur de l'assurance vie.</font></p></td></tr>";}
if(calcul_ok)
{strGraph=strGraph+"<tr>";strGraph=strGraph+"<td>";strGraph=strGraph+"<table align='center' border='0' cellPadding='1' cellSpacing='1'>";strGraph=strGraph+"<tr>";strGraph=strGraph+"<td bgcolor=#DBEBFD></td>";strGraph=strGraph+"<td bgcolor=#DBEBFD align=center colspan=2><p><font color='green'>Assurance vie</font></p></td>";strGraph=strGraph+"</tr>";strGraph=strGraph+"<tr>";strGraph=strGraph+"<td align='right' bgcolor=#DBEBFD><p>ann\u00E9e(s)</p></td>";strGraph=strGraph+"<td align='right' bgcolor=#DBEBFD><p>valeur</p></td>";strGraph=strGraph+"</tr>";for(j=0;j<=N1;j++)
{strGraph=strGraph+"<tr>";strGraph=strGraph+"<td align='right' bgcolor=#DBEBFD><p>"+j+"</p></td>";strGraph=strGraph+"<td align='right' bgcolor=#DBEBFD width='100'>";strGraph=strGraph+"<font color='green'><p>";strGraph=strGraph+numToFloatbis(VN[j].toString());strGraph=strGraph+"</font>&nbsp;\u20AC</p>";strGraph=strGraph+"</td>";strGraph=strGraph+"</tr>";}
strGraph=strGraph+"</table>";strGraph=strGraph+"</td>";strGraph=strGraph+"</tr>";if((navigator.appName.indexOf("Netscape")!=-1)||(navigator.appName.indexOf("Opera")!=-1))
{strGraph=strGraph+"<tr><td><br><p><font size=1>Les valeurs du tableau ci-dessus sont nettes d'imp\u00F4ts.</font></p></td></tr>";}
else
{strGraph=strGraph+"<tr><td><br><p><font size=1>Les valeurs du graphique et du tableau ci-dessus sont nettes d'imp\u00F4ts.</font></p></td></tr>";}}
strGraph=strGraph+"</table>";document.getElementById("divGraph").innerHTML=strGraph;}
function start()
{loaded=true;if(run!=''){setTimeout(run,0);}}
start();