Advertisement
Guest User

Untitled

a guest
Nov 19th, 2019
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function daniUMjesecu(mjesec, godina) {
  2.   return 32 - new Date(godina, mjesec, 32).getDate();
  3. }
  4.  
  5. var stariKalendar = document.getElementsByClassName("kalendar")[0];
  6.  
  7. let Kalendar = (function() {
  8.   function obojiZauzecaImpl(kalendarRef, mjesec, sala, pocetak, kraj) {}
  9.  
  10.   function ucitajPodatkeImpl(periodicna, redovna) {}
  11.  
  12.   function iscrtajKalendarImpl(kalendarRef, mjesec) {
  13.     var mjeseci = [
  14.       "Januar",
  15.       "Februar",
  16.       "Mart",
  17.       "April",
  18.       "Maj",
  19.       "Juni",
  20.       "Juli",
  21.       "August",
  22.       "Septembar",
  23.       "Oktobar",
  24.       "Novembar",
  25.       "Decembar"
  26.     ];
  27.     let trenutniDatum = new Date();
  28.     let trenutnaGodina = trenutniDatum.getFullYear();
  29.     let prviDan = new Date(trenutnaGodina, mjesec).getDay();
  30.     let brojDanaUMjesecu = daniUMjesecu(mjesec, trenutnaGodina);
  31.  
  32.     kalendarRef.caption.innerHTML = mjeseci[mjesec];
  33.     if (prviDan === 0) prviDan = 7;
  34.     var sedmice = kalendarRef.getElementsByTagName("tr");
  35.     var dani = kalendarRef.getElementsByClassName("dan");
  36.  
  37.     //dodavanje celije dan na sve pozicije
  38.     for (var i = 0; i < 4; i++) {
  39.       dani[i].innerHTML = dani[4].innerHTML;
  40.     }
  41.     dani[34].innerHTML = dani[4].innerHTML;
  42.     for (var i = 35; i < 42; i++) {
  43.       dani[i].innerHTML = dani[4].innerHTML;
  44.     }
  45.  
  46.     //upisivanje odgovarajucih datuma
  47.     var index = 1;
  48.     for (var i = prviDan - 1; i < prviDan + brojDanaUMjesecu - 1; i++) {
  49.       dani[i].getElementsByTagName("td")[0].innerHTML = index++;
  50.     }
  51.  
  52.     //brisanje celija prije prvog dana
  53.     for (var i = 0; i < prviDan - 1; i++) {
  54.       dani[i].innerHTML = "";
  55.     }
  56.  
  57.     //brisanje celija poslije zadnjeg dana
  58.     for (var i = prviDan + brojDanaUMjesecu - 1; i < 42; i++) {
  59.       dani[i].innerHTML = "";
  60.     }
  61.   }
  62.   return {
  63.     obojiZauzeca: obojiZauzecaImpl,
  64.     ucitajPodatke: ucitajPodatkeImpl,
  65.     iscrtajKalendar: iscrtajKalendarImpl
  66.   };
  67. })();
  68.  
  69. window.onload = function() {
  70.   Kalendar.iscrtajKalendar(document.getElementsByClassName("kalendar")[0], 5);
  71. };
  72.  
  73. function dajIndeks(mjesec) {
  74.   const mjeseci = {
  75.     Januar: 0,
  76.     Februar: 1,
  77.     Mart: 2,
  78.     April: 3,
  79.     Maj: 4,
  80.     Juni: 5,
  81.     Juli: 6,
  82.     August: 7,
  83.     Septembar: 8,
  84.     Oktobar: 9,
  85.     Novembar: 10,
  86.     Decembar: 11
  87.   };
  88.   return mjeseci[mjesec];
  89. }
  90.  
  91. function Prethodni() {
  92.   let mjesec = document.getElementsByClassName("kalendar")[0].caption.innerHTML;
  93.   let indeks = dajIndeks(mjesec);
  94.   indeks--;
  95.   Kalendar.iscrtajKalendar(
  96.     document.getElementsByClassName("kalendar")[0],
  97.     indeks
  98.   );
  99. }
  100.  
  101. function Sljedeci() {
  102.   let mjesec = document.getElementsByClassName("kalendar")[0].caption.innerHTML;
  103.   let indeks = dajIndeks(mjesec);
  104.   indeks++;
  105.   Kalendar.iscrtajKalendar(
  106.     document.getElementsByClassName("kalendar")[0],
  107.     indeks
  108.   );
  109. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement