jquery-countdown-rails 2.0.1 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ed634544ae94ed960de9cd9524e740c8d96dd287
4
- data.tar.gz: 2ce8ba956821119fa47f91db8fbc065929dff116
3
+ metadata.gz: 6e3b986c139613106d4e75e9b45cb41d31146d08
4
+ data.tar.gz: e0cdedc85179e7fc1186d955f34120972d509266
5
5
  SHA512:
6
- metadata.gz: 50747f65481e55e013fe0a39ecd72df03e9cb5347386262baab9ca1bf0a222ce21433a621fd54a3c784ad683b9010f1d84ba75aa294c92e0f193f69fb319703f
7
- data.tar.gz: 110ff4526134e8639e1a8be439da442be013bf31e36099aa2fc149648957c628b001fd954e86b7e1216ef77e513e5c8026e4aba733a3173ac2f967803eb23891
6
+ metadata.gz: d79f90ea6e880007ce28837024b3247a797806428bb74a4ead97291962e1332efaddeddb27b652065db432a98c817690d1851cfd6157842f2701250d638276a2
7
+ data.tar.gz: 605fc095abafb215dc85e91a8ace5e2389db388812c6a5e211f5eb1a2e08f17ccf1107929b3453cfcef31d4849b8a1689207b364f881d0136aa4c250a1cf3fad
data/.gitignore CHANGED
@@ -15,3 +15,7 @@ spec/reports
15
15
  test/tmp
16
16
  test/version_tmp
17
17
  tmp
18
+
19
+ # Ignore minified upstreams
20
+ vendor/assets/javascripts/jquery.countdown.min.js
21
+ vendor/assets/javascripts/jquery.plugin.min.js
@@ -1,4 +1,4 @@
1
1
  module JqueryCountdownRails
2
2
  # Public: String gem version number, which reflects the asset version number.
3
- VERSION = '2.0.1'
3
+ VERSION = '2.0.2'
4
4
  end
@@ -5,7 +5,7 @@
5
5
  $.countdown.regionalOptions['es'] = {
6
6
  labels: ['Años', 'Meses', 'Semanas', 'Días', 'Horas', 'Minutos', 'Segundos'],
7
7
  labels1: ['Año', 'Mes', 'Semana', 'Día', 'Hora', 'Minuto', 'Segundo'],
8
- compactLabels: ['a', 'm', 's', 'g'],
8
+ compactLabels: ['a', 'm', 's', 'd'],
9
9
  whichLabels: null,
10
10
  digits: ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'],
11
11
  timeSeparator: ':', isRTL: false};
@@ -1,7 +1,7 @@
1
1
  /* http://keith-wood.name/countdown.html
2
- Countdown for jQuery v2.0.1.
2
+ Countdown for jQuery v2.0.2.
3
3
  Written by Keith Wood (kbwood{at}iinet.com.au) January 2008.
4
- Available under the MIT (https://github.com/jquery/jquery/blob/master/MIT-LICENSE.txt) license.
4
+ Available under the MIT (http://keith-wood.name/licence.html) license.
5
5
  Please attribute the author if you use it. */
6
6
 
7
7
  (function($) { // Hide scope, no $ conflict
@@ -253,6 +253,40 @@
253
253
  periods[3] * 86400 + periods[4] * 3600 + periods[5] * 60 + periods[6];
254
254
  },
255
255
 
256
+ /** Resynchronise the countdowns with the server.
257
+ @example $.countdown.resync() */
258
+ resync: function() {
259
+ var self = this;
260
+ $('.' + this._getMarker()).each(function() { // Each countdown
261
+ var inst = $.data(this, self.name);
262
+ if (inst.options.serverSync) { // If synced
263
+ var serverSync = null;
264
+ for (var i = 0; i < self._serverSyncs.length; i++) {
265
+ if (self._serverSyncs[i][0] == inst.options.serverSync) { // Find sync details
266
+ serverSync = self._serverSyncs[i];
267
+ break;
268
+ }
269
+ }
270
+ if (serverSync[2] == null) { // Recalculate if missing
271
+ var serverResult = ($.isFunction(inst.options.serverSync) ?
272
+ inst.options.serverSync.apply(this, []) : null);
273
+ serverSync[2] =
274
+ (serverResult ? new Date().getTime() - serverResult.getTime() : 0) - serverSync[1];
275
+ }
276
+ if (inst._since) { // Apply difference
277
+ inst._since.setMilliseconds(inst._since.getMilliseconds() + serverSync[2]);
278
+ }
279
+ inst._until.setMilliseconds(inst._until.getMilliseconds() + serverSync[2]);
280
+ }
281
+ });
282
+ for (var i = 0; i < self._serverSyncs.length; i++) { // Update sync details
283
+ if (self._serverSyncs[i][2] != null) {
284
+ self._serverSyncs[i][1] += self._serverSyncs[i][2];
285
+ delete self._serverSyncs[i][2];
286
+ }
287
+ }
288
+ },
289
+
256
290
  _instSettings: function(elem, options) {
257
291
  return {_periods: [0, 0, 0, 0, 0, 0, 0]};
258
292
  },
@@ -375,8 +409,6 @@
375
409
  @param inst {object} The current settings for this instance.
376
410
  @param recalc {boolean} True if until or since are set. */
377
411
  _adjustSettings: function(elem, inst, recalc) {
378
- var now;
379
- var serverOffset = 0;
380
412
  var serverEntry = null;
381
413
  for (var i = 0; i < this._serverSyncs.length; i++) {
382
414
  if (this._serverSyncs[i][0] == inst.options.serverSync) {
@@ -385,14 +417,14 @@
385
417
  }
386
418
  }
387
419
  if (serverEntry != null) {
388
- serverOffset = (inst.options.serverSync ? serverEntry : 0);
389
- now = new Date();
420
+ var serverOffset = (inst.options.serverSync ? serverEntry : 0);
421
+ var now = new Date();
390
422
  }
391
423
  else {
392
424
  var serverResult = ($.isFunction(inst.options.serverSync) ?
393
425
  inst.options.serverSync.apply(elem[0], []) : null);
394
- now = new Date();
395
- serverOffset = (serverResult ? now.getTime() - serverResult.getTime() : 0);
426
+ var now = new Date();
427
+ var serverOffset = (serverResult ? now.getTime() - serverResult.getTime() : 0);
396
428
  this._serverSyncs.push([inst.options.serverSync, serverOffset]);
397
429
  }
398
430
  var timezone = inst.options.timezone;
@@ -778,8 +810,8 @@
778
810
  var periods = [0, 0, 0, 0, 0, 0, 0];
779
811
  if (show[Y] || show[O]) {
780
812
  // Treat end of months as the same
781
- var lastNow = this._getDaysInMonth(now.getFullYear(), now.getMonth());
782
- var lastUntil = this._getDaysInMonth(until.getFullYear(), until.getMonth());
813
+ var lastNow = this._getDaysInMonth(now.getFullYear(), now.getMonth());
814
+ var lastUntil = this._getDaysInMonth(until.getFullYear(), until.getMonth());
783
815
  var sameDay = (until.getDate() == now.getDate() ||
784
816
  (until.getDate() >= Math.min(lastNow, lastUntil) &&
785
817
  now.getDate() >= Math.min(lastNow, lastUntil)));
@@ -795,7 +827,7 @@
795
827
  // Adjust for months difference and end of month if necessary
796
828
  now = new Date(now.getTime());
797
829
  var wasLastDay = (now.getDate() == lastNow);
798
- var lastDay = this._getDaysInMonth(now.getFullYear() + periods[Y],
830
+ var lastDay = this._getDaysInMonth(now.getFullYear() + periods[Y],
799
831
  now.getMonth() + periods[O]);
800
832
  if (now.getDate() > lastDay) {
801
833
  now.setDate(lastDay);
@@ -74,7 +74,7 @@
74
74
 
75
75
  /** Abstract base class for collection plugins v1.0.1.
76
76
  Written by Keith Wood (kbwood{at}iinet.com.au) December 2013.
77
- Licensed under the MIT (https://github.com/jquery/jquery/blob/master/MIT-LICENSE.txt) license.
77
+ Licensed under the MIT (http://keith-wood.name/licence.html) license.
78
78
  @module $.JQPlugin
79
79
  @abstract */
80
80
  JQClass.classes.JQPlugin = JQClass.extend({
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jquery-countdown-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mauricio Pasquier Juan