|
137 | 137 | tp_inst.timeDefined = (treg) ? true : false; |
138 | 138 |
|
139 | 139 | if (typeof(dp_inst.stay_open) !== 'boolean' || dp_inst.stay_open === false) { |
140 | | - // wait for datepicker to create itself.. 60% of the time it works every time.. |
| 140 | + // wait for datepicker to create itself.. 60% of the time it works every time.. |
141 | 141 | setTimeout(function() { |
142 | 142 | tp_inst.injectTimePicker(dp_inst, tp_inst); |
143 | 143 | }, 10); |
|
453 | 453 | // on time change is also called when the time is updated in the text field |
454 | 454 | //######################################################################## |
455 | 455 | onTimeChange: function(dp_inst, tp_inst) { |
456 | | - var hour = tp_inst.hour_slider.slider('value'); |
457 | | - var minute = tp_inst.minute_slider.slider('value'); |
458 | | - var second = tp_inst.second_slider.slider('value'); |
| 456 | + var hour = (tp_inst.hour_slider)? tp_inst.hour_slider.slider('value') : tp_inst.hour; |
| 457 | + var minute = (tp_inst.minute_slider)? tp_inst.minute_slider.slider('value') : tp_inst.minute; |
| 458 | + var second = (tp_inst.second_slider)? tp_inst.second_slider.slider('value') : tp_inst.second; |
459 | 459 | var ampm = (hour < 11.5) ? 'AM' : 'PM'; |
460 | 460 | hour = (hour >= 11.5 && hour < 12) ? 12 : hour; |
461 | 461 | var hasChanged = false; |
|
472 | 472 | tp_inst.ampm = ampm; |
473 | 473 |
|
474 | 474 | tp_inst.formatTime(tp_inst); |
475 | | - tp_inst.$timeObj.text(tp_inst.formattedTime); |
| 475 | + if(tp_inst.$timeObj) |
| 476 | + tp_inst.$timeObj.text(tp_inst.formattedTime); |
476 | 477 |
|
477 | 478 | if (hasChanged) { |
478 | 479 | tp_inst.updateDateTime(dp_inst, tp_inst); |
|
525 | 526 | var formatCfg = $.datepicker._getFormatConfig(dp_inst); |
526 | 527 | this.formattedDate = $.datepicker.formatDate(dateFmt, (dt === null ? new Date() : dt), formatCfg); |
527 | 528 | var formattedDateTime = this.formattedDate; |
528 | | - var timeAvailable = dt !== null && tp_inst.timeDefined; |
| 529 | + var timeAvailable = ((dt !== null && tp_inst.timeDefined) !== true)? false : true; |
529 | 530 |
|
530 | 531 | if(this.defaults.timeOnly === true){ |
531 | 532 | formattedDateTime = this.formattedTime; |
|
541 | 542 | } |
542 | 543 |
|
543 | 544 | this.formattedDateTime = formattedDateTime; |
544 | | - this.$input.val(formattedDateTime); |
545 | | - this.$input.trigger("change"); |
| 545 | + if(!dp_inst.inline && this.$input){ |
| 546 | + this.$input.val(formattedDateTime); |
| 547 | + this.$input.trigger("change"); |
| 548 | + } |
546 | 549 | }, |
547 | 550 |
|
548 | 551 | setDefaults: function(settings) { |
|
633 | 636 | timepicker: tp // add timepicker as a property of datepicker: $.datepicker._get(dp_inst, 'timepicker'); |
634 | 637 | }); |
635 | 638 |
|
636 | | - return $(this).datepicker(tp.defaults); |
| 639 | + return input.datepicker(tp.defaults); |
637 | 640 |
|
638 | 641 | }; |
639 | 642 |
|
|
738 | 741 |
|
739 | 742 | var tp_inst = $.datepicker._get(inst, 'timepicker'); |
740 | 743 |
|
741 | | - if(tp_inst && tp_inst.hour_slider && tp_inst.minute_slider && tp_inst.second_slider){ |
| 744 | + if(tp_inst){ |
742 | 745 | var hour = date.getHours(); |
743 | 746 | var minute = date.getMinutes(); |
744 | 747 | var second = date.getSeconds(); |
|
749 | 752 | minute = tp_inst.defaults.minuteMin; |
750 | 753 | second = tp_inst.defaults.secondMin; |
751 | 754 | } |
752 | | - |
753 | | - tp_inst.hour_slider.slider('value', hour ); |
754 | | - tp_inst.minute_slider.slider('value', minute ); |
755 | | - tp_inst.second_slider.slider('value', second ); |
756 | 755 |
|
| 756 | + if(tp_inst.hour_slider && tp_inst.minute_slider && tp_inst.second_slider){ |
| 757 | + tp_inst.hour_slider.slider('value', hour ); |
| 758 | + tp_inst.minute_slider.slider('value', minute ); |
| 759 | + tp_inst.second_slider.slider('value', second ); |
| 760 | + } |
| 761 | + else{ |
| 762 | + tp_inst.hour = hour; |
| 763 | + tp_inst.minute = minute; |
| 764 | + tp_inst.second = second; |
| 765 | + } |
| 766 | + |
757 | 767 | tp_inst.onTimeChange(inst, tp_inst); |
758 | 768 | } |
759 | | - |
760 | 769 | }; |
761 | | - |
| 770 | + |
762 | 771 | //####################################################################################### |
763 | 772 | // override getDate() to allow getting time too within date object |
764 | 773 | //####################################################################################### |
765 | 774 | $.datepicker._base_setDate = $.datepicker._setDate; |
766 | 775 | $.datepicker._setDate = function(inst, date, noChange) { |
767 | 776 | var tp_inst = $.datepicker._get(inst, 'timepicker'); |
768 | 777 | var tp_date = new Date(date.getYear(), date.getMonth(), date.getDay(), date.getHours(), date.getMinutes(), date.getSeconds()); |
769 | | - |
| 778 | + |
770 | 779 | $.datepicker._base_setDate(inst, date, noChange); |
771 | 780 |
|
772 | 781 | if(tp_inst){ |
773 | 782 | this._setTime(inst, tp_date); |
774 | 783 | } |
775 | | - |
776 | 784 |
|
777 | 785 | }; |
778 | 786 |
|
|
808 | 816 | $.timepicker = new Timepicker(true); // singleton instance |
809 | 817 | })(jQuery); |
810 | 818 |
|
| 819 | + |
0 commit comments