From 33193bab5d7db32d37de327dac2f4cb555e73d4b Mon Sep 17 00:00:00 2001 From: arnaudbreton Date: Tue, 25 Sep 2012 12:42:50 +0300 Subject: [PATCH 1/2] Overriding _updateAlternate to init altField --- jquery-ui-timepicker-addon.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/jquery-ui-timepicker-addon.js b/jquery-ui-timepicker-addon.js index 3fbd7b5..af51092 100644 --- a/jquery-ui-timepicker-addon.js +++ b/jquery-ui-timepicker-addon.js @@ -1254,6 +1254,33 @@ return $.datepicker._base_doKeyPress(event); }; + /* + * Fourth bad hack :/ override _updateAlternate function used in inline mode to init altField + */ + $.datepicker._base_updateAlternate = $.datepicker._updateAlternate; + /* Update any alternate field to synchronise with the main field. */ + $.datepicker._updateAlternate = function(inst) { + tp_inst = this._get(inst, 'timepicker'); + var altField = tp_inst._defaults.altField; + if (altField) { // update alternate field too + var altFormat = tp_inst._defaults.altFormat || tp_inst._defaults.dateFormat; + var date = this._getDate(inst); + var formatCfg = $.datepicker._getFormatConfig(inst); + var altFormattedDateTime = '', altSeparator = tp_inst._defaults.altSeparator ? tp_inst._defaults.altSeparator : tp_inst._defaults.separator, altTimeSuffix = tp_inst._defaults.altTimeSuffix ? tp_inst._defaults.altTimeSuffix : tp_inst._defaults.timeSuffix; + if (tp_inst._defaults.altFormat) + altFormattedDateTime = $.datepicker.formatDate(tp_inst._defaults.altFormat, (date === null ? new Date() : date), formatCfg); + else + altFormattedDateTime = tp_inst.formattedDate; + if (altFormattedDateTime) + altFormattedDateTime += altSeparator; + if (tp_inst._defaults.altTimeFormat) + altFormattedDateTime += $.datepicker.formatTime(tp_inst._defaults.altTimeFormat, tp_inst, tp_inst._defaults) + altTimeSuffix; + else + altFormattedDateTime += tp_inst.formattedTime + altTimeSuffix; + + $(altField).each(function() { $(this).val(altFormattedDateTime); }); + } + }, /* * Override key up event to sync manual input changes. */ From 89d1f6928fc3dbc7352532d0588ad0c6087aceee Mon Sep 17 00:00:00 2001 From: arnaudbreton Date: Tue, 25 Sep 2012 12:42:50 +0300 Subject: [PATCH 2/2] Overriding _updateAlternate to init altField with time in inline mode --- jquery-ui-timepicker-addon.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/jquery-ui-timepicker-addon.js b/jquery-ui-timepicker-addon.js index 3fbd7b5..af51092 100644 --- a/jquery-ui-timepicker-addon.js +++ b/jquery-ui-timepicker-addon.js @@ -1254,6 +1254,33 @@ return $.datepicker._base_doKeyPress(event); }; + /* + * Fourth bad hack :/ override _updateAlternate function used in inline mode to init altField + */ + $.datepicker._base_updateAlternate = $.datepicker._updateAlternate; + /* Update any alternate field to synchronise with the main field. */ + $.datepicker._updateAlternate = function(inst) { + tp_inst = this._get(inst, 'timepicker'); + var altField = tp_inst._defaults.altField; + if (altField) { // update alternate field too + var altFormat = tp_inst._defaults.altFormat || tp_inst._defaults.dateFormat; + var date = this._getDate(inst); + var formatCfg = $.datepicker._getFormatConfig(inst); + var altFormattedDateTime = '', altSeparator = tp_inst._defaults.altSeparator ? tp_inst._defaults.altSeparator : tp_inst._defaults.separator, altTimeSuffix = tp_inst._defaults.altTimeSuffix ? tp_inst._defaults.altTimeSuffix : tp_inst._defaults.timeSuffix; + if (tp_inst._defaults.altFormat) + altFormattedDateTime = $.datepicker.formatDate(tp_inst._defaults.altFormat, (date === null ? new Date() : date), formatCfg); + else + altFormattedDateTime = tp_inst.formattedDate; + if (altFormattedDateTime) + altFormattedDateTime += altSeparator; + if (tp_inst._defaults.altTimeFormat) + altFormattedDateTime += $.datepicker.formatTime(tp_inst._defaults.altTimeFormat, tp_inst, tp_inst._defaults) + altTimeSuffix; + else + altFormattedDateTime += tp_inst.formattedTime + altTimeSuffix; + + $(altField).each(function() { $(this).val(altFormattedDateTime); }); + } + }, /* * Override key up event to sync manual input changes. */