Advertisement
Guest User

Untitled

a guest
Dec 20th, 2014
253
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. var baseUrl = 'https://rest.ehrscape.com/rest/v1';
  3. var queryUrl = baseUrl + '/query';
  4.  
  5. var username = "ois.seminar";
  6. var password = "ois4fri";
  7.  
  8. var mase = [];
  9. var visine = [];
  10. var steviloMas = 0;
  11. var steviloVisin = 0;
  12.  
  13. var svetovniItm = [ ["Eritreja", 19.85],
  14.                     ["Nepal", 20.55],
  15.                     ["Afganistan", 21.01],
  16.                     ["Namibija", 22.0],
  17.                     ["Kirgizistan", 22.90],
  18.                     ["Rusija", 23.25],
  19.                     ["Uzbekistan", 23.80],
  20.                     ["Nizozemska", 24.14],
  21.                     ["Albanija", 24.53],
  22.                     ["Slovenija", 25.38],
  23.                     ["Argentina", 26.44],
  24.                     ["Bahami", 27.09],
  25.                     ["Združene države Amerike", 27.82],
  26.                     ["Samoa", 28.34],
  27.                     ["Tonga", 32.90] ];
  28.  
  29.  
  30. function getSessionId() {
  31.     var response = $.ajax({
  32.         type: "POST",
  33.         url: baseUrl + "/session?username=" + encodeURIComponent(username) +
  34.                 "&password=" + encodeURIComponent(password),
  35.         async: false
  36.     });
  37.     return response.responseJSON.sessionId;
  38. }
  39.  
  40.  
  41. function kreirajEHRzaBolnika() {
  42.     sessionId = getSessionId();
  43.  
  44.     var ime = $("#kreirajIme").val();
  45.     var priimek = $("#kreirajPriimek").val();
  46.     var datumRojstva = $("#kreirajDatumRojstva").val();
  47.  
  48.     if (!ime || !priimek || !datumRojstva || ime.trim().length == 0 || priimek.trim().length == 0 || datumRojstva.trim().length == 0) {
  49.         $("#kreirajSporocilo").html("<span class='obvestilo label label-warning fade-in'>Prosim, vnesite zahtevane podatke!</span>");
  50.     } else {
  51.         $.ajaxSetup({
  52.             headers: {"Ehr-Session": sessionId}
  53.         });
  54.         $.ajax({
  55.             url: baseUrl + "/ehr",
  56.             type: 'POST',
  57.             success: function (data) {
  58.                 var ehrId = data.ehrId;
  59.                 var partyData = {
  60.                     firstNames: ime,
  61.                     lastNames: priimek,
  62.                     dateOfBirth: datumRojstva,
  63.                     partyAdditionalInfo: [{key: "ehrId", value: ehrId}]
  64.                 };
  65.                 $.ajax({
  66.                     url: baseUrl + "/demographics/party",
  67.                     type: 'POST',
  68.                     contentType: 'application/json',
  69.                     data: JSON.stringify(partyData),
  70.                     success: function (party) {
  71.                         if (party.action == 'CREATE') {
  72.                             $("#kreirajSporocilo").html("<span class='obvestilo label label-success fade-in'>Uspešno kreiran EHR '" + ehrId + "'.</span>");
  73.                             console.log("Uspešno kreiran EHR '" + ehrId + "'.");
  74.                             var seznamOpcij = document.getElementById("preberiEHROsebe");
  75.                             seznamOpcij.options[seznamOpcij.length] = new Option(ime + " " + priimek, ehrId);
  76.                             var seznamOpcij2 = document.getElementById("preberiObstojeciVitalniZnak");
  77.                             seznamOpcij2.options[seznamOpcij2.length] = new Option(ime + " " + priimek, ehrId);
  78.                             var seznamOpcij3 = document.getElementById("preberiEhrIdZaVitalneZnake");
  79.                             seznamOpcij3.options[seznamOpcij3.length] = new Option(ime + " " + priimek, ehrId);
  80.                         }
  81.                     },
  82.                     error: function(err) {
  83.                         $("#kreirajSporocilo").html("<span class='obvestilo label label-danger fade-in'>Napaka '" + JSON.parse(err.responseText).userMessage + "'!");
  84.                         console.log(JSON.parse(err.responseText).userMessage);
  85.                     }
  86.                 });
  87.             }
  88.         });
  89.     }
  90. }
  91.  
  92.  
  93. function dodajMeritveVitalnihZnakov() {
  94.     sessionId = getSessionId();
  95.  
  96.     var ehrId = $("#dodajVitalnoEHR").val();
  97.     var datumInUra = $("#dodajVitalnoDatumInUra").val();
  98.     var telesnaVisina = $("#dodajVitalnoTelesnaVisina").val();
  99.     var telesnaTeza = $("#dodajVitalnoTelesnaTeza").val();
  100.     var telesnaTemperatura = $("#dodajVitalnoTelesnaTemperatura").val();
  101.     var sistolicniKrvniTlak = $("#dodajVitalnoKrvniTlakSistolicni").val();
  102.     var diastolicniKrvniTlak = $("#dodajVitalnoKrvniTlakDiastolicni").val();
  103.     var nasicenostKrviSKisikom = $("#dodajVitalnoNasicenostKrviSKisikom").val();
  104.  
  105.     if (!ehrId || ehrId.trim().length == 0) {
  106.         $("#dodajMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-warning fade-in'>Prosim, vnesite zahtevane podatke!</span>");
  107.     } else {
  108.         $.ajaxSetup({
  109.             headers: {"Ehr-Session": sessionId}
  110.         });
  111.         var podatki = {
  112.             "ctx/language": "en",
  113.             "ctx/territory": "SI",
  114.             "ctx/time": datumInUra,
  115.             "vital_signs/height_length/any_event/body_height_length": telesnaVisina,
  116.             "vital_signs/body_weight/any_event/body_weight": telesnaTeza,
  117.             "vital_signs/body_temperature/any_event/temperature|magnitude": telesnaTemperatura,
  118.             "vital_signs/body_temperature/any_event/temperature|unit": "°C",
  119.             "vital_signs/blood_pressure/any_event/systolic": sistolicniKrvniTlak,
  120.             "vital_signs/blood_pressure/any_event/diastolic": diastolicniKrvniTlak,
  121.             "vital_signs/indirect_oximetry:0/spo2|numerator": nasicenostKrviSKisikom
  122.         };
  123.         var parametriZahteve = {
  124.             "ehrId": ehrId,
  125.             templateId: 'Vital Signs',
  126.             format: 'FLAT',
  127.         };
  128.         $.ajax({
  129.             url: baseUrl + "/composition?" + $.param(parametriZahteve),
  130.             type: 'POST',
  131.             contentType: 'application/json',
  132.             data: JSON.stringify(podatki),
  133.             success: function (res) {
  134.                 console.log(res.meta.href);
  135.                 $("#dodajMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-success fade-in'>" + res.meta.href + ".</span>");
  136.             },
  137.             error: function(err) {
  138.                 $("#dodajMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-danger fade-in'>Napaka '" + JSON.parse(err.responseText).userMessage + "'!");
  139.                 console.log(JSON.parse(err.responseText).userMessage);
  140.             }
  141.         });
  142.     }
  143. }
  144.  
  145. function generirajPodatke(){
  146.     var leto = steviloRand(1991, 2014);
  147.     var mesec = steviloRand2(1, 12);
  148.    
  149.     if(mesec == 2 && ((leto % 400) == 0)){
  150.         var dan = steviloRand2(1, 29);
  151.     }
  152.     else if(mesec == 2 && ((leto % 100) == 0)){
  153.         var dan = steviloRand2(1, 28);
  154.     }
  155.     else if(mesec == 2 && ((leto % 4) == 0)){
  156.         var dan = steviloRand2(1, 29);
  157.     }
  158.     else if(mesec == 2){
  159.         var dan = steviloRand2(1, 28);
  160.     }
  161.     else if(mesec == 1 || mesec == 3 || mesec == 5 || mesec == 7 || mesec == 8 || mesec == 10 || mesec == 12){
  162.         var dan = steviloRand2(1, 31);
  163.     }
  164.     else{
  165.         var dan = steviloRand2(1, 30);
  166.     }
  167.    
  168.     var ura = steviloRand2(0, 24);
  169.     var minute = steviloRand2(0, 59);
  170.     var visina = steviloRand(110, 220);
  171.    
  172.     if(visina < 150){
  173.         var teza = steviloRand(35, 70);
  174.     }
  175.     else{
  176.         var teza = steviloRand(70, 160);
  177.     }
  178.     var temp = steviloRand3(34, 39);
  179.     var temperatura = Math.round(temp * 10 ) / 10;
  180.     var sisTlak = steviloRand(50, 200);
  181.     var diaTlak = steviloRand(40, sisTlak);
  182.    
  183.     var visinaM = visina / 100;
  184.     var itm = teza / (visinaM * visinaM);
  185.     if(itm < 26 && itm > 18.5){
  186.         var nasicenost = steviloRand(95, 99);
  187.     }
  188.     else{
  189.         var nasicenost = steviloRand(85, 94);
  190.     }
  191.     $("#dodajVitalnoDatumInUra").val(leto + "-" + mesec + "-" + dan + "T" + ura + ":" + minute);
  192.     $("#dodajVitalnoTelesnaVisina").val(visina);
  193.     $("#dodajVitalnoTelesnaTeza").val(teza);
  194.     $("#dodajVitalnoTelesnaTemperatura").val(temperatura);
  195.     $("#dodajVitalnoKrvniTlakSistolicni").val(sisTlak);
  196.     $("#dodajVitalnoKrvniTlakDiastolicni").val(diaTlak);
  197.     $("#dodajVitalnoNasicenostKrviSKisikom").val(nasicenost);
  198. }
  199.  
  200. function steviloRand(min, max){
  201.     var stevilo = Math.floor(Math.random() * (max - min + 1)) + min;
  202.     return stevilo;
  203. }
  204.  
  205. function steviloRand2(min, max){
  206.     var stevilo = Math.floor(Math.random() * (max - min + 1)) + min;
  207.     if (stevilo < 10){
  208.         stevilo = "0" + stevilo;
  209.     }
  210.     return stevilo;
  211. }
  212.  
  213. function steviloRand3(min, max){
  214.     var stevilo = Math.random() * (max - min + 1) + min;
  215.     return stevilo;
  216. }
  217.  
  218. function napolniMase(karDobim){
  219.     mase[steviloMas] = [];
  220.     mase[steviloMas][0] = karDobim.time;
  221.     mase[steviloMas][1] = karDobim.weight;
  222.     steviloMas++;
  223. }
  224.  
  225. function preberiMeritveVitalnihZnakov() {
  226.     sessionId = getSessionId();
  227.  
  228.     var ehrId = $("#meritveVitalnihZnakovEHRid").val();
  229.     var tip = $("#preberiTipZaVitalneZnake").val();
  230.  
  231.     if (!ehrId || ehrId.trim().length == 0 || !tip || tip.trim().length == 0) {
  232.         $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-warning fade-in'>Prosim, vnesite zahtevan podatek!");
  233.     } else {
  234.         $("svg").remove();
  235.         $.ajax({
  236.             url: baseUrl + "/demographics/ehr/" + ehrId + "/party",
  237.             type: 'GET',
  238.             headers: {"Ehr-Session": sessionId},
  239.             success: function (data) {
  240.                 var party = data.party;
  241.                 $("#rezultatMeritveVitalnihZnakov").html("<br/><span>Pridobivanje podatkov za <b>'" + tip + "'</b> osebe <b>'" + party.firstNames + " " + party.lastNames + "'</b>.</span><br/><br/>");
  242.                
  243.                
  244.                 // TELESNA TEMPERATURA
  245.                 if (tip == "telesna temperatura") {
  246.                     var AQL =
  247.                         "select " +
  248.                             "t/data[at0002]/events[at0003]/time/value as cas, " +
  249.                             "t/data[at0002]/events[at0003]/data[at0001]/items[at0004]/value/magnitude as temperatura_vrednost, " +
  250.                             "t/data[at0002]/events[at0003]/data[at0001]/items[at0004]/value/units as temperatura_enota " +
  251.                         "from EHR e[e/ehr_id/value='" + ehrId + "'] " +
  252.                         "contains OBSERVATION t[openEHR-EHR-OBSERVATION.body_temperature.v1] ";
  253.                     $.ajax({
  254.                         url: baseUrl + "/query?" + $.param({"aql": AQL}),
  255.                         type: 'GET',
  256.                         headers: {"Ehr-Session": sessionId},
  257.                         success: function (res) {
  258.                                 var results = "<table class='table table-striped table-hover'><tr><th>Datum in ura</th><th class='text-right'>Telesna temperatura</th></tr>";
  259.                                 if(res){
  260.                                     var rows = res.resultSet;
  261.                                     for (var i in rows) {
  262.                                         results += "<tr><td>" + rows[i].cas + "</td><td class='text-right'>" + rows[i].temperatura_vrednost + " "   + rows[i].temperatura_enota + "</td>";
  263.                                     }
  264.                                     results += "</table>";
  265.                                     $("#rezultatMeritveVitalnihZnakov").append(results);
  266.                             } else {
  267.                                 $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-warning fade-in'>Ni podatkov!</span>");
  268.                             }
  269.                         },
  270.                         error: function() {
  271.                             $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-danger fade-in'>Napaka '" + JSON.parse(err.responseText).userMessage + "'!");
  272.                             console.log(JSON.parse(err.responseText).userMessage);
  273.                         }
  274.                     });
  275.                 }
  276.                
  277.                 // TELESNA MASA
  278.                 else if (tip == "telesna teža") {
  279.                     $.ajax({
  280.                         url: baseUrl + "/view/" + ehrId + "/" + "weight",
  281.                         type: 'GET',
  282.                         headers: {"Ehr-Session": sessionId},
  283.                         success: function (res) {
  284.                             if (res.length > 0) {
  285.                                 var results = "<table class='table table-striped table-hover'><tr><th>Datum in ura</th><th class='text-right'>Telesna teža</th></tr>";
  286.                                 for (var i in res) {
  287.                                     results += "<tr><td>" + res[i].time + "</td><td class='text-right'>" + res[i].weight + " "  + res[i].unit + "</td>";
  288.                                 }
  289.                                 results += "</table>";
  290.                                 $("#rezultatMeritveVitalnihZnakov").append(results);
  291.                             } else {
  292.                                 $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-warning fade-in'>Ni podatkov!</span>");
  293.                             }
  294.                         },
  295.                         error: function() {
  296.                             $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-danger fade-in'>Napaka '" + JSON.parse(err.responseText).userMessage + "'!");
  297.                             console.log(JSON.parse(err.responseText).userMessage);
  298.                         }
  299.                     });                
  300.                 }
  301.                
  302.                 // INDEKS TELESENE MASE
  303.                 else if(tip == "itm"){
  304.                     $.ajax({
  305.                         url: baseUrl + "/view/" + ehrId + "/" + "weight",
  306.                         type: 'GET',
  307.                         headers: {"Ehr-Session": sessionId},
  308.                         success: function (res) {
  309.                             if (res.length > 0) {
  310.                                 for (var i in res) {
  311.                                     napolniMase(res[i]);
  312.                                 }
  313.                                
  314.                                 $.ajax({
  315.                                     url: baseUrl + "/view/" + ehrId + "/" + "height",
  316.                                     type: 'GET',
  317.                                     headers: {"Ehr-Session": sessionId},
  318.                                     success: function (res) {
  319.                                         if (res.length > 0) {
  320.                                             for (var i in res) {
  321.                                                 visine[steviloVisin] = [];
  322.                                                 visine[steviloVisin][0] = res[i].time;
  323.                                                 var visina = Math.round(res[i].height * 10 ) / 10 / 100;
  324.                                                 visine[steviloVisin][1] = visina;
  325.                                                 steviloVisin++;
  326.                                             }
  327.                                            
  328.                                             if(steviloMas > 0 && steviloVisin > 0){
  329.                                                 var rezultat = [];
  330.                                                 var steviloRezultatov = 0;
  331.                                                 var izpis = "<table class='table table-striped table-hover'><tr><th>Datum in ura</th><th class='text-right'>Indeks telesne mase</th></tr>";
  332.                        
  333.                                                 // SPREHOD PO MERITVAH MASE (za vsako skupno meritev izračunaj ITM)
  334.                                                 for(var i = 0; i < steviloMas; i++){
  335.                                                     for(var j = 0; j < steviloVisin; j++){
  336.                                                         if(mase[i][0] == visine[j][0]){
  337.                                                             rezultat[steviloRezultatov] = [];
  338.                                                             rezultat[steviloRezultatov][0] = mase[i][0];
  339.                                                             var itm = Math.round((mase[i][1] / (visine[j][1] * visine[j][1])) * 10 ) / 10;
  340.                                                             rezultat[steviloRezultatov][1] = itm;
  341.                                                             izpis += "<tr><td>" + rezultat[steviloRezultatov][0] + "</td><td class='text-right'>" + rezultat[steviloRezultatov][1] + " kg/m^2" + "</td>";
  342.                                                             steviloRezultatov++;
  343.                                                             break;
  344.                                                         }
  345.                                                     }
  346.                                                 }
  347.                                                 izpis += "</table>";
  348.                                                 $("#rezultatMeritveVitalnihZnakov").append(izpis);
  349.                                                 mase = [];
  350.                                                 visine = [];
  351.                                                 rezultat = [];
  352.                                                 steviloMas = 0;
  353.                                                 steviloVisin = 0;
  354.                                                 steviloRezultatov = 0;
  355.                                             }
  356.                                         } else {
  357.                                             $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-warning fade-in'>Ni podatkov!</span>");
  358.                                         }
  359.                                     },
  360.                                     error: function() {
  361.                                         $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-danger fade-in'>Napaka '" + JSON.parse(err.responseText).userMessage + "'!");
  362.                                         console.log(JSON.parse(err.responseText).userMessage);
  363.                                     }
  364.                                 });
  365.                             } else {
  366.                                 $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-warning fade-in'>Ni podatkov!</span>");
  367.                             }
  368.                         },
  369.                         error: function() {
  370.                             $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-danger fade-in'>Napaka '" + JSON.parse(err.responseText).userMessage + "'!");
  371.                             console.log(JSON.parse(err.responseText).userMessage);
  372.                         }
  373.                     });
  374.                 }
  375.                
  376.                 // INDEKS TELESNE MASE - GRAF
  377.                 if (tip == "itmGraf") {
  378.                     $.ajax({
  379.                         url: baseUrl + "/view/" + ehrId + "/" + "weight",
  380.                         type: 'GET',
  381.                         headers: {"Ehr-Session": sessionId},
  382.                         success: function (res) {
  383.                             if (res.length > 0) {
  384.                                 for (var i in res) {
  385.                                     napolniMase(res[i]);
  386.                                 }
  387.                                
  388.                                 $.ajax({
  389.                                     url: baseUrl + "/view/" + ehrId + "/" + "height",
  390.                                     type: 'GET',
  391.                                     headers: {"Ehr-Session": sessionId},
  392.                                     success: function (res) {
  393.                                         if (res.length > 0) {
  394.                                             for (var i in res) {
  395.                                                 visine[steviloVisin] = [];
  396.                                                 visine[steviloVisin][0] = res[i].time;
  397.                                                 var visina = Math.round(res[i].height * 10 ) / 10 / 100;
  398.                                                 visine[steviloVisin][1] = visina;
  399.                                                 steviloVisin++;
  400.                                             }
  401.                                            
  402.                                             if(steviloMas > 0 && steviloVisin > 0){
  403.                                                 var rezultat = [];
  404.                                                 var steviloRezultatov = 0;
  405.                                                 var izpis = "<table class='table'><tr><th>Posamezna merjenja</th></tr>";
  406.                                                
  407.                                                 // SPREHOD PO MERITVAH MASE (za vsako skupno meritev izračunaj ITM)
  408.                                                 var stGumbov = 0;
  409.                                                 for(var i = 0; i < steviloMas; i++){
  410.                                                     for(var j = 0; j < steviloVisin; j++){
  411.                                                         if(mase[i][0] == visine[j][0]){
  412.                                                             if(stGumbov < 5){
  413.                                                                 stGumbov++;
  414.                                                                 rezultat[steviloRezultatov] = [];
  415.                                                                 rezultat[steviloRezultatov][0] = mase[i][0];
  416.                                                                 var itm = Math.round((mase[i][1] / (visine[j][1] * visine[j][1])) * 10 ) / 10;
  417.                                                                 rezultat[steviloRezultatov][1] = itm;
  418.                                                                 var id = "izbranaMeritevGraf" + stGumbov + itm;
  419.                                                                 izpis += "<tr><td><button id='";
  420.                                                                 izpis += id + "'type='button' class='btn btn-primary btn-sm' onclick='izrisiGraf(this.id)'>";
  421.                                                                 izpis += rezultat[steviloRezultatov][0];
  422.                                                                 izpis += "</button>";
  423.                                                                 steviloRezultatov++;
  424.                                                                 break;
  425.                                                             }
  426.                                                         }
  427.                                                     }
  428.                                                 }
  429.                                                 izpis += "</table>";
  430.                                                 $("#rezultatMeritveVitalnihZnakov").html(izpis);
  431.                                                 mase = [];
  432.                                                 visine = [];
  433.                                                 rezultat = [];
  434.                                                 steviloMas = 0;
  435.                                                 steviloVisin = 0;
  436.                                                 steviloRezultatov = 0;
  437.                                                 stGumbov = 0;
  438.                                             }
  439.                                         } else {
  440.                                             $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-warning fade-in'>Ni podatkov!</span>");
  441.                                         }
  442.                                     },
  443.                                     error: function() {
  444.                                         $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-danger fade-in'>Napaka '" + JSON.parse(err.responseText).userMessage + "'!");
  445.                                         console.log(JSON.parse(err.responseText).userMessage);
  446.                                     }
  447.                                 });
  448.                             } else {
  449.                                 $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-warning fade-in'>Ni podatkov!</span>");
  450.                             }
  451.                         },
  452.                         error: function() {
  453.                             $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-danger fade-in'>Napaka '" + JSON.parse(err.responseText).userMessage + "'!");
  454.                             console.log(JSON.parse(err.responseText).userMessage);
  455.                         }
  456.                     });
  457.                 }  
  458.             },
  459.             error: function(err) {
  460.                 $("#preberiMeritveVitalnihZnakovSporocilo").html("<span class='obvestilo label label-danger fade-in'>Napaka '" + JSON.parse(err.responseText).userMessage + "'!");
  461.                 console.log(JSON.parse(err.responseText).userMessage);
  462.             }
  463.         });
  464.     }
  465. }
  466.  
  467. // ujemanja:
  468. //  0 - procentualno ujemanje
  469. //  1 - država ujemanja
  470. //  2 - ITM države ujemanja
  471. function izrisiGraf(rezItm){
  472.     $("svg").remove();
  473.     $("#rezultatMeritveVitalnihZnakov").append("<svg class='chart'></svg>");
  474.    
  475.     var data = [
  476.         {name: "Locke",    value: 0.04},
  477.         {name: "Reyes",    value: 0.08},
  478.         {name: "Ford",     value: 0.15},
  479.         {name: "Jarrah",   value: 0.16},
  480.         {name: "Shephard", value: 0.23},
  481.         {name: "Kwon",     value: 0.42}
  482.     ];
  483.  
  484. var margin = {top: 10, right: 10, bottom: 20, left: 30},
  485.     width = 500 - margin.left - margin.right,
  486.     height = 300 - margin.top - margin.bottom;
  487.  
  488. var x = d3.scale.ordinal()
  489.     .rangeRoundBands([0, width], .1);
  490.  
  491. var y = d3.scale.linear()
  492.     .range([height, 0]);
  493.  
  494. var xAxis = d3.svg.axis()
  495.     .scale(x)
  496.     .orient("bottom");
  497.  
  498. var yAxis = d3.svg.axis()
  499.     .scale(y)
  500.     .orient("left")
  501.     .ticks(10, "%");
  502.  
  503. var svg = d3.select("body").append("svg")
  504.     .attr("width", width + margin.left + margin.right)
  505.     .attr("height", height + margin.top + margin.bottom)
  506.   .append("g")
  507.     .attr("transform", "translate(" + margin.left + "," + margin.top + ")");
  508.  
  509.   x.domain(data.map(function(d) { return d.name; }));
  510.   y.domain([0, d3.max(data, function(d) { return d.value; })]);
  511.  
  512.   svg.append("g")
  513.       .attr("class", "x axis")
  514.       .attr("transform", "translate(0," + height + ")")
  515.       .call(xAxis);
  516.  
  517.   svg.append("g")
  518.       .attr("class", "y axis")
  519.       .call(yAxis)
  520.     .append("text")
  521.       .attr("transform", "rotate(-90)")
  522.       .attr("y", 6)
  523.       .attr("dy", ".71em")
  524.       .style("text-anchor", "end")
  525.       .text("Value");
  526.  
  527.   svg.selectAll(".bar")
  528.       .data(data)
  529.     .enter().append("rect")
  530.       .attr("class", "bar")
  531.       .attr("x", function(d) { return x(d.name); })
  532.       .attr("width", x.rangeBand())
  533.       .attr("y", function(d) { return y(d.value); })
  534.       .attr("height", function(d) { return height - y(d.value); });
  535.  
  536. function type(d) {
  537.   d.value = +d.value;
  538.   return d;
  539. }
  540.    
  541.     var itm = rezItm.substring(19, 24);
  542.     var ujemanja = [];
  543.     var ujem = 0;
  544.     var tmp = 0;
  545.     console.log("ITM: " + itm);
  546.     for(var i = 0; i < svetovniItm.length; i++){
  547.         ujemanja[i] = [];
  548.         if(itm < svetovniItm[i][1]){
  549.             ujem = itm / svetovniItm[i][1];
  550.             tmp = Math.round(ujem * 1000 ) / 1000;
  551.             ujemanja[i][0] = tmp;
  552.             ujemanja[i][1] = svetovniItm[i][0];
  553.             ujemanja[i][2] = svetovniItm[i][1];
  554.         }
  555.         else{
  556.             ujem = svetovniItm[i][1] / itm;
  557.             tmp = Math.round(ujem * 1000 ) / 1000;
  558.             ujemanja[i][0] = tmp;
  559.             ujemanja[i][1] = svetovniItm[i][0];
  560.             ujemanja[i][2] = svetovniItm[i][1];
  561.         }
  562.     }
  563.     sortiraj(ujemanja);
  564.     for(var i = 0; i < ujemanja.length; i++){
  565.         console.log("Ujemanje: " + ujemanja[i][0]*100 + " %, z državo: " + ujemanja[i][1]);
  566.     }
  567. }
  568.  
  569. function sortiraj(tabela){
  570.     for(var i = 0; i < tabela.length-1 ; i++){
  571.         var maks = tabela[i][0];
  572.         var maksD = tabela[i][1];
  573.         var maksDi = tabela[i][2];
  574.         var iMaks = i;
  575.        
  576.         for(var j = i+1; j < tabela.length; j++){
  577.             if(tabela[j][0] > maks){
  578.                 maks = tabela[j][0];
  579.                 maksD = tabela[j][1];
  580.                 maksDi = tabela[j][2];
  581.                 iMaks = j;
  582.             }
  583.         }
  584.         tabela[iMaks][0] = tabela[i][0];
  585.         tabela[iMaks][1] = tabela[i][1];
  586.         tabela[iMaks][2] = tabela[i][2];
  587.         tabela[i][0] = maks;
  588.         tabela[i][1] = maksD;
  589.         tabela[i][2] = maksDi;
  590.     }
  591. }
  592.  
  593. $(document).ready(function() {
  594.     $('#preberiObstojeciEHR').change(function() {
  595.         $("#preberiSporocilo").html("");
  596.         $("#preberiEHRid").val($(this).val());
  597.     });
  598.     $('#preberiPredlogoBolnika').change(function() {
  599.         $("#kreirajSporocilo").html("");
  600.         var podatki = $(this).val().split(",");
  601.         $("#kreirajIme").val(podatki[0]);
  602.         $("#kreirajPriimek").val(podatki[1]);
  603.         $("#kreirajDatumRojstva").val(podatki[2]);
  604.     });
  605.     $('#preberiObstojeciVitalniZnak').change(function() {
  606.         $("#dodajMeritveVitalnihZnakovSporocilo").html("");
  607.         var podatki = $(this).val().split("|");
  608.         $("#dodajVitalnoEHR").val(podatki[0]);
  609.         $("#dodajVitalnoDatumInUra").val(podatki[1]);
  610.         $("#dodajVitalnoTelesnaVisina").val(podatki[2]);
  611.         $("#dodajVitalnoTelesnaTeza").val(podatki[3]);
  612.         $("#dodajVitalnoTelesnaTemperatura").val(podatki[4]);
  613.         $("#dodajVitalnoKrvniTlakSistolicni").val(podatki[5]);
  614.         $("#dodajVitalnoKrvniTlakDiastolicni").val(podatki[6]);
  615.         $("#dodajVitalnoNasicenostKrviSKisikom").val(podatki[7]);
  616.     });
  617.     $('#preberiEhrIdZaVitalneZnake').change(function() {
  618.         $("#preberiMeritveVitalnihZnakovSporocilo").html("");
  619.         $("#rezultatMeritveVitalnihZnakov").html("");
  620.         $("#meritveVitalnihZnakovEHRid").val($(this).val());
  621.     });
  622.     $('#preberiEHROsebe').change(function() {
  623.         $("#ehrIdKreiranega").val($(this).val());
  624.     });
  625. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement