function breakLongText (str , limit) {
str = str[0];
if (str.length > limit){
s="";
if (str[limit-1]!=" ") for (i=limit;i< limit+10;i++) {
if (str[i]==" ") {
limit=i;
break;
}
}
s = "<tspan y='-20' x='0' dy='1.2em'>" + str.substr(0,limit) + "</tspan>" ;
if (str[limit]!=' ') sap=1 ; else sap=0;
s += "<tspan x='0' dy='1.2em'>" + str.substr(limit-sap) + "</tspan>" ;
return s ;
}
else
return str ;
}

function breakLongText (str , limit) {
limBack =limit ;
if (str.length > limit){
s=""; count=0 ; limitStart=0;
while (limit < str.length && count < 10 ){
if (str[limit]!=" ") {
for ( i = limitStart; i < str.length ; i++) {
limit = i + 1;
if (str[i] == " " && (limit - limitStart) > limBack ) break;
}
} else {
for ( i = limitStart; i < str.length ; i++) {
limit = i + 1;
if (str[i] == " " && (limit - limitStart) > limBack ) break;
}
}
s1= str.substr(limitStart, limit - limitStart) ;
// console.log(count , limitStart , limit ,s1);
s += "<tspan y='" + (-20 + 20 * count ) + "' x='0' dy='1.2em'>" +s1+ "</tspan>";
limitStart = limit ;
count++ ;
}
return s ;
} else return str ;
}
function getElemWidth(el) {
return d3.select(el)._groups["0"]["0"]._groups["0"]["0"].getAttribute("width");
}
function getElemHeight(el) {
return d3.select(el)._groups["0"]["0"]._groups["0"]["0"].getAttribute("height");
}
function currencySwapNoCut(d) {
d= (parseFloat(d)).toFixed(1).toString().replace("." , ",") ;
return d.toString().replace(/\B(?=(\d{3})+(?!\d))/g, " ") + " руб.";
}