var width = 836; var height = 500; var x1min = 0; var x1max = 150; var x2min = 0; var x2max = 150/3600; var y1min = 0; var y1max = 130; var y2min = 0; var y2max = 19; function handleMouseOver(d, i) { d3.select(this).attr({ fill: "orange", r: radius * 2 }); } function make_x_gridlines() { return d3.axisBottom(x).ticks(5) } function make_y_gridlines() { return d3.axisLeft(y).ticks(5) } var x = d3.scaleTime().range([70, width]); var y = d3.scaleLinear().rangeRound([height, 0]); var svg = d3.select("#chart").append("svg").attr("width", width).attr("height", height); svg.on("mousemove", function() { //console.log("x", xscale.invert(d3.mouse(this)[0] - 50)); //console.log("y", yscale.invert(d3.mouse(this)[1] - 10)); var cx = scale.invert(d3.mouse(this)[0] - 49.3); var cy = yscale.invert(d3.mouse(this)[1] - 23.5); //$("#cx").text(cx); //$("#cy").text(cy); //console.log(d3.event); enterFrame(cx, cy); //console.log("x - using invert", xscale.invert(d3.event.pageX)); //console.log("y- using invert", yscale.invert(d3.event.pageY)); }); var scale = d3.scaleLinear().domain([x1min, x1max]).range([22, width - 80]); var x_axis = d3.axisTop().scale(scale); var xAxisTranslate = height - 50; // przesuniecie scali x na dol svg.append("g").attr("class", "gray").attr("transform", "translate(48, " + xAxisTranslate +")").call(x_axis) var xscale = d3.scaleLinear().domain([x2min, x2max]).range([22, width - 80]); var x_axis = d3.axisBottom().scale(xscale); var xAxisTranslate = height - 50; // przesuniecie scali x na dol svg.append("g").attr("class", "gray graytext").attr("transform", "translate(48, " + xAxisTranslate +")").call(x_axis) var yscale = d3.scaleLinear().domain([y1min, y1max]).range([height - 100, 0]); var y_axis = d3.axisLeft().scale(yscale); svg.append("g").attr("transform", "translate(70, 20)").call(y_axis); //var yscale_right = d3.scaleLinear().domain([y2min, y2max]).range([height - 100, 0]); //var yr_axis = d3.axisRight().scale(yscale_right); //var yAxisTranslate = width - 31; // przesuniecie scali x na dol //svg.append("g").attr("class", "red").attr("transform", "translate(" + yAxisTranslate +", 20)").call(yr_axis); // siatki ciensze var yscale = d3.scaleLinear().domain([y1min, y1max]).range([height - 100, 0]); var grid = d3.axisLeft().scale(yscale).ticks(60) svg.append("g").attr("class", "grid2").attr("transform", "translate(70,20)").call(grid.tickSize(-(width-101)).tickFormat("")) // siatki var yscale = d3.scaleLinear().domain([y1min, y1max]).range([height - 100, 0]); var grid = d3.axisLeft().scale(yscale); svg.append("g").attr("class", "grid").attr("transform", "translate(70,20)").call(grid.tickSize(-(width-101)).tickFormat("")) // siatki var scale = d3.scaleLinear().domain([x1min, x1max]).range([22, width - 80]); var grid = d3.axisTop().scale(scale); svg.append("g").attr("class", "grid").attr("transform", "translate(48, 20)").call(grid.tickSize(-(height-100)).tickFormat("")) var n = 21; var xScale = d3.scaleLinear() .domain([x1min, x1max]) .range([70, width-30]); var yScale = d3.scaleLinear() .domain([y1min, y1max]) .range([height-100, 0]); svg.append("text").style("fill", "#555").style("font-size", "10px") .attr("font-family", "Rubik") .text("m3/s") .attr("x", function (d) { return 805; }) .attr("y", function (d) { return 465; }); svg.append("text").data([{ x: x1max - 50, y: -83 }]).style("fill", "#555").style("font-size", "10px") .attr("font-family", "Rubik") .text("m3/h") .attr("x", function (d) { return 805; }) .attr("y", function (d) { return 440; }); svg.append("text").data([{ x: -150, y: y1max - 25 }]).style("fill", "#555").style("font-size", "10px") .attr("font-family", "Rubik") .text("Pa") .attr("x", function (d) { return 50; }) .attr("y", function (d) { return 15; }); var line = d3.area() .x(function(d, i) { return xScale(d.x); }) .y(function(d) { return yScale(d.y); }) .curve(d3.curveMonotoneX) var area = d3.area() .x(function(d, i) { return xScale(d.x); }) .y0(height-100) .y1(function(d) { return yScale(d.y); }); var Arr_paramsA = new Array(); var Arr_paramsID = new Array(); var data_chart = []; var data_chart_name = []; var data_chart_area = []; let paramsPresureA = []; const getPressureDynamic_A2 = (diameterCalculating) => { let A2 = (1.2 * 62543.94) / Math.pow(diameterCalculating, 4); return A2; }; let is_total = 0; let diameterCalculating = null; diameterCalculating = 125; paramsPresureA = [126.99928014911426,-0.14863753535022847,0.02490254644770464,-0.0011960023630982824,2.7596216450116854e-5,-3.325210968750916e-7,2.0189177295570476e-9,-4.8841367030950776e-12]; if (is_total) { paramsPresureA[2] += getPressureDynamic_A2(diameterCalculating); } Arr_paramsA.push(paramsPresureA); Arr_paramsID.push(6316); data_chart[3633] = [{"x" : 0, "y" : 126.99928014911425577793},{"x" : 1.5, "y" : 126.82845527129778417930},{"x" : 3, "y" : 126.74735434930460087344},{"x" : 4.5, "y" : 126.73642125094407617780},{"x" : 6, "y" : 126.77888193855096687912},{"x" : 7.5, "y" : 126.86048145129758779603},{"x" : 9, "y" : 126.96923618339015149559},{"x" : 10.5, "y" : 127.09520103756092623826},{"x" : 12, "y" : 127.23025103326831697359},{"x" : 13.5, "y" : 127.36787694901617840060},{"x" : 15, "y" : 127.50299457820405280017},{"x" : 16.5, "y" : 127.63176717792053693756},{"x" : 18, "y" : 127.75144069009128600101},{"x" : 19.5, "y" : 127.86019131439257989769},{"x" : 21, "y" : 127.95698501234414834471},{"x" : 22.5, "y" : 128.04144852199033266515},{"x" : 24, "y" : 128.11375146258387758280},{"x" : 25.5, "y" : 128.17449910868222673344},{"x" : 27, "y" : 128.22463541306879619697},{"x" : 28.5, "y" : 128.26535585791143034839},{"x" : 30, "y" : 128.29802971356826901683},{"x" : 31.5, "y" : 128.32413128445480765549},{"x" : 33, "y" : 128.34517972138172581253},{"x" : 34.5, "y" : 128.36268697977712349712},{"x" : 36, "y" : 128.37811350320325232133},{"x" : 37.5, "y" : 128.39283121158115363869},{"x" : 39, "y" : 128.40809337353286423422},{"x" : 40.5, "y" : 128.42501094225531232951},{"x" : 42, "y" : 128.44453493433528024070},{"x" : 43.5, "y" : 128.46744443091895959697},{"x" : 45, "y" : 128.49433978064686812104},{"x" : 46.5, "y" : 128.52564058376628963742},{"x" : 48, "y" : 128.56158803683237579207},{"x" : 49.5, "y" : 128.60225121741055431812},{"x" : 51, "y" : 128.64753688819109811448},{"x" : 52.5, "y" : 128.69720239992807364615},{"x" : 54, "y" : 128.75087127261434716274},{"x" : 55.5, "y" : 128.80805103430404301434},{"x" : 57, "y" : 128.86815289699484310404},{"x" : 58.5, "y" : 128.93051284898081121355},{"x" : 60, "y" : 128.99441374308881336219},{"x" : 61.5, "y" : 129.05910796020890529689},{"x" : 63, "y" : 129.12384022753144563467},{"x" : 64.5, "y" : 129.18787017090227209337},{"x" : 66, "y" : 129.25049418070705087302},{"x" : 67.5, "y" : 129.31106617069855246882},{"x" : 69, "y" : 129.36901680917492285516},{"x" : 70.5, "y" : 129.42387080192526127576},{"x" : 72, "y" : 129.47526180635003356656},{"x" : 73.5, "y" : 129.52294455617183643881},{"x" : 75, "y" : 129.56680377614324584101},{"x" : 76.5, "y" : 129.60685946617036279349},{"x" : 78, "y" : 129.64326813425628870391},{"x" : 79.5, "y" : 129.67631955768365514814},{"x" : 81, "y" : 129.70642865183913272631},{"x" : 82.5, "y" : 129.73412202610327881303},{"x" : 84, "y" : 129.76001880620404449473},{"x" : 85.5, "y" : 129.78480530245795421251},{"x" : 87, "y" : 129.80920310330179745506},{"x" : 88.5, "y" : 129.83393017353171217110},{"x" : 90, "y" : 129.85965453665903623914},{"x" : 91.5, "y" : 129.88694012079525919034},{"x" : 93, "y" : 129.91618434747817900643},{"x" : 94.5, "y" : 129.94754704284952140370},{"x" : 96, "y" : 129.98087025059999177756},{"x" : 97.5, "y" : 130.01558852608394545314},{"x" : 99, "y" : 130.05062929103036140077},{"x" : 100.5, "y" : 130.08430282824571122546},{"x" : 102, "y" : 130.11418149573228220106},{"x" : 103.5, "y" : 130.13696773962931274582},{"x" : 105, "y" : 130.14835048538498085691},{"x" : 106.5, "y" : 130.14284948658041685121},{"x" : 108, "y" : 130.11364721080576600798},{"x" : 109.5, "y" : 130.05240784201180304080},{"x" : 111, "y" : 129.94908297874178515485},{"x" : 112.5, "y" : 129.79170360765010627802},{"x" : 114, "y" : 129.56615793173591555387},{"x" : 115.5, "y" : 129.25595463268564344617},{"x" : 117, "y" : 128.84197114674952899804},{"x" : 118.5, "y" : 128.30218653355291280604},{"x" : 120, "y" : 127.61139851726579763636},{"x" : 121.5, "y" : 126.74092427952882644604},{"x" : 123, "y" : 125.65828458356099872617},{"x" : 124.5, "y" : 124.32687080885034447419},{"x" : 126, "y" : 122.70559447584309964441},{"x" : 127.5, "y" : 120.74851884005647661979},{"x" : 129, "y" : 118.40447213498100609286},{"x" : 130.5, "y" : 115.61664204325643368065},{"x" : 132, "y" : 112.32215097546850302024},{"x" : 133.5, "y" : 108.45161173601491100271},{"x" : 135, "y" : 103.92866315542005395400},{"x" : 136.5, "y" : 98.66948526856685930397},{"x" : 138, "y" : 92.58229361818303004839},{"x" : 139.5, "y" : 85.56681226305772725027},{"x" : 141, "y" : 77.51372507036467141006},{"x" : 142.5, "y" : 68.30410487150948029011},{"x" : 144, "y" : 57.80882006092360825278},{"x" : 145.5, "y" : 45.88791821721770247677},{"x" : 147, "y" : 32.38998632605489547132},{"x" : 148.5, "y" : 17.15148718427008134313},{"x" : 150, "y" : -0.00392843548979726620}]; data_chart_name[3633] = ""; data_chart_area[3633] = new Array(); if ((data_chart[3633][0].x != undefined && parseFloat(data_chart[3633][0].x))) { var a_before = parseFloat(data_chart[3633][0].y) / (parseFloat(data_chart[3633][0].x) * parseFloat(data_chart[3633][0].x)); var append_before = ''; for(var b = 0; b <= 10; b++) { var _x = (b * data_chart[3633][0].x) / 10; var _y = _x * _x * a_before; data_chart_area[3633].push({x: _x, y: _y}); } } var last_index = data_chart[3633].length; for(var b = 0; b < last_index; b++) { data_chart_area[3633].push(data_chart[3633][b]); } last_index = last_index - 1; if (data_chart[3633][last_index].y != undefined && parseFloat(data_chart[3633][last_index].y) > 5) { var a_after = parseFloat(data_chart[3633][last_index].y) / (parseFloat(data_chart[3633][last_index].x) * parseFloat(data_chart[3633][last_index].x)); for(var b = 10; b >= 0; b--) { var _x = (b * data_chart[3633][last_index].x) / 10; var _y = _x * _x * a_after; data_chart_area[3633].push({x: _x, y: _y}); } } var dataset_3633 = [{"x" : 0, "y" : 126.99928014911425577793},{"x" : 1.5, "y" : 126.82845527129778417930},{"x" : 3, "y" : 126.74735434930460087344},{"x" : 4.5, "y" : 126.73642125094407617780},{"x" : 6, "y" : 126.77888193855096687912},{"x" : 7.5, "y" : 126.86048145129758779603},{"x" : 9, "y" : 126.96923618339015149559},{"x" : 10.5, "y" : 127.09520103756092623826},{"x" : 12, "y" : 127.23025103326831697359},{"x" : 13.5, "y" : 127.36787694901617840060},{"x" : 15, "y" : 127.50299457820405280017},{"x" : 16.5, "y" : 127.63176717792053693756},{"x" : 18, "y" : 127.75144069009128600101},{"x" : 19.5, "y" : 127.86019131439257989769},{"x" : 21, "y" : 127.95698501234414834471},{"x" : 22.5, "y" : 128.04144852199033266515},{"x" : 24, "y" : 128.11375146258387758280},{"x" : 25.5, "y" : 128.17449910868222673344},{"x" : 27, "y" : 128.22463541306879619697},{"x" : 28.5, "y" : 128.26535585791143034839},{"x" : 30, "y" : 128.29802971356826901683},{"x" : 31.5, "y" : 128.32413128445480765549},{"x" : 33, "y" : 128.34517972138172581253},{"x" : 34.5, "y" : 128.36268697977712349712},{"x" : 36, "y" : 128.37811350320325232133},{"x" : 37.5, "y" : 128.39283121158115363869},{"x" : 39, "y" : 128.40809337353286423422},{"x" : 40.5, "y" : 128.42501094225531232951},{"x" : 42, "y" : 128.44453493433528024070},{"x" : 43.5, "y" : 128.46744443091895959697},{"x" : 45, "y" : 128.49433978064686812104},{"x" : 46.5, "y" : 128.52564058376628963742},{"x" : 48, "y" : 128.56158803683237579207},{"x" : 49.5, "y" : 128.60225121741055431812},{"x" : 51, "y" : 128.64753688819109811448},{"x" : 52.5, "y" : 128.69720239992807364615},{"x" : 54, "y" : 128.75087127261434716274},{"x" : 55.5, "y" : 128.80805103430404301434},{"x" : 57, "y" : 128.86815289699484310404},{"x" : 58.5, "y" : 128.93051284898081121355},{"x" : 60, "y" : 128.99441374308881336219},{"x" : 61.5, "y" : 129.05910796020890529689},{"x" : 63, "y" : 129.12384022753144563467},{"x" : 64.5, "y" : 129.18787017090227209337},{"x" : 66, "y" : 129.25049418070705087302},{"x" : 67.5, "y" : 129.31106617069855246882},{"x" : 69, "y" : 129.36901680917492285516},{"x" : 70.5, "y" : 129.42387080192526127576},{"x" : 72, "y" : 129.47526180635003356656},{"x" : 73.5, "y" : 129.52294455617183643881},{"x" : 75, "y" : 129.56680377614324584101},{"x" : 76.5, "y" : 129.60685946617036279349},{"x" : 78, "y" : 129.64326813425628870391},{"x" : 79.5, "y" : 129.67631955768365514814},{"x" : 81, "y" : 129.70642865183913272631},{"x" : 82.5, "y" : 129.73412202610327881303},{"x" : 84, "y" : 129.76001880620404449473},{"x" : 85.5, "y" : 129.78480530245795421251},{"x" : 87, "y" : 129.80920310330179745506},{"x" : 88.5, "y" : 129.83393017353171217110},{"x" : 90, "y" : 129.85965453665903623914},{"x" : 91.5, "y" : 129.88694012079525919034},{"x" : 93, "y" : 129.91618434747817900643},{"x" : 94.5, "y" : 129.94754704284952140370},{"x" : 96, "y" : 129.98087025059999177756},{"x" : 97.5, "y" : 130.01558852608394545314},{"x" : 99, "y" : 130.05062929103036140077},{"x" : 100.5, "y" : 130.08430282824571122546},{"x" : 102, "y" : 130.11418149573228220106},{"x" : 103.5, "y" : 130.13696773962931274582},{"x" : 105, "y" : 130.14835048538498085691},{"x" : 106.5, "y" : 130.14284948658041685121},{"x" : 108, "y" : 130.11364721080576600798},{"x" : 109.5, "y" : 130.05240784201180304080},{"x" : 111, "y" : 129.94908297874178515485},{"x" : 112.5, "y" : 129.79170360765010627802},{"x" : 114, "y" : 129.56615793173591555387},{"x" : 115.5, "y" : 129.25595463268564344617},{"x" : 117, "y" : 128.84197114674952899804},{"x" : 118.5, "y" : 128.30218653355291280604},{"x" : 120, "y" : 127.61139851726579763636},{"x" : 121.5, "y" : 126.74092427952882644604},{"x" : 123, "y" : 125.65828458356099872617},{"x" : 124.5, "y" : 124.32687080885034447419},{"x" : 126, "y" : 122.70559447584309964441},{"x" : 127.5, "y" : 120.74851884005647661979},{"x" : 129, "y" : 118.40447213498100609286},{"x" : 130.5, "y" : 115.61664204325643368065},{"x" : 132, "y" : 112.32215097546850302024},{"x" : 133.5, "y" : 108.45161173601491100271},{"x" : 135, "y" : 103.92866315542005395400},{"x" : 136.5, "y" : 98.66948526856685930397},{"x" : 138, "y" : 92.58229361818303004839},{"x" : 139.5, "y" : 85.56681226305772725027},{"x" : 141, "y" : 77.51372507036467141006},{"x" : 142.5, "y" : 68.30410487150948029011},{"x" : 144, "y" : 57.80882006092360825278},{"x" : 145.5, "y" : 45.88791821721770247677},{"x" : 147, "y" : 32.38998632605489547132},{"x" : 148.5, "y" : 17.15148718427008134313},{"x" : 150, "y" : -0.00392843548979726620}]; var dataset_area_3633 = data_chart_area[3633]; svg.append("path") .attr("transform", "translate(0, 20)") .datum(dataset_area_3633) .attr("class", "area") .attr("id", "area_6316") .style('fill-opacity', 0) .attr("fill", "#389fda") .on('mouseover', function(d, i) { selectItemGraph(6316) }) .attr("d", area); svg.append("path") .attr("transform", "translate(0, 20)") .attr("id", "path_6316") .datum(dataset_3633) .attr("class", "line") .attr("d", line); function enterFrame(x,y) { var iNearestHigher = _findNearestHigherPolynomial({x, y}, Arr_paramsA); var graph = Arr_paramsID[iNearestHigher]; selectItemGraph(graph); } function calcPolynomial(x, paramsA) { var ret = 0; var ratio = 1; for (var i = 0; i < paramsA.length; i++) { ret += paramsA[i] * Math.pow(x, i); } ret = ret * ratio; return ret; } function _findNearestHigherPolynomial(pointObj, Arr_paramsA) { var Arr_xrange = null; var idPolynomial = -1; var inputX = pointObj.x; var inputY = pointObj.y; var deltaY = undefined; for (var i = 0; i < Arr_paramsA.length; i++){ var searchInGraph = true; if (Array.isArray(Arr_xrange) && Arr_paramsA.length == Arr_xrange.length){ if (inputXArr_xrange[i].graphMax){ searchInGraph=false; console.log('searchInGraph', i, searchInGraph); } } var polynomialY = calcPolynomial(inputX, Arr_paramsA[i]) * 1; if ( searchInGraph && polynomialY>=inputY && (polynomialY-inputY MAXIMA Północ -GDYNIA", "|| tel. 58-667-00-07 || , 81-061 ul.Hutnicza 18A", "", "julian@maxima-polnoc.pl"]; aph[40086] = ["", "Graniczna 15, 62-007 Biskupice", "", "jakub@bud-went.com.pl"]; aph[40157] = ["Klimazbyt Łódź", "Piłsudskiego 092, 92-202 Łódź", "", "lodz@klimazbyt.pl"]; aph[40185] = ["", "Przemysłowa 11, 35-105 Rzeszów", "", "biuro@klimasystem.pl"]; aph[40356] = ["INWEST-KLIMA", " 0, 15-688 ", "", "ewa.hankowska@inwestklima.com.pl"]; aph[40439] = ["", "Produkcyjna 105 0, 15-680 Białystok", "", "termitech@termitech.com.pl"]; aph[40509] = ["PW Politerm-Izol Sp. z o.o.", "Przemysłowa 5B, 75-216 Koszalin", "", "lukasz.kaczynski@politerm-izol.com.pl"]; aph[40521] = ["", "Kunickiego 11 0, 95-200 Pabianice", "", "biuro@tramontana.net.pl"]; aph[40558] = ["", "F. Ossendowskiego 4 0, 93-228 Łódź", "", "wentylacja@izola.pl"]; aph[40606] = ["DABROwent", "A. Krzywca 9, 85-862 BYDGOSZCZ", "", "kasia.dabrowska@dabrowent.pl"]; aph[40751] = ["", " 0, 15-688 ", "", "biuro@inwestklima.com.pl"]; aph[40784] = ["ANG", "Modlnica 315 0, 32-085 Modlnica", "", "biuro@ang.com.pl"]; aph[40790] = ["Dystrybucja Artykułów Technicznych Krzysztof Kubaiński", "ul. Tarnogajska 11-13, 50-512 Wrocław", "", "dat@dat.wroc.pl"]; aph[40844] = ["LEMAR S.J", "Bytomska 18 0, 42-672 Wieszowa", "", "joanna@lemar.pl"]; aph[40863] = ["", "LUBELSKA 36, 10-409 OLSZTYN", "", "olsztyn@klimazbyt.pl"]; aph[40905] = ["Luft-System", "ul. Mieszka I 82, 71-011 Szczecin", "", "biuro@luft-system.pl"]; aph[40912] = ["LEMAR Sp. J.", "Bytomska 18 18, 42-672 Wieszowa", "", "damian@lemar.pl"]; aph[40944] = ["Went-Dom Centrum Profesjonalnej Wentylacji", "Bartycka 26, 00-716 Warszawa", "", "went@went-dom.pl"]; aph[40999] = ["Venture", "Mokra 27 0, 05-092 Kiełpin", "", "mariusz.bialobrzewski@venture.pl"]; aph[41002] = ["MK-WENT Sp. Z o.o. Sp. K.", "Trakt Lubelski 195, 04-667 Warszawa", "", "piotr.kobosko@mkwent.com.pl"]; aph[41036] = ["", "Porfirowa 35, 32-067 Zalas", "", "michalkulpinski@wp.pl"]; aph[41078] = ["Dabrowent", "Krzywca 9, 85-862 Bydgoszcz", "", "magda.olszewska@dabrowent.pl"]; aph[41216] = ["PUH VECO", "Świerczewska 5 5, 71-066 Szczecin", "", "zakupy@veco.com.pl"]; aph[41305] = ["ANG Wentylacja Sp. z o.o.", "Częstochowska 26, 32-085 Modlnica", "", "patrycja.zieba@ang.com.pl"]; aph[93524] = ["BIMs Plus FHH Sp. Z o.o. Dolny Śląsk Sp.K.", "Klonowa 1, 55-200 Stanowice-Oława", "", "pawel.majdak@bimsplus.com.pl"]; aph[93540] = ["Venture Industries sp.z o.o.", "MOKRA 27, 05-092 Kiełpin", "", "izabela.morawska@venture.pl"]; aph[93751] = ["Venture Industries", "aaa 1, 11-111 aaaa", "", "karolina.kubesova@ventur.cz"]; aph[93784] = ["", "Karpia 21, 61-619 Poznań", "", "Roman.filipiak@venture.pl"]; aph[93894] = ["Amster Global", "Obrońców Modlina 9, 30-733 Kraków", "", "mostrowski@amster.pl"]; aph[94259] = ["CALDO-WENTYLACJA SP. Z O.O.", "BISKUPIŃSKA 14, 30-732 Kraków", "", "mariusz.biadun@caldo-wentylacja.pl"]; aph[94356] = ["Caldo-Wentylacja", "Hurtowa 2, 15-399 Białystok", "", "mariusz.bialystok@caldo.pl"]; aph[94357] = ["Caldo-Wentylacja", "Torowa 11, 08-110 Siedlce", "", "mariusz.siedlce@caldo.pl"]; aph[94358] = ["Caldo-Wentylacja", "Rapackiego 15, 20-150 Lublin", "", "mariusz.lublin@caldo.pl"]; aph[94359] = ["Caldo-Wentylacja", "Tartaczna 3, 26-600 Radom", "", "mariusz.radom@caldo.pl"]; aph[94360] = ["Caldo-Wentylacja", "Brandla 1, 30-732 Kraków", "", "mariusz.krakow@caldo.pl"]; aph[94361] = ["Caldo-Wentylacja", "Skrajna 78, 25-650 Kielce", "", "mariusz.kielce@caldo.pl"]; aph[94362] = ["Caldo-Wentylacja", "Szeligowska 42, 01-320 Warszawa", "", "mariusz.warszawa@caldo.pl"]; aph[94363] = ["Caldo-Wentylacja", "Magnacka 27, 08-180 Kowale", "", "mariusz.gdansk@caldo.pl"]; aph[94364] = ["Caldo-Wentylacja", "Orląt Lwowskich 145, 41-208 Sosnowiec", "", "mariusz.sosnowiec@caldo.pl"]; aph[94365] = ["Caldo-Wentylacja", "Św. Teresy 178, 91-222 Łódź", "", "mariusz.lodz@caldo.pl"]; aph[94366] = ["Caldo-Wentylacja", "Wapienna 6/8, 87-100 Toruń", "", "mariusz.torun@caldo.pl"]; aph[94367] = ["Caldo-Wentylacja", "Jerzmanowska 19, 54-530 Wrocław", "", "mariusz.wroclaw@caldo.pl"]; aph[94368] = ["Caldo-Wentylacja", "Kamiennogórska 22, 60-179 Poznań", "", "mariusz.poznan@caldo.pl"]; aph[94369] = ["Caldo-Wentylacja", "Struga 62-64, 70-784 Szczecin", "", "mariusz.szczecin@caldo.pl"]; function scale_round(value, step) { step || (step = 1.0); var inv = 1.0 / step; return Math.round(value * inv) / inv; } function scale_max(value) { value = parseInt(value); var v = value.toString(); var l = v.length; if (l <= 2) { if (value < 50) { return 50; } else { return 100; } } var p = l - 2; var s1 = ''; var s2 = ''; for (var i = 0; i < l; i++) { if (i >= p) { s2 += v[i]; } else { s1 += v[i]; } } s2 = parseInt(s2); if (s2 > 50) { s1 = parseInt(s1) + 1; s2 = '00'; } else { s2 = '50'; } s1 = s1.toString(); s = s1+''+s2; s = parseInt(s); return s; } function createChart(id, charts) { var div = "product_"+id; charts = charts.split(";"); var data_x = 0; var data_y = 0; for (var g = 0; g < charts.length; g++) { var data = data_chart[charts[g]]; console.log(data); Object.keys(data).forEach(function (item) { if (data[item].x > data_x) { data_x = data[item].x } if (data[item].y > data_y) { data_y = data[item].y } }); } data_x = scale_max(data_x); data_y = scale_max(data_y); var x1min = 0; var x1max = data_x; var x2min = 0; var x2max = data_x/3600; var y1min = 0; var y1max = data_y; var y2min = 0; var y2max = data_y; var width = 759; var height = 505; var svg = d3.select("#"+div).append("svg").attr("width", width).attr("height", height); function handleMouseOver(d, i) { d3.select(this).attr({ fill: "orange", r: radius * 2 }); } function make_x_gridlines() { return d3.axisBottom(x).ticks(5) } function make_y_gridlines() { return d3.axisLeft(y).ticks(5) } var x = d3.scaleTime().range([70, width]); var y = d3.scaleLinear().rangeRound([height, 0]); var scale = d3.scaleLinear().domain([x1min, x1max]).range([22, width - 80]); var x_axis = d3.axisTop().scale(scale); var xAxisTranslate = height - 50; // przesuniecie scali x na dol svg.append("g").attr("class", "gray").attr("transform", "translate(48, " + xAxisTranslate +")").call(x_axis) var xscale = d3.scaleLinear().domain([x2min, x2max]).range([22, width - 80]); var x_axis = d3.axisBottom().scale(xscale); var xAxisTranslate = height - 50; // przesuniecie scali x na dol svg.append("g").attr("class", "gray graytext").attr("transform", "translate(48, " + xAxisTranslate +")").call(x_axis) var yscale = d3.scaleLinear().domain([y1min, y1max]).range([height - 100, 0]); var y_axis = d3.axisLeft().scale(yscale); svg.append("g").attr("transform", "translate(70, 20)").call(y_axis); //var yscale_right = d3.scaleLinear().domain([y2min, y2max]).range([height - 100, 0]); //var yr_axis = d3.axisRight().scale(yscale_right); //var yAxisTranslate = width - 31; // przesuniecie scali x na dol //svg.append("g").attr("class", "red").attr("transform", "translate(" + yAxisTranslate +", 20)").call(yr_axis); var yscale = d3.scaleLinear().domain([y1min, y1max]).range([height - 100, 0]); var grid = d3.axisLeft().scale(yscale).ticks(60) svg.append("g").attr("class", "grid2").attr("transform", "translate(70,20)").call(grid.tickSize(-(width-101)).tickFormat("")) var yscale = d3.scaleLinear().domain([y1min, y1max]).range([height - 100, 0]); var grid = d3.axisLeft().scale(yscale); svg.append("g").attr("class", "grid").attr("transform", "translate(70,20)").call(grid.tickSize(-(width-101)).tickFormat("")) var scale = d3.scaleLinear().domain([x1min, x1max]).range([22, width - 80]); var grid = d3.axisTop().scale(scale); svg.append("g").attr("class", "grid").attr("transform", "translate(48, 20)").call(grid.tickSize(-(height-100)).tickFormat("")) var n = 21; var xScale = d3.scaleLinear().domain([x1min, x1max]).range([70, width-30]); var yScale = d3.scaleLinear().domain([y1min, y1max]).range([height-100, 0]); var line = d3.area().x(function(d, i) { return xScale(d.x); }).y(function(d) { return yScale(d.y); }) .curve(d3.curveCardinal) var area = d3.area().x(function(d, i) { return xScale(d.x); }).y0(height-100).y1(function(d) { return yScale(d.y); }).curve(d3.curveCardinal); svg.append("text").style("fill", "#555").style("font-size", "10px") .attr("font-family", "Rubik") .text("m3/s") .attr("x", function (d) { return 730; }) .attr("y", function (d) { return 480; }); svg.append("text").data([{ x: x1max - 50, y: -83 }]).style("fill", "#555").style("font-size", "10px") .attr("font-family", "Rubik") .text("m3/h") .attr("x", function (d) { return 730; }) .attr("y", function (d) { return 455; }); svg.append("text").data([{ x: -150, y: y1max - 25 }]).style("fill", "#555").style("font-size", "10px") .attr("font-family", "Rubik") .text("Pa") .attr("x", function (d) { return 50; }) .attr("y", function (d) { return 15; }); for (var g = 0; g < charts.length; g++) { svg.append("path") .attr("transform", "translate(0, 20)") .datum(data_chart_area[charts[g]]) .attr("id", "area_"+charts[g]) .style('fill-opacity', .2) .attr("fill", "#389fda") .attr("d", area); svg.append("path") .attr("transform", "translate(0, 20)") .attr("id", "path_"+charts[g]) .datum(data_chart[charts[g]]) .attr("stroke", "#389fda") .attr("stroke-width", 1.5) .attr("d", line); } for (var g = 0; g < charts.length; g++) { svg.append("text").data([{ x: data_chart[charts[g]][0].x, y: data_chart[charts[g]][0].y }]).style("fill", "#555").style("font-size", "11px") .attr("font-family", "Rubik") .attr("font-weight", "800") .text(data_chart_name[charts[g]]) .attr("x", function (d) { return xScale(d.x) + 5; }) .attr("y", function (d) { return yScale(d.y) + 18; }) } } $(document).ready(function() { if ($('[data-tech]').length > 0) { var url = "/products/ajax/tech?id="+$('[data-tech]').attr("data-tech"); $.get(url, function(data) { $('[data-tech]').html(data); setTimeout(function(){ create_table_header(); $(".product__tech .tab li[tab-id='data']").trigger("click"); }, 100); }) } else { create_table_header(); } $(document).on("click", "table.data tr", function() { var isModel = $(this).hasClass("row-model"); if (isModel == false) { var id = $(this).next().find(".product_chart").attr("id"); if (id != undefined) { id = id.replace("product_", ""); var charts = $(this).next().find(".product_chart").attr("data-charts"); var _id = "product_"+id; $("tr.row-model td").hide(); $(this).next().find("td").slideDown(); var hasSvg = $("#"+_id).find("svg").length; if (hasSvg == 0) { createChart(id, charts); } } } }); $(document).on("click", ".product .data-tech tr.row-model td h3", function() { $(this).closest("td").slideUp(); }); /*$(document).on("click", "table.data tr", function() { var link = $(this).find("a").attr("href"); if (link != undefined) { document.location.href = link; } });*/ $(document).on("click", ".product__tech .tab li", function(){ $(".product__tech .tab li.active").removeClass("active"); $(this).addClass("active"); var _id = $(this).attr("tab-id"); $("#tab_data, #tab_shop").hide(); $("#tab_"+_id).show(); create_table_header(); }); $(".data-tech").tablesorter({ headers: { 1: { sorter: "digit" }, 2: { sorter: "digit" }, 3: { sorter: "digit" }, 4: { sorter: "digit" }, 5: { sorter: "digit" }, 6: { sorter: "digit" }, 7: { sorter: "digit" }, 8: { sorter: "digit" }, 9: { sorter: "digit" }, 10: { sorter: "digit" }, 11: { sorter: "digit" }, '.state' : { sorter: false } } }); $("#product_gallery img").click(function() { $(".product-gallery__item.active").removeClass("active"); $(this).closest(".product-gallery__item").addClass("active"); var is360 = $(this).closest(".product-gallery__item").hasClass("isShow360"); if (is360 == false) { $(".product-gallery__item a").attr({"data-lightbox" : "cert-set"}); $("#box360").hide(); var medium = $(this).closest(".product-gallery__item").attr("data-medium"); var zoom = $(this).closest(".product-gallery__item").find("a").attr("href"); $(this).closest(".product-gallery__item").find("a").removeAttr("data-lightbox") $(".product__img-360-box").find("img").show().attr({"src" : medium}); $(".product__img-360-box").find("a").attr({"href" : zoom}); } else { $("#box360").show(); $(".product__img-360-box").find("img").hide(); $(".spin360").show(); } }); $("#graph_list li").mouseenter(function() { $(".product__graph-area ul li.active").removeClass("active"); $(this).addClass("active"); selectGraph(); }); $(".form-count-cart input").keypress(function(e) { if (isNaN(parseInt(e.key, 10)) === true && e.key.length == 1) { return e.preventDefault() } }); $(".form-count-cart input").blur(function() { var v = $(this).val(); if (v == 0) { v = 1; } else if (v > parseInt($(this).attr("data-max"))) { v = $(this).attr("data-max"); } $(this).val(v); }); $(".form-count-cart a.minus").click(function() { var $a = $(this).closest(".form-count-cart"); var $v = $a.find("input").val(); var $v = parseInt($v) - 1; if ($v < 1) { $v = 1; } $a.find("input").val($v); }); $(".form-count-cart a.plus").click(function() { var $a = $(this).closest(".form-count-cart"); var $v = $a.find("input").val(); var $m = parseInt($a.find("input").attr("data-max")); var $v = parseInt($v) + 1; if ($v > $m) { $v = $m; } $a.find("input").val($v); }); $(document).on("mouseenter", "[data-state-popup]", function() { //$(".avalModal").remove(); var data = $(this).attr("data-state-popup"); var _name = $(this).closest("tr").find(".product-name").text(); var _d = data.split("|"); var _c = _d.length; var html = '
Produkt dostępny u dostawców: stan na:
'; for(var a = 0; a < _c; a++) { var _p = _d[a].split(";"); html += `
${aph[_p[0]][2] ? '' : ''}
${aph[_p[0]][0]} ${aph[_p[0]][1]}
${_p[2].replace("00:00:00", "")}
`; } html += '
'; $(this).after(html); var _h = parseInt($(this).closest("td").find(".avalModalBody").height()) + 36; $(this).closest("td").find(".avalModal").css({"height" : _h+"px"}); }); $("#d_equipment").change(function() { var id = $(this).val(); equipment(id); }); }); function equipment(id) { $("#equipment").html('
'); $.get("/products/products/equipment?id="+id, function(data) { $("#equipment").html(data) }); } function selectGraph() { $(".area").css({"fill-opacity" : 0}); $(".line").css({"stoke" : "rgb(0, 52, 96)"}).attr('style', "stroke:#00427a"); var id = $("#graph_list").find("li.active").attr("data-char"); document.getElementById('frame-pdu-family').src=`https://www.programdoboru.pl/include/product.html?id_product=${id}`; $("#area_"+id).css({"fill-opacity" : 0.5}); $("#path_"+id).css({"stoke" : "#389fda"}).attr('style', "stroke:#389fda"); var $row = $("#dane-techniczne #data-tech tr#data_"+id); $(".product__graph-area .product__graph-info p").text($row.find("td:nth-child(1)").text()); $(".product__graph-area .product__graph-info ul li:nth-child(1) span").text($row.find("td:nth-child(3)").text()); $(".product__graph-area .product__graph-info ul li:nth-child(2) span").text($row.find("td:nth-child(2)").text()); $(".product__graph-area .product__graph-info ul li:nth-child(3) span").text($row.find("td:nth-child(4)").text()); $(".product__graph-area .product__graph-info ul li:nth-child(4) span").text($row.find("td:nth-child(5)").text()); $(".product__graph-area .product__graph-info ul li:nth-child(5) span").text($row.find("td:nth-child(6)").text()); $(".product__graph-area .product__graph-info ul li:nth-child(6) span").text($row.find("td:nth-child(7)").text()); $(".product__graph-area .product__graph-info ul li:nth-child(7) span").text($row.find("td:nth-child(8)").text()); } function selectItemGraph(id) { $(".product__graph-area ul li.active").removeClass("active"); $("#graph_list li[data-char='"+id+"']").addClass("active"); selectGraph(); }