1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- $(document).ready(function(){
- $('input[data-grav-field-datetime]').each(function() {
- var $input = $(this),
- min = $input.attr('min'),
- max = $input.attr('max'),
- regex, match,
- userOptions = $input.data('dateFormats') || {},
- kendoOptions = { format: "dd-MM-yyyy HH:mm", timeFormat: "HH:mm" };
- kendoOptions = $.extend({}, kendoOptions, userOptions);
- if (min || max) {
- regex = /(\d{2})-(\d{2})-(\d{4}) (\d{2}):(\d{2})/;
- }
- if (min && (match = regex.exec(min))) {
- kendoOptions.min = new Date(
- (+match[3]),
- (+match[2])-1,
- (+match[1]),
- (+match[4]),
- (+match[5])
- );
- }
- if (max && (match = regex.exec(max))) {
- kendoOptions.max = new Date(
- (+match[3]),
- (+match[2])-1,
- (+match[1]),
- (+match[4]),
- (+match[5])
- );
- }
- $input.kendoDateTimePicker(kendoOptions);
- // Reset when user manually types in invalid date
- $input.on('change', function () {
- $input.css('opacity', 1);
- $input.parents('.form-data').css('opacity', 1);
- var kWidget = $input.data('kendoDateTimePicker');
- if (kWidget && kWidget.value() === null && $input.val()) {
- kWidget.value($input.data('kendo-previous') || "");
- } else {
- $input.data('kendo-previous', kWidget.value() || "");
- }
- });
- });
- });
|