Another bug!!
#1
Another bug!!
/*********************************************** * Countdown Timer ***********************************************/ function cdLocalTime(container, servermode, offsetMinutes, targetdate, debugmode) { if (!container) { if (debugmode == "debug") alert("Cant find '" + container + "'"); return this.container = container } var servertimestring = 'March 11, 2007 20:51:09' this.container = container this.localtime = this.serverdate = new Date(servertimestring) this.targetdate = new Date(targetdate) this.debugmode = ( debugmode != "debug") ? 0 : 1 this.timesup = false this.localtime.setTime(this.serverdate.getTime() + offsetMinutes * 60 * 1000) //add user offset to server time this.updateTime() } cdLocalTime.prototype.updateTime = function() { var thisobj = this this.localtime.setSeconds(this.localtime.getSecond s() + 1) setTimeout(function() { thisobj.updateTime() }, 1000) //update time every second } cdLocalTime.prototype.displaycountdown = function(baseunit, functionref) { this.baseunit = baseunit this.formatresults = functionref this.showresults() } cdLocalTime.prototype.showresults = function() { var thisobj = this var debugstring = (this.debugmode) ? "Debug Mode on!
Current Local time: " + this.localtime.toLocaleString() + "
Verify this is the correct current local time, in other words, time zone of count down date.
Target Time: " + this.targetdate.toLocaleString() + "
Verify this is the date/time you wish to count down to (should be a future date).
" : "" var timediff = (this.targetdate - this.localtime) / 1000 //difference btw target date and current date, in seconds if (timediff < 0) { //if time is up this.timesup = true this.container.innerHTML = debugstring + this.formatresults() return } var oneMinute = 60 //minute unit in seconds var oneHour = 60 * 60 //hour unit in seconds var oneDay = 60 * 60 * 24 //day unit in seconds var dayfield = Math.floor(timediff / oneDay) var hourfield = Math.floor((timediff - dayfield * oneDay) / oneHour) var minutefield = Math.floor((timediff - dayfield * oneDay - hourfield * oneHour) / oneMinute) var secondfield = Math.floor((timediff - dayfield * oneDay - hourfield * oneHour - minutefield * oneMinute)) if (this.baseunit == "hours") { //if base unit is hours, set "hourfield" to be topmost level hourfield = dayfield * 24 + hourfield dayfield = "n/a" } else if (this.baseunit == "minutes") { //if base unit is minutes, set "minutefield" to be topmost level minutefield = dayfield * 24 * 60 + hourfield * 60 + minutefield dayfield = hourfield = "n/a" } else if (this.baseunit == "seconds") { //if base unit is seconds, set "secondfield" to be topmost level var secondfield = timediff dayfield = hourfield = minutefield = "n/a" } this.container.innerHTML = debugstring + this.formatresults(dayfield, hourfield, minutefield, secondfield) setTimeout(function() { thisobj.showresults() }, 1000) //update results every second } /////CUSTOM FORMAT OUTPUT FUNCTIONS BELOW////////////////////////////// //Create your own custom format function to pass into cdLocalTime.displaycountdown() //Use arguments[0] to access "Days" left //Use arguments[1] to access "Hours" left //Use arguments[2] to access "Minutes" left //Use arguments[3] to access "Seconds" left //The values of these arguments may change depending on the "baseunit" parameter of cdLocalTime.displaycountdown() //For example, if "baseunit" is set to "hours", arguments[0] becomes meaningless and contains "n/a" //For example, if "baseunit" is set to "minutes", arguments[0]
What is this one then had it all night long
Current Local time: " + this.localtime.toLocaleString() + "
Verify this is the correct current local time, in other words, time zone of count down date.
Target Time: " + this.targetdate.toLocaleString() + "
Verify this is the date/time you wish to count down to (should be a future date).
" : "" var timediff = (this.targetdate - this.localtime) / 1000 //difference btw target date and current date, in seconds if (timediff < 0) { //if time is up this.timesup = true this.container.innerHTML = debugstring + this.formatresults() return } var oneMinute = 60 //minute unit in seconds var oneHour = 60 * 60 //hour unit in seconds var oneDay = 60 * 60 * 24 //day unit in seconds var dayfield = Math.floor(timediff / oneDay) var hourfield = Math.floor((timediff - dayfield * oneDay) / oneHour) var minutefield = Math.floor((timediff - dayfield * oneDay - hourfield * oneHour) / oneMinute) var secondfield = Math.floor((timediff - dayfield * oneDay - hourfield * oneHour - minutefield * oneMinute)) if (this.baseunit == "hours") { //if base unit is hours, set "hourfield" to be topmost level hourfield = dayfield * 24 + hourfield dayfield = "n/a" } else if (this.baseunit == "minutes") { //if base unit is minutes, set "minutefield" to be topmost level minutefield = dayfield * 24 * 60 + hourfield * 60 + minutefield dayfield = hourfield = "n/a" } else if (this.baseunit == "seconds") { //if base unit is seconds, set "secondfield" to be topmost level var secondfield = timediff dayfield = hourfield = minutefield = "n/a" } this.container.innerHTML = debugstring + this.formatresults(dayfield, hourfield, minutefield, secondfield) setTimeout(function() { thisobj.showresults() }, 1000) //update results every second } /////CUSTOM FORMAT OUTPUT FUNCTIONS BELOW////////////////////////////// //Create your own custom format function to pass into cdLocalTime.displaycountdown() //Use arguments[0] to access "Days" left //Use arguments[1] to access "Hours" left //Use arguments[2] to access "Minutes" left //Use arguments[3] to access "Seconds" left //The values of these arguments may change depending on the "baseunit" parameter of cdLocalTime.displaycountdown() //For example, if "baseunit" is set to "hours", arguments[0] becomes meaningless and contains "n/a" //For example, if "baseunit" is set to "minutes", arguments[0]
What is this one then had it all night long
Thread
Thread Starter
Forum
Replies
Last Post
hedgecutter
General Technical
3
25 September 2015 02:35 PM