diff --git a/api/js/etemplate/et2_widget_countdown.js b/api/js/etemplate/et2_widget_countdown.js index f52db3aea4..2fd73c3ce9 100644 --- a/api/js/etemplate/et2_widget_countdown.js +++ b/api/js/etemplate/et2_widget_countdown.js @@ -86,8 +86,11 @@ var et2_countdown = /** @class */ (function (_super) { var distance = this.time.getTime() - now.getTime(); if (distance < 0) return 0; - if (this.options.alarm > 0 && this.options.alarm == distance / 1000 && typeof this.onAlarm == 'function') { - this.onAlarm(); + var alarms = Array.isArray(this.options.alarm) ? this.options.alarm : [this.options.alarm]; + for (var i = 0; i <= alarms.length; i++) { + if (alarms[i] > 0 && alarms[i] == distance / 1000 && typeof this.onAlarm == 'function') { + this.onAlarm(); + } } var values = { days: Math.floor(distance / (1000 * 60 * 60 * 24)), diff --git a/api/js/etemplate/et2_widget_countdown.ts b/api/js/etemplate/et2_widget_countdown.ts index 6b20d4f4e8..edf4001038 100644 --- a/api/js/etemplate/et2_widget_countdown.ts +++ b/api/js/etemplate/et2_widget_countdown.ts @@ -120,10 +120,17 @@ export class et2_countdown extends et2_valueWidget { let distance = this.time.getTime() - now.getTime(); if (distance < 0) return 0; - if (this.options.alarm > 0 && this.options.alarm == distance/1000 && typeof this.onAlarm == 'function') + + let alarms = Array.isArray(this.options.alarm) ? this.options.alarm : [this.options.alarm]; + + for (let i=0;i<=alarms.length;i++) { - this.onAlarm(); + if (alarms[i] > 0 && alarms[i] == distance/1000 && typeof this.onAlarm == 'function') + { + this.onAlarm(); + } } + let values = { days: Math.floor(distance / (1000 * 60 * 60 * 24)), hours: Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)),