﻿      js_date_days = [
        ["Sun, ", "Mon, ", "Tue, ", "Wed, ", "Thu, ", "Fri, ", "Sat, "],
        ["So, ", "Mo, ", "Di, ", "Mi, ", "Do, ", "Fr, ", "Sa, "],
        ["Dim, ", "Lun, ", "Mar, ", "Mer, ", "Jeu, ", "Ven, ", "Sam, "]
      ];
      js_date_months = [
        [" January ", " February ", " March ", " April ", " May ", " June ", " July ", 
            " August ", " September ", " October ", " November ", " December "],
        [". Januar ", ". Februar ", ". Marz ", ". April ", ". Mai ", ". Juni ", ". Juli ", 
            ". August ", ". September ", ". Oktober ", ". November ", ". Dezember "],
        [" janvier ", " février ", " mars ", " avril ", " mai ", " juin ", " juillet ",
            " août ", " septembre ", " octobre ", " novembre ", " décembre "]
      ];
      js_date_cet = ["&nbsp;CET", "&nbsp;MEZ", "&nbsp;CET"];
      js_date_cest = ["&nbsp;CEST", "&nbsp;MESZ", "&nbsp;CEST"];
      
      js_date_old_minutes = null;
      
      function setJSDateTime() {
      
        var now = new Date();
      
        // to save some milliseconds, only change seconds, changing the rest only every minute
         
        if (now.getMinutes() != js_date_old_minutes ) {
      
          js_date_old_minutes = now.getMinutes(); // save minute
      
          // we changed minute, refresh the whole txt
          var timeInCH = tS();
          var txt = js_date_days[js_date_lang][timeInCH.getDay()] +
                    timeInCH.getDate() + js_date_months[js_date_lang][timeInCH.getMonth()] +
                    timeInCH.getFullYear() + " " +
                    timeInCH.getHours() + ":" + 
                    lZ(timeInCH.getMinutes()) + ":"; 
          var cet = is_ds() ? js_date_cest[js_date_lang] : js_date_cet[js_date_lang];
      
          document.getElementById("js-date-part1").innerHTML = txt;
          document.getElementById("js-date-cet").innerHTML = cet;
        }
        document.getElementById("js-date-seconds").innerHTML = lZ(now.getSeconds());
      }
      
      // Ask HBR if any questions!
      function tS(){ var now=new Date(); x=new Date(now.getUTCFullYear(),now.getUTCMonth(),now.getUTCDate(),now.getUTCHours(),now.getUTCMinutes(),now.getUTCSeconds()); x.setTime(x.getTime()+dS()+3600000); return x; } 
      function is_ds(){ var now=new Date(); return ((now.getTime()>fD(0,2,2,-1).getTime())&&(now.getTime()<fD(0,9,2,-1).getTime()))?true:false; } 
      function dS(){  return is_ds()?3600000:0; }
      function fD(d,m,h,p){ var week=(p<0)?7*(p+1):7*(p-1),nm=(p<0)?m+1:m,x=new Date(new Date().getUTCFullYear(),nm,1,h,0,0),dOff=0; if(p<0){ x.setTime(x.getTime()-86400000); } if(x.getDay()!=d){ dOff=(x.getDay()<d)?(d-x.getDay()):0-(x.getDay()-d); if(p<0&&dOff>0){ week-=7; } if(p>0&&dOff<0){ week+=7; } x.setTime(x.getTime()+((dOff+week)*86400000)); } return x; } 
      function lZ(x){ return (x>9)?x:'0'+x; } 
      function y2(x){ x=(x<500)?x+1900:x; return String(x).substring(2,4) } 

