T(-) Countdown - Version 2.2.9

Version Description

  • calculate local time using WordPress current_time() function
  • fixed bug for iOS devices using Chrome
Download this release

Release Info

Developer baden03
Plugin Icon 128x128 T(-) Countdown
Version 2.2.9
Comparing to
See all releases

Code changes from version 2.2.8 to 2.2.9

countdown-timer.php CHANGED
@@ -5,7 +5,7 @@ Text Domain: tminus
5
  Domain Path: /languages
6
  Plugin URI: http://plugins.twinpictures.de/plugins/t-minus-countdown/
7
  Description: Display and configure multiple T(-) Countdown timers using a shortcode or sidebar widget.
8
- Version: 2.2.8
9
  Author: twinpictures, baden03
10
  Author URI: http://www.twinpictures.de/
11
  License: GPL2
@@ -34,7 +34,7 @@ function countdown_scripts(){
34
  //delete the old style system
35
  delete_option( 't-minus_styles' );
36
  //add version check
37
- add_option('t-minus_version', '2.2.7');
38
  }
39
  $styles_arr = array("TIE-fighter","c-3po","c-3po-mini","carbonite","carbonlite","darth","jedi");
40
  add_option('t-minus_styles', $styles_arr);
@@ -52,14 +52,13 @@ function countdown_scripts(){
52
  wp_enqueue_style('colapse-admin-css');
53
 
54
  wp_enqueue_script( 'jquery-ui-datepicker' );
55
-
56
  wp_register_style('jquery-ui-css', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css', array (), '1.8.23' );
57
  wp_enqueue_style('jquery-ui-css');
58
  }
59
  else{
60
  //lwtCountdown script
61
- //wp_register_script('countdown-script', $plugin_url.'/js/jquery.t-countdown.js', array ('jquery'), '1.2' );
62
- wp_register_script('countdown-script', $plugin_url.'/js/jquery.t-countdown.min.js', array ('jquery'), '1.2' );
63
  wp_enqueue_script('countdown-script');
64
 
65
  //register all countdown styles for enqueue-as-needed
@@ -71,14 +70,6 @@ function countdown_scripts(){
71
  }
72
  add_action( 'init', 'countdown_scripts' );
73
 
74
- //set the location to throbber in a var
75
- /*
76
- function throbber_location() {
77
- echo '<script type="text/javascript"> var throbber_url = "'.plugins_url() .'/'. dirname( plugin_basename(__FILE__) ).'/js/throbber.js"; </script>';
78
- }
79
- add_action('wp_head', 'throbber_location');
80
- */
81
-
82
  //style folders array
83
  function folder_array($path, $exclude = ".|..") {
84
  if(is_dir($path)){
@@ -141,7 +132,9 @@ class CountDownTimer extends WP_Widget {
141
  $jsplacement = empty($instance['jsplacement']) ? 'footer' : apply_filters('widget_jsplacement', $instance['jsplacement']);
142
 
143
  //now
144
- $now = time() + ( get_option( 'gmt_offset' ) * 3600);
 
 
145
 
146
  //target
147
  $target = strtotime( $date.' '.$hour.':'.$min.':'.$sec );
@@ -270,7 +263,8 @@ class CountDownTimer extends WP_Widget {
270
  echo '</div>';
271
  echo '</div>';
272
  echo $after_widget;
273
- $t = date( 'n/j/Y H:i:s', time() + ( get_option( 'gmt_offset' ) * 3600));
 
274
 
275
  //launch div
276
  $launchdiv = "";
@@ -317,7 +311,8 @@ class CountDownTimer extends WP_Widget {
317
  'hour': <?php echo $hour; ?>,
318
  'min': <?php echo $min; ?>,
319
  'sec': <?php echo $sec; ?>,
320
- 'localtime': '<?php echo $t; ?>'
 
321
  },
322
  style: '<?php echo $style; ?>',
323
  launchtarget: '<?php echo $launchdiv; ?>',
@@ -522,7 +517,8 @@ function print_my_script() {
522
  'hour': <?php echo $script['hour']; ?>,
523
  'min': <?php echo $script['min']; ?>,
524
  'sec': <?php echo $script['sec']; ?>,
525
- 'localtime': '<?php echo $script['localtime']; ?>'
 
526
  },
527
  style: '<?php echo $script['style']; ?>',
528
  launchtarget: '<?php echo $script['launchtarget']; ?>',
@@ -577,7 +573,8 @@ function tminuscountdown($atts, $content=null) {
577
  //enqueue style that was already registerd
578
  wp_enqueue_style( 'countdown-'.$style.'-css' );
579
 
580
- $now = time() + ( get_option( 'gmt_offset' ) * 3600);
 
581
  $target = strtotime($t, $now);
582
 
583
  //difference in seconds
@@ -692,7 +689,8 @@ function tminuscountdown($atts, $content=null) {
692
  }
693
  $tminus .= '</div></div>';
694
 
695
- $t = date( 'n/j/Y H:i:s', gmmktime() + ( get_option( 'gmt_offset' ) * 3600));
 
696
 
697
  if(is_numeric($launchwidth)){
698
  $launchwidth .= 'px';
@@ -733,7 +731,8 @@ function tminuscountdown($atts, $content=null) {
733
  'hour': <?php echo $hour; ?>,
734
  'min': <?php echo $min; ?>,
735
  'sec': <?php echo $sec; ?>,
736
- 'localtime': '<?php echo $t; ?>'
 
737
  },
738
  style: '<?php echo $style; ?>',
739
  launchtarget: '<?php echo $launchtarget; ?>',
5
  Domain Path: /languages
6
  Plugin URI: http://plugins.twinpictures.de/plugins/t-minus-countdown/
7
  Description: Display and configure multiple T(-) Countdown timers using a shortcode or sidebar widget.
8
+ Version: 2.2.9
9
  Author: twinpictures, baden03
10
  Author URI: http://www.twinpictures.de/
11
  License: GPL2
34
  //delete the old style system
35
  delete_option( 't-minus_styles' );
36
  //add version check
37
+ add_option('t-minus_version', '2.2.9');
38
  }
39
  $styles_arr = array("TIE-fighter","c-3po","c-3po-mini","carbonite","carbonlite","darth","jedi");
40
  add_option('t-minus_styles', $styles_arr);
52
  wp_enqueue_style('colapse-admin-css');
53
 
54
  wp_enqueue_script( 'jquery-ui-datepicker' );
 
55
  wp_register_style('jquery-ui-css', 'http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css', array (), '1.8.23' );
56
  wp_enqueue_style('jquery-ui-css');
57
  }
58
  else{
59
  //lwtCountdown script
60
+ //wp_register_script('countdown-script', $plugin_url.'/js/jquery.t-countdown.js', array ('jquery'), '1.3' );
61
+ wp_register_script('countdown-script', $plugin_url.'/js/jquery.t-countdown.min.js', array ('jquery'), '1.3' );
62
  wp_enqueue_script('countdown-script');
63
 
64
  //register all countdown styles for enqueue-as-needed
70
  }
71
  add_action( 'init', 'countdown_scripts' );
72
 
 
 
 
 
 
 
 
 
73
  //style folders array
74
  function folder_array($path, $exclude = ".|..") {
75
  if(is_dir($path)){
132
  $jsplacement = empty($instance['jsplacement']) ? 'footer' : apply_filters('widget_jsplacement', $instance['jsplacement']);
133
 
134
  //now
135
+ //$now = time() + ( get_option( 'gmt_offset' ) * 3600);
136
+ //$now = current_time('timestamp');
137
+ $now = strtotime(current_time('mysql'));
138
 
139
  //target
140
  $target = strtotime( $date.' '.$hour.':'.$min.':'.$sec );
263
  echo '</div>';
264
  echo '</div>';
265
  echo $after_widget;
266
+ //$t = date( 'n/j/Y H:i:s', time() + ( get_option( 'gmt_offset' ) * 3600));
267
+ $t = date( 'n/j/Y H:i:s', strtotime(current_time('mysql')) );
268
 
269
  //launch div
270
  $launchdiv = "";
311
  'hour': <?php echo $hour; ?>,
312
  'min': <?php echo $min; ?>,
313
  'sec': <?php echo $sec; ?>,
314
+ 'localtime': '<?php echo $t; ?>',
315
+ 'mysqltime': '<?php echo current_time('mysql'); ?>'
316
  },
317
  style: '<?php echo $style; ?>',
318
  launchtarget: '<?php echo $launchdiv; ?>',
517
  'hour': <?php echo $script['hour']; ?>,
518
  'min': <?php echo $script['min']; ?>,
519
  'sec': <?php echo $script['sec']; ?>,
520
+ 'localtime': '<?php echo $script['localtime']; ?>',
521
+ 'mysqltime': '<?php echo current_time('mysql'); ?>'
522
  },
523
  style: '<?php echo $script['style']; ?>',
524
  launchtarget: '<?php echo $script['launchtarget']; ?>',
573
  //enqueue style that was already registerd
574
  wp_enqueue_style( 'countdown-'.$style.'-css' );
575
 
576
+ //$now = time() + ( get_option( 'gmt_offset' ) * 3600);
577
+ $now = strtotime(current_time('mysql'));
578
  $target = strtotime($t, $now);
579
 
580
  //difference in seconds
689
  }
690
  $tminus .= '</div></div>';
691
 
692
+ //$t = date( 'n/j/Y H:i:s', gmmktime() + ( get_option( 'gmt_offset' ) * 3600));
693
+ $t = date( 'n/j/Y H:i:s', strtotime(current_time('mysql')) );
694
 
695
  if(is_numeric($launchwidth)){
696
  $launchwidth .= 'px';
731
  'hour': <?php echo $hour; ?>,
732
  'min': <?php echo $min; ?>,
733
  'sec': <?php echo $sec; ?>,
734
+ 'localtime': '<?php echo $t; ?>',
735
+ 'mysqltime': '<?php echo current_time('mysql'); ?>'
736
  },
737
  style: '<?php echo $style; ?>',
738
  launchtarget: '<?php echo $launchtarget; ?>',
js/jquery.t-countdown.js CHANGED
@@ -1,5 +1,5 @@
1
  /*!
2
- * T- Countdown v1.2
3
  * http://plugins.twinpictures.de/plugins/t-minus-countdown/
4
  *
5
  * Copyright 2012, Twinpictures
@@ -80,6 +80,7 @@
80
  };
81
 
82
  $.fn.doCountDown = function (id, diffSecs, duration) {
 
83
  $this = $('#' + id);
84
 
85
  if (diffSecs <= 0){
@@ -110,36 +111,27 @@
110
  $.data($this[0], 'diffSecs', diffSecs);
111
  if (diffSecs > 0 || $.data($this[0], 'launchtarget') == 'countup'){
112
  if($.data($this[0], 'status') == 'play'){
113
- a = 0;
114
  delay = 1000;
115
  now = new Date();
116
  before = $.data($this[0], 'before');
117
  elapsedTime = (now.getTime() - before.getTime());
118
  if(elapsedTime >= delay + 1000){
119
- a += Math.floor(1*(elapsedTime/delay));
120
  }
121
  else{
122
- a = 1;
123
  }
124
  before = new Date();
125
  $.data($this[0], 'before', before);
126
  e = $this;
127
-
128
- //if(typeof(Worker)!=="undefined"){
129
- // Yes! Web worker support!
130
- //console.log(throbber_url);
131
- //if(typeof(w)=="undefined"){
132
- //w = new Worker(throbber_url);
133
- //}
134
- //w.onmessage = function( event ) { e.doCountDown(id, diffSecs-a) };
135
- //}
136
- //else{
137
- // Sorry! No Web Worker support..
138
- t = setTimeout(function() { e.doCountDown(id, diffSecs-a) } , 1000);
139
- //}
140
  }
141
- }
142
- else if (cb = $.data($this[0], 'callback')){
 
143
  if($.data($this[0], 'hangtime')){
144
  //phone's ringing dude.
145
  }
1
  /*!
2
+ * T- Countdown v1.3
3
  * http://plugins.twinpictures.de/plugins/t-minus-countdown/
4
  *
5
  * Copyright 2012, Twinpictures
80
  };
81
 
82
  $.fn.doCountDown = function (id, diffSecs, duration) {
83
+ //alert(diffSecs);
84
  $this = $('#' + id);
85
 
86
  if (diffSecs <= 0){
111
  $.data($this[0], 'diffSecs', diffSecs);
112
  if (diffSecs > 0 || $.data($this[0], 'launchtarget') == 'countup'){
113
  if($.data($this[0], 'status') == 'play'){
114
+ var delta = 0;
115
  delay = 1000;
116
  now = new Date();
117
  before = $.data($this[0], 'before');
118
  elapsedTime = (now.getTime() - before.getTime());
119
  if(elapsedTime >= delay + 1000){
120
+ delta += Math.floor(1*(elapsedTime/delay));
121
  }
122
  else{
123
+ delta = 1;
124
  }
125
  before = new Date();
126
  $.data($this[0], 'before', before);
127
  e = $this;
128
+ t = setTimeout(function() {
129
+ e.doCountDown(id, diffSecs-delta);
130
+ } , 1000);
 
 
 
 
 
 
 
 
 
 
131
  }
132
+ }
133
+ //cb = $.data($this[0], 'callback')
134
+ else if ($.data($this[0], 'callback')){
135
  if($.data($this[0], 'hangtime')){
136
  //phone's ringing dude.
137
  }
js/jquery.t-countdown.min.js CHANGED
@@ -1 +1 @@
1
- (function($){$.fn.countDown=function(options){config={};$.extend(config,options);diffSecs=this.setCountDown(config);before=new Date();$.data($(this)[0],'before',before);$.data($(this)[0],'status','play');style=config.style;$.data($(this)[0],'style',config.style);if(config.launchtarget){$.data($(this)[0],'launchtarget',config.launchtarget)}if(config.onComplete){$.data($(this)[0],'callback',config.onComplete)}if(config.hangtime){$.data($(this)[0],'hangtime',config.hangtime)}if(config.omitWeeks){$.data($(this)[0],'omitWeeks',config.omitWeeks)}$('#'+$(this).attr('id')+' .'+style+'-digit').html('<div class="top"></div><div class="bottom"></div>');$(this).doCountDown($(this).attr('id'),diffSecs,500);return this};$.fn.stopCountDown=function(){$.data(this[0],'status','stop')};$.fn.startCountDown=function(){$.data(this[0],'status','play');this.doCountDown($(this).attr('id'),$.data(this[0],'diffSecs'),500)};$.fn.setCountDown=function(options){var targetTime=new Date();if(options.targetDate){targetTime=new Date(options.targetDate.month+'/'+options.targetDate.day+'/'+options.targetDate.year+' '+options.targetDate.hour+':'+options.targetDate.min+':'+options.targetDate.sec+(options.targetDate.utc?' UTC':''))}else if(options.targetOffset){targetTime.setFullYear(options.targetOffset.year+targetTime.getFullYear());targetTime.setMonth(options.targetOffset.month+targetTime.getMonth());targetTime.setDate(options.targetOffset.day+targetTime.getDate());targetTime.setHours(options.targetOffset.hour+targetTime.getHours());targetTime.setMinutes(options.targetOffset.min+targetTime.getMinutes());targetTime.setSeconds(options.targetOffset.sec+targetTime.getSeconds())}var nowTime=new Date(options.targetDate.localtime);diffSecs=Math.floor((targetTime.valueOf()-nowTime.valueOf())/1000);$.data(this[0],'diffSecs',diffSecs);return diffSecs};$.fn.doCountDown=function(id,diffSecs,duration){$this=$('#'+id);if(diffSecs<=0){if($.data($this[0],'launchtarget')!='countup'){diffSecs=0;$.data($this[0],'status','stop')}}secs=Math.abs(diffSecs%60);mins=Math.floor(Math.abs(diffSecs/60)%60);hours=Math.floor(Math.abs(diffSecs/60/60)%24);if($.data($this[0],'omitWeeks')==true){days=Math.floor(Math.abs(diffSecs/60/60/24));weeks=Math.floor(Math.abs(diffSecs/60/60/24/7))}else{days=Math.floor(Math.abs(diffSecs/60/60/24)%7);weeks=Math.floor(Math.abs(diffSecs/60/60/24/7))}style=$.data($this[0],'style');$this.dashChangeTo(id,style+'-seconds_dash',secs,duration?duration:500);$this.dashChangeTo(id,style+'-minutes_dash',mins,duration?duration:1000);$this.dashChangeTo(id,style+'-hours_dash',hours,duration?duration:1000);$this.dashChangeTo(id,style+'-days_dash',days,duration?duration:1000);$this.dashChangeTo(id,style+'-days_trip_dash',days,duration?duration:1000);$this.dashChangeTo(id,style+'-weeks_dash',weeks,duration?duration:1000);$this.dashChangeTo(id,style+'-weeks_trip_dash',weeks,duration?duration:1000);$.data($this[0],'diffSecs',diffSecs);if(diffSecs>0||$.data($this[0],'launchtarget')=='countup'){if($.data($this[0],'status')=='play'){a=0;delay=1000;now=new Date();before=$.data($this[0],'before');elapsedTime=(now.getTime()-before.getTime());if(elapsedTime>=delay+1000){a+=Math.floor(1*(elapsedTime/delay))}else{a=1}before=new Date();$.data($this[0],'before',before);e=$this;t=setTimeout(function(){e.doCountDown(id,diffSecs-a)},1000)}}else if(cb=$.data($this[0],'callback')){if($.data($this[0],'hangtime')){}$.data($this[0],'callback')()}};$.fn.dashChangeTo=function(id,dash,n,duration){$this=$('#'+id);style=$.data($this[0],'style');for(var i=($this.find('.'+dash+' .'+style+'-digit').length-1);i>=0;i--){var d=n%10;n=(n-d)/10;$this.digitChangeTo('#'+$this.attr('id')+' .'+dash+' .'+style+'-digit:eq('+i+')',d,duration)}};$.fn.digitChangeTo=function(digit,n,duration){if(!duration){duration=500}if($(digit+' div.top').html()!=n+''){$(digit+' div.top').css({'display':'none'});$(digit+' div.top').html((n?n:'0')).stop(true,true).slideDown(duration);$(digit+' div.bottom').stop(true,true).animate({'height':''},duration,function(){$(digit+' div.bottom').html($(digit+' div.top').html());$(digit+' div.bottom').css({'display':'block','height':''});$(digit+' div.top').hide().slideUp(10)})}}})(jQuery);
1
+ (function($){$.fn.countDown=function(options){config={};$.extend(config,options);diffSecs=this.setCountDown(config);before=new Date();$.data($(this)[0],'before',before);$.data($(this)[0],'status','play');style=config.style;$.data($(this)[0],'style',config.style);if(config.launchtarget){$.data($(this)[0],'launchtarget',config.launchtarget)}if(config.onComplete){$.data($(this)[0],'callback',config.onComplete)}if(config.hangtime){$.data($(this)[0],'hangtime',config.hangtime)}if(config.omitWeeks){$.data($(this)[0],'omitWeeks',config.omitWeeks)}$('#'+$(this).attr('id')+' .'+style+'-digit').html('<div class="top"></div><div class="bottom"></div>');$(this).doCountDown($(this).attr('id'),diffSecs,500);return this};$.fn.stopCountDown=function(){$.data(this[0],'status','stop')};$.fn.startCountDown=function(){$.data(this[0],'status','play');this.doCountDown($(this).attr('id'),$.data(this[0],'diffSecs'),500)};$.fn.setCountDown=function(options){var targetTime=new Date();if(options.targetDate){targetTime=new Date(options.targetDate.month+'/'+options.targetDate.day+'/'+options.targetDate.year+' '+options.targetDate.hour+':'+options.targetDate.min+':'+options.targetDate.sec+(options.targetDate.utc?' UTC':''))}else if(options.targetOffset){targetTime.setFullYear(options.targetOffset.year+targetTime.getFullYear());targetTime.setMonth(options.targetOffset.month+targetTime.getMonth());targetTime.setDate(options.targetOffset.day+targetTime.getDate());targetTime.setHours(options.targetOffset.hour+targetTime.getHours());targetTime.setMinutes(options.targetOffset.min+targetTime.getMinutes());targetTime.setSeconds(options.targetOffset.sec+targetTime.getSeconds())}var nowTime=new Date(options.targetDate.localtime);diffSecs=Math.floor((targetTime.valueOf()-nowTime.valueOf())/1000);$.data(this[0],'diffSecs',diffSecs);return diffSecs};$.fn.doCountDown=function(id,diffSecs,duration){$this=$('#'+id);if(diffSecs<=0){if($.data($this[0],'launchtarget')!='countup'){diffSecs=0;$.data($this[0],'status','stop')}}secs=Math.abs(diffSecs%60);mins=Math.floor(Math.abs(diffSecs/60)%60);hours=Math.floor(Math.abs(diffSecs/60/60)%24);if($.data($this[0],'omitWeeks')==true){days=Math.floor(Math.abs(diffSecs/60/60/24));weeks=Math.floor(Math.abs(diffSecs/60/60/24/7))}else{days=Math.floor(Math.abs(diffSecs/60/60/24)%7);weeks=Math.floor(Math.abs(diffSecs/60/60/24/7))}style=$.data($this[0],'style');$this.dashChangeTo(id,style+'-seconds_dash',secs,duration?duration:500);$this.dashChangeTo(id,style+'-minutes_dash',mins,duration?duration:1000);$this.dashChangeTo(id,style+'-hours_dash',hours,duration?duration:1000);$this.dashChangeTo(id,style+'-days_dash',days,duration?duration:1000);$this.dashChangeTo(id,style+'-days_trip_dash',days,duration?duration:1000);$this.dashChangeTo(id,style+'-weeks_dash',weeks,duration?duration:1000);$this.dashChangeTo(id,style+'-weeks_trip_dash',weeks,duration?duration:1000);$.data($this[0],'diffSecs',diffSecs);if(diffSecs>0||$.data($this[0],'launchtarget')=='countup'){if($.data($this[0],'status')=='play'){var delta=0;delay=1000;now=new Date();before=$.data($this[0],'before');elapsedTime=(now.getTime()-before.getTime());if(elapsedTime>=delay+1000){delta+=Math.floor(1*(elapsedTime/delay))}else{delta=1}before=new Date();$.data($this[0],'before',before);e=$this;t=setTimeout(function(){e.doCountDown(id,diffSecs-delta)},1000)}}else if($.data($this[0],'callback')){if($.data($this[0],'hangtime')){}$.data($this[0],'callback')()}};$.fn.dashChangeTo=function(id,dash,n,duration){$this=$('#'+id);style=$.data($this[0],'style');for(var i=($this.find('.'+dash+' .'+style+'-digit').length-1);i>=0;i--){var d=n%10;n=(n-d)/10;$this.digitChangeTo('#'+$this.attr('id')+' .'+dash+' .'+style+'-digit:eq('+i+')',d,duration)}};$.fn.digitChangeTo=function(digit,n,duration){if(!duration){duration=500}if($(digit+' div.top').html()!=n+''){$(digit+' div.top').css({'display':'none'});$(digit+' div.top').html((n?n:'0')).stop(true,true).slideDown(duration);$(digit+' div.bottom').stop(true,true).animate({'height':''},duration,function(){$(digit+' div.bottom').html($(digit+' div.top').html());$(digit+' div.bottom').css({'display':'block','height':''});$(digit+' div.top').hide().slideUp(10)})}}})(jQuery);
js/throbber.js DELETED
@@ -1,9 +0,0 @@
1
- //this file currently not used
2
- var i=0;
3
- function throbber(){
4
- i=i+1;
5
- postMessage(i);
6
- setTimeout("throbber()",1000);
7
- }
8
-
9
- throbber();
 
 
 
 
 
 
 
 
 
readme.txt CHANGED
@@ -5,7 +5,9 @@ Donate link: http://plugins.twinpictures.de/plugins/t-minus-countdown/
5
  Tags: countdown, timer, clock, ticker, widget, event, counter, count down, t minus, t-minus, twinpictures, plguin-oven, pluginoven, G2, spaceBros, littlewebtings, jQuery, javascript
6
  Requires at least: 3.3
7
  Tested up to: 3.5
8
- Stable tag: 2.2.8
 
 
9
 
10
  T(-) Countdown will display a highly customizable, flash-free countdown timer as a sidebar widget or in a post or page using a shortcode.
11
 
@@ -61,6 +63,10 @@ Ah yes! <a href='http://twitter.com/#!/twinpictures'>@Twinpictures</a> is on the
61
 
62
  == Changelog ==
63
 
 
 
 
 
64
  = 2.2.8 =
65
  * fixed missing php tag.
66
 
@@ -164,6 +170,10 @@ Ah yes! <a href='http://twitter.com/#!/twinpictures'>@Twinpictures</a> is on the
164
 
165
  == Upgrade Notice ==
166
 
 
 
 
 
167
  = 2.2.8 =
168
  * small bug fix that was causing issues on some systems.
169
 
5
  Tags: countdown, timer, clock, ticker, widget, event, counter, count down, t minus, t-minus, twinpictures, plguin-oven, pluginoven, G2, spaceBros, littlewebtings, jQuery, javascript
6
  Requires at least: 3.3
7
  Tested up to: 3.5
8
+ Stable tag: 2.2.9
9
+ License: GPLv2 or later
10
+ License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
 
12
  T(-) Countdown will display a highly customizable, flash-free countdown timer as a sidebar widget or in a post or page using a shortcode.
13
 
63
 
64
  == Changelog ==
65
 
66
+ = 2.2.9 =
67
+ * calculate local time using WordPress current_time() function
68
+ * fixed bug for iOS devices using Chrome
69
+
70
  = 2.2.8 =
71
  * fixed missing php tag.
72
 
170
 
171
  == Upgrade Notice ==
172
 
173
+ = 2.2.9 =
174
+ * current time calculation now uses WordPress current_time() function
175
+ * bug fix for iOS devices using Chrome
176
+
177
  = 2.2.8 =
178
  * small bug fix that was causing issues on some systems.
179