    window.onload = infoInit;

    var iLastMinute, iLastDay;
    var iMinuteDiff = 0;
    var weekday = new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
    var month = new Array("January","February","March","April","May","June","July","August","September","October","Novemeber","December");
  
    function infoInit( ) {
      iLastMinute = 0;
      var dCompTime = new Date();
      iMinutesOut = dCompTime.getMinutes() - dOurTime.getMinutes();
      tick();
      window.setInterval("tick()", 15000);
    }

    function tick( ) {
      // Don not use getDate each tick, as we use time from the server
      var iCurrMinute, iCurrDay;
      var iHour, iMinute, iMinutesDiff;
      var sHour, sMinute, sAMPM, sDisp;

      var dCompTime = new Date();
      dCompTime.getDate();

      iCurrMinute = dCompTime.getMinutes();
      if (iCurrMinute != iLastMinute + iMinutesOut ) {
        iMinutesDiff = iCurrMinute - (iLastMinute + iMinutesOut);
        if (iMinutesDiff < 0) {
          iMinutesDiff = iMinutesDiff + 60;
        }
        if (iLastMinute > 0) { 
          dOurTime.setMinutes(dOurTime.getMinutes() + iMinutesDiff);
        }

        iLastMinute = iCurrMinute - iMinutesOut;

        iHour = dOurTime.getHours();

        if (iHour == 0) {
          sHour = "12";
        }
        else if (iHour > 12) {
          sHour = iHour - 12;
        }
        else {
          sHour = iHour;
        }
        if (iHour > 11) { 
          sAMPM = " PM";
        }
        else {
          sAMPM = " AM";
        }

        iMinute = dOurTime.getMinutes();
        sMinute = (iMinute);
        if (iMinute < 10) { sMinute = "0" + sMinute; }

        sDisp = sHour + ":" + sMinute + sAMPM;
        dt = document.getElementById("DispTime");
        dt.innerHTML = sDisp;

        iCurrDay = dOurTime.getDate();
        if (iCurrDay != iLastDay) {
          iLastDay = iCurrDay;

          var sWeekday, sDay, sMonth;
          sWeekday = weekday[dOurTime.getDay()];
          sDay = (dOurTime.getDate());
          sMonth = month[dOurTime.getMonth()];
          sYear = (dOurTime.getFullYear());

          sDisp = sWeekday + ", " + sDay + " " + sMonth + " " + sYear;

          dd = document.getElementById("DispDate");
          dd.innerHTML = sDisp;
        }
      }
    }
