MikecIT

script

Jan 18th, 2020
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
jQuery 6.61 KB | None | 0 0
  1. function getFormData($form) {
  2.     var unindexedArray = $form.serializeArray();
  3.     var indexedArray = {}
  4.  
  5.     $.map(unindexedArray, function(n, i){
  6.         indexedArray[n['name']] = n['value'];
  7.     });
  8.  
  9.     return indexedArray;
  10. }
  11.  
  12. function login() {
  13.     var data = getFormData($("#loginForm"));
  14.     var s = JSON.stringify(data);
  15.     console.log(data);
  16.  
  17.     $.ajax({
  18.         url: "rest/login",
  19.         type: "POST",
  20.         data: s,
  21.         contentType: "application/json",
  22.         datatype: "json",
  23.         complete: function(data) {
  24.             console.log(data);
  25.             d = JSON.parse(data.responseText);
  26.             console.log(d);
  27.             if(d.msg) {
  28.                 window.location.replace("/");
  29.             }
  30.             else {
  31.                 $("#messageLogin").show();
  32.             }
  33.         }
  34.     });
  35. }
  36.  
  37. function isLoggedIn() {
  38.     $.ajax({
  39.         url: "rest/checkLogin",
  40.         type: "GET",
  41.         complete: function(data) {
  42.             d = JSON.parse(data.responseText);
  43.  
  44.             if(d.logged)
  45.                 window.location.replace("/");
  46.         }
  47.     });
  48. }
  49.  
  50. function isLoggedOut() {
  51.     $.ajax({
  52.         url: "rest/checkLogin",
  53.         type: "GET",
  54.         complete: function(data) {
  55.             d = JSON.parse(data.responseText);
  56.  
  57.             if(!d.logged)
  58.                 window.location.replace("/login.html");
  59.             else
  60.                 getRacuni();
  61.         }
  62.     });
  63. }
  64.  
  65. function resetFields() {
  66.     $("input[name=\"brojRacuna\"]").val('');
  67.     $("input[name=\"raspolozivo\"]").val('');
  68.     $("input[name=\"rezervisano\"]").val('');
  69.     $("select[name=\"tipRacuna\"]").val('Dinarski');
  70.     $("input[name=\"online\"]").prop('checked', false);
  71.    
  72. }
  73.  
  74. function addRacun() {
  75.     var data = getFormData($("#addRacunForm"));
  76.     console.log(data);
  77.     if(data.brojRacuna == "")
  78.     {
  79.         window.alert("Niste uneli sva polja!");
  80.         resetFields();
  81.         return;
  82.     }
  83.  
  84.     if(data.tipRacuna == "")
  85.     {
  86.         window.alert("Niste uneli sva polja!");
  87.         resetFields();
  88.         return;
  89.     }
  90.    
  91.     if(data.raspolozivo == "")
  92.     {
  93.         window.alert("Niste uneli sva polja!");
  94.         resetFields();
  95.         return;
  96.     }
  97.  
  98.     if(data.rezervisano == "")
  99.     {
  100.         window.alert("Niste uneli sva polja!");
  101.         resetFields();
  102.         return;
  103.     }
  104.  
  105.     data.aktivan = true;
  106.     var racun = JSON.stringify(data);
  107.  
  108.     $.ajax({
  109.         url: "rest/addRacun",
  110.         type: "POST",
  111.         data: racun,
  112.         contentType: "application/json",
  113.         datatype: "json",
  114.         complete : function(data) {
  115.             d = JSON.parse(data.responseText);
  116.             if(d.msg == true) {
  117.                
  118.                 $("#racuniTable").append(makeTableRow(JSON.parse(racun))); // PARSE@!!!!
  119.                 $("#racun").append(makeSelectOption(JSON.parse(racun)));
  120.             }
  121.             else if(d.msg == "errorFields") {
  122.                 window.alert("Niste uneli sva polja!");
  123.                 resetFields();
  124.             }
  125.             else {
  126.                 window.alert("Racun vec postoji!");
  127.                 resetFields();
  128.             }
  129.  
  130.            
  131.         }
  132.     });
  133. }
  134.  
  135. function getRacuni() {
  136.     $.ajax({
  137.         url: "rest/getRacuni",
  138.         type: "GET",
  139.         complete : function(data) {
  140.             d = JSON.parse(data.responseText);
  141.  
  142.             for(let racun of d) {
  143.                 $("#racuniTable").append(makeTableRow(racun));
  144.                 if(racun.aktivan = true)
  145.                     $("#racun").append(makeSelectOption(racun));
  146.             }
  147.         }
  148.     });
  149. }
  150.  
  151. function uplati() {
  152.     var data = getFormData($("#uplataForm"));
  153.     var s = JSON.stringify(data);
  154.     if(data.iznos == "")
  155.     {
  156.         window.alert("Niste uneli sva polja!");
  157.         return;
  158.     }
  159.  
  160.     if(data.racun == "")
  161.     {
  162.         window.alert("Nemate aktivan racun za uplatu!");
  163.         return;
  164.     }
  165.  
  166.     if(parseFloat(data.iznos) < 0)
  167.     {
  168.         window.alert("Iznos za uplatu ne moze biti manji od 0!");
  169.         $("input[name=\"iznos\"").val('');
  170.         return;
  171.     }
  172.  
  173.     $.ajax({
  174.         url: "/rest/uplati",
  175.         type: "POST",
  176.         data: s,
  177.         contentType: "application/json",
  178.         datatype: "json",
  179.         complete: function(data) {
  180.             console.log(data);
  181.             if(data.status == 404)
  182.             {
  183.                 window.alert(data.responseText);
  184.             }
  185.             else
  186.             {
  187.                 d = JSON.parse(data.responseText);
  188.                 $("#tr"+d.brojRacuna).replaceWith(makeTableRow(d));
  189.                 $("input[name=\"iznos\"]").val('');
  190.             }
  191.            
  192.         }
  193.     });
  194. }
  195.  
  196. function removeRacun(brojRacuna) {
  197.     $.ajax({
  198.         url: "/rest/removeRacun?brRacuna=" + brojRacuna,
  199.         type: "GET",
  200.         complete: function(data) {
  201.             d = JSON.parse(data.responseText);
  202.             console.log(d);
  203.             if(d.msg)
  204.             {
  205.  
  206.                 $("#tr"+brojRacuna).remove();
  207.                 $("#op"+brojRacuna).remove();
  208.             }
  209.            
  210.         }
  211.     })
  212. }
  213.  
  214. function toggleRacun(brojRacuna) {
  215.     $.ajax({
  216.         url: "/rest/toggleRacun?brRacuna=" + brojRacuna,
  217.         type: "GET",
  218.         complete: function(data) {
  219.             d = JSON.parse(data.responseText);
  220.             console.log(d);
  221.  
  222.             $("#tr"+brojRacuna).replaceWith(makeTableRow(d));
  223.             if(!d.aktivan)
  224.                 $("#op"+brojRacuna).remove();
  225.             else
  226.                 $("#racun").append(makeSelectOption(d));
  227.            
  228.         }
  229.     })
  230. }
  231.  
  232. function makeTableRow(racun) {
  233.  
  234.     var ukupno = parseFloat(racun.raspolozivo) + parseFloat(racun.rezervisano);
  235.     var online = racun.online == true ? "Da" : "Ne";
  236.     var aktivan = racun.aktivan == true ? "Da" : "Ne";
  237.     var aktivacija = racun.aktivan == true ? "Deaktiviraj" : "Aktiviraj";
  238.  
  239.     var row =
  240.     `
  241.         <tr id=tr${racun.brojRacuna}>
  242.             <td>${racun.brojRacuna}</td>
  243.             <td>${racun.tipRacuna}</td>
  244.             <td>${racun.rezervisano}</td>
  245.             <td>${racun.raspolozivo}</td>
  246.             <td>${ukupno}</td>
  247.             <td>${online}</td>
  248.             <td>${aktivan}</td>
  249.             <td><span class="link" onclick="removeRacun('${racun.brojRacuna}')">Obrisi</span></td>
  250.             <td><span class="link" onclick="toggleRacun('${racun.brojRacuna}')">${aktivacija}</span></td>
  251.         </tr>
  252.     `
  253.     return row;
  254. }
  255.  
  256. function makeSelectOption(racun) {
  257.     var row = `<option id="op${racun.brojRacuna}" value="${racun.brojRacuna}">${racun.brojRacuna}</option>`;
  258.  
  259.     return row;
  260. }
Add Comment
Please, Sign In to add comment