Tested bug fixes, incremented to version 0.8

This commit is contained in:
Trent 2010-11-14 22:41:47 -05:00
parent ee2821c91d
commit b4c322c657

View file

@ -1,8 +1,8 @@
/* /*
* jQuery timepicker addon * jQuery timepicker addon
* By: Trent Richardson [http://trentrichardson.com] * By: Trent Richardson [http://trentrichardson.com]
* Version 0.7.3 * Version 0.8
* Last Modified: 11/9/2010 * Last Modified: 11/14/2010
* *
* Copyright 2010 Trent Richardson * Copyright 2010 Trent Richardson
* Dual licensed under the MIT and GPL licenses. * Dual licensed under the MIT and GPL licenses.
@ -172,7 +172,8 @@
{ {
var $dp = dp_inst.dpDiv; var $dp = dp_inst.dpDiv;
var opts = tp_inst.defaults; var opts = tp_inst.defaults;
var dp_id = dp_inst.id;
// Added by Peter Medeiros: // Added by Peter Medeiros:
// - Figure out what the hour/minute/second max should be based on the step values. // - Figure out what the hour/minute/second max should be based on the step values.
// - Example: if stepMinute is 15, then minMax is 45. // - Example: if stepMinute is 15, then minMax is 45.
@ -181,13 +182,13 @@
var secMax = opts.secondMax - (opts.secondMax % opts.stepSecond); var secMax = opts.secondMax - (opts.secondMax % opts.stepSecond);
// Prevent displaying twice // Prevent displaying twice
if ($dp.find("div#ui-timepicker-div-" + dp_inst.id).length === 0){ if ($dp.find("div#ui-timepicker-div-" + dp_id).length === 0){
var noDisplay = ' style="display:none;"'; var noDisplay = ' style="display:none;"';
var html = var html =
'<div class="ui-timepicker-div" id="ui-timepicker-div-' + dp_inst.id + '"><dl>' + '<div class="ui-timepicker-div" id="ui-timepicker-div-' + dp_id + '"><dl>' +
'<dt class="ui_tpicker_time_label" id="ui_tpicker_time_label_' + dp_inst.id + '"' + ((opts.showTime) ? '' : noDisplay) + '>' + opts.timeText + '</dt>' + '<dt class="ui_tpicker_time_label" id="ui_tpicker_time_label_' + dp_id + '"' + ((opts.showTime) ? '' : noDisplay) + '>' + opts.timeText + '</dt>' +
'<dd class="ui_tpicker_time" id="ui_tpicker_time_' + dp_inst.id + '"' + ((opts.showTime) ? '' : noDisplay) + '></dd>' + '<dd class="ui_tpicker_time" id="ui_tpicker_time_' + dp_id + '"' + ((opts.showTime) ? '' : noDisplay) + '></dd>' +
'<dt class="ui_tpicker_hour_label" id="ui_tpicker_hour_label_' + dp_inst.id + '"' + ((opts.showHour) ? '' : noDisplay) + '>' + opts.hourText + '</dt>'; '<dt class="ui_tpicker_hour_label" id="ui_tpicker_hour_label_' + dp_id + '"' + ((opts.showHour) ? '' : noDisplay) + '>' + opts.hourText + '</dt>';
var hourGridSize = 0; var hourGridSize = 0;
var minuteGridSize = 0; var minuteGridSize = 0;
var secondGridSize = 0; var secondGridSize = 0;
@ -196,7 +197,7 @@
if (opts.showHour && opts.hourGrid > 0) if (opts.showHour && opts.hourGrid > 0)
{ {
html += '<dd class="ui_tpicker_hour">' + html += '<dd class="ui_tpicker_hour">' +
'<div id="ui_tpicker_hour_' + dp_inst.id + '"' + ((opts.showHour) ? '' : noDisplay) + '></div>' + '<div id="ui_tpicker_hour_' + dp_id + '"' + ((opts.showHour) ? '' : noDisplay) + '></div>' +
'<div style="padding-left: 1px"><table><tr>'; '<div style="padding-left: 1px"><table><tr>';
for (var h = 0; h <= hourMax; h += opts.hourGrid) for (var h = 0; h <= hourMax; h += opts.hourGrid)
@ -235,15 +236,15 @@
} }
else else
{ {
html += '<dd class="ui_tpicker_hour" id="ui_tpicker_hour_' + dp_inst.id + '"' + ((opts.showHour) ? '' : noDisplay) + '></dd>'; html += '<dd class="ui_tpicker_hour" id="ui_tpicker_hour_' + dp_id + '"' + ((opts.showHour) ? '' : noDisplay) + '></dd>';
} }
html += '<dt class="ui_tpicker_minute_label" id="ui_tpicker_minute_label_' + dp_inst.id + '"' + ((opts.showMinute) ? '' : noDisplay) + '>' + opts.minuteText + '</dt>'; html += '<dt class="ui_tpicker_minute_label" id="ui_tpicker_minute_label_' + dp_id + '"' + ((opts.showMinute) ? '' : noDisplay) + '>' + opts.minuteText + '</dt>';
if (opts.showMinute && opts.minuteGrid > 0) if (opts.showMinute && opts.minuteGrid > 0)
{ {
html += '<dd class="ui_tpicker_minute">' + html += '<dd class="ui_tpicker_minute">' +
'<div id="ui_tpicker_minute_' + dp_inst.id + '"' + ((opts.showMinute) ? '' : noDisplay) + '></div>' + '<div id="ui_tpicker_minute_' + dp_id + '"' + ((opts.showMinute) ? '' : noDisplay) + '></div>' +
'<div style="padding-left: 1px"><table><tr>'; '<div style="padding-left: 1px"><table><tr>';
for (var m = 0; m <= minMax; m += opts.minuteGrid) for (var m = 0; m <= minMax; m += opts.minuteGrid)
@ -257,15 +258,15 @@
} }
else else
{ {
html += '<dd class="ui_tpicker_minute" id="ui_tpicker_minute_' + dp_inst.id + '"' + ((opts.showMinute) ? '' : noDisplay) + '></dd>'; html += '<dd class="ui_tpicker_minute" id="ui_tpicker_minute_' + dp_id + '"' + ((opts.showMinute) ? '' : noDisplay) + '></dd>';
} }
html += '<dt class="ui_tpicker_second_label" id="ui_tpicker_second_label_' + dp_inst.id + '"' + ((opts.showSecond) ? '' : noDisplay) + '>' + opts.secondText + '</dt>'; html += '<dt class="ui_tpicker_second_label" id="ui_tpicker_second_label_' + dp_id + '"' + ((opts.showSecond) ? '' : noDisplay) + '>' + opts.secondText + '</dt>';
if (opts.showSecond && opts.secondGrid > 0) if (opts.showSecond && opts.secondGrid > 0)
{ {
html += '<dd class="ui_tpicker_second">' + html += '<dd class="ui_tpicker_second">' +
'<div id="ui_tpicker_second_' + dp_inst.id + '"' + ((opts.showSecond) ? '' : noDisplay) + '></div>' + '<div id="ui_tpicker_second_' + dp_id + '"' + ((opts.showSecond) ? '' : noDisplay) + '></div>' +
'<div style="padding-left: 1px"><table><tr>'; '<div style="padding-left: 1px"><table><tr>';
for (var s = 0; s <= secMax; s += opts.secondGrid) for (var s = 0; s <= secMax; s += opts.secondGrid)
@ -279,7 +280,7 @@
} }
else else
{ {
html += '<dd class="ui_tpicker_second" id="ui_tpicker_second_' + dp_inst.id + '"' + ((opts.showSecond) ? '' : noDisplay) + '></dd>'; html += '<dd class="ui_tpicker_second" id="ui_tpicker_second_' + dp_id + '"' + ((opts.showSecond) ? '' : noDisplay) + '></dd>';
} }
html += '</dl></div>'; html += '</dl></div>';
@ -295,7 +296,7 @@
$dp.find('.ui-datepicker-header, .ui-datepicker-calendar').hide(); $dp.find('.ui-datepicker-header, .ui-datepicker-calendar').hide();
} }
tp_inst.hour_slider = $tp.find('#ui_tpicker_hour_' + dp_inst.id).slider({ tp_inst.hour_slider = $tp.find('#ui_tpicker_hour_' + dp_id).slider({
orientation: "horizontal", orientation: "horizontal",
value: tp_inst.hour, value: tp_inst.hour,
min: opts.hourMin, min: opts.hourMin,
@ -310,7 +311,7 @@
// Updated by Peter Medeiros: // Updated by Peter Medeiros:
// - Pass in Event and UI instance into slide function // - Pass in Event and UI instance into slide function
tp_inst.minute_slider = $tp.find('#ui_tpicker_minute_' + dp_inst.id).slider({ tp_inst.minute_slider = $tp.find('#ui_tpicker_minute_' + dp_id).slider({
orientation: "horizontal", orientation: "horizontal",
value: tp_inst.minute, value: tp_inst.minute,
min: opts.minuteMin, min: opts.minuteMin,
@ -324,7 +325,7 @@
} }
}); });
tp_inst.second_slider = $tp.find('#ui_tpicker_second_' + dp_inst.id).slider({ tp_inst.second_slider = $tp.find('#ui_tpicker_second_' + dp_id).slider({
orientation: "horizontal", orientation: "horizontal",
value: tp_inst.second, value: tp_inst.second,
min: opts.secondMin, min: opts.secondMin,
@ -456,7 +457,7 @@
$dp.append($tp); $dp.append($tp);
} }
tp_inst.$timeObj = $('#ui_tpicker_time_' + dp_inst.id); tp_inst.$timeObj = $('#ui_tpicker_time_' + dp_id);
if (dp_inst !== null) if (dp_inst !== null)
{ {
@ -547,6 +548,10 @@
this.formattedDate = $.datepicker.formatDate(dateFmt, (dt === null ? new Date() : dt), formatCfg); this.formattedDate = $.datepicker.formatDate(dateFmt, (dt === null ? new Date() : dt), formatCfg);
var formattedDateTime = this.formattedDate; var formattedDateTime = this.formattedDate;
var timeAvailable = ((dt !== null && tp_inst.timeDefined) !== true)? false : true; var timeAvailable = ((dt !== null && tp_inst.timeDefined) !== true)? false : true;
if (dp_inst.lastVal.length > 0 && this.$input.val().length === 0) {
return;
}
if(this.defaults.timeOnly === true){ if(this.defaults.timeOnly === true){
formattedDateTime = this.formattedTime; formattedDateTime = this.formattedTime;