@@ -202,33 +202,38 @@ $.fn.calendar = function(parameters) {
202
202
calendar : function ( ) {
203
203
var i , r , c , p , row , cell , pageGrid ;
204
204
205
- var mode = module . get . mode ( ) ;
206
- var today = new Date ( ) ;
207
- var date = module . get . date ( ) ;
208
- var focusDate = module . get . focusDate ( ) ;
209
- var display = focusDate || date || settings . initialDate || today ;
210
- display = module . helper . dateInRange ( display ) ;
205
+ var
206
+ mode = module . get . mode ( ) ,
207
+ today = new Date ( ) ,
208
+ date = module . get . date ( ) ,
209
+ focusDate = module . get . focusDate ( ) ,
210
+ display = module . helper . dateInRange ( focusDate || date || settings . initialDate || today )
211
+ ;
211
212
212
213
if ( ! focusDate ) {
213
214
focusDate = display ;
214
215
module . set . focusDate ( focusDate , false , false ) ;
215
216
}
216
217
217
- var isYear = mode === 'year' ;
218
- var isMonth = mode === 'month' ;
219
- var isDay = mode === 'day' ;
220
- var isHour = mode === 'hour' ;
221
- var isMinute = mode === 'minute' ;
222
- var isTimeOnly = settings . type === 'time' ;
218
+ var
219
+ isYear = mode === 'year' ,
220
+ isMonth = mode === 'month' ,
221
+ isDay = mode === 'day' ,
222
+ isHour = mode === 'hour' ,
223
+ isMinute = mode === 'minute' ,
224
+ isTimeOnly = settings . type === 'time'
225
+ ;
223
226
224
227
var multiMonth = Math . max ( settings . multiMonth , 1 ) ;
225
228
var monthOffset = ! isDay ? 0 : module . get . monthOffset ( ) ;
226
229
227
- var minute = display . getMinutes ( ) ;
228
- var hour = display . getHours ( ) ;
229
- var day = display . getDate ( ) ;
230
- var startMonth = display . getMonth ( ) + monthOffset ;
231
- var year = display . getFullYear ( ) ;
230
+ var
231
+ minute = display . getMinutes ( ) ,
232
+ hour = display . getHours ( ) ,
233
+ day = display . getDate ( ) ,
234
+ startMonth = display . getMonth ( ) + monthOffset ,
235
+ year = display . getFullYear ( )
236
+ ;
232
237
233
238
var columns = isDay ? settings . showWeekNumbers ? 8 : 7 : isHour ? 4 : timeGap [ 'column' ] ;
234
239
var rows = isDay || isHour ? 6 : timeGap [ 'row' ] ;
@@ -254,17 +259,18 @@ $.fn.calendar = function(parameters) {
254
259
rows = Math . ceil ( requiredCells / 7 ) ;
255
260
}
256
261
257
- var yearChange = isYear ? 10 : isMonth ? 1 : 0 ;
258
- var monthChange = isDay ? 1 : 0 ;
259
- var dayChange = isHour || isMinute ? 1 : 0 ;
260
- var prevNextDay = isHour || isMinute ? day : 1 ;
261
- var prevDate = new Date ( year - yearChange , month - monthChange , prevNextDay - dayChange , hour ) ;
262
- var nextDate = new Date ( year + yearChange , month + monthChange , prevNextDay + dayChange , hour ) ;
263
-
264
- var prevLast = isYear ? new Date ( Math . ceil ( year / 10 ) * 10 - 9 , 0 , 0 ) :
265
- isMonth ? new Date ( year , 0 , 0 ) : isDay ? new Date ( year , month , 0 ) : new Date ( year , month , day , - 1 ) ;
266
- var nextFirst = isYear ? new Date ( Math . ceil ( year / 10 ) * 10 + 1 , 0 , 1 ) :
267
- isMonth ? new Date ( year + 1 , 0 , 1 ) : isDay ? new Date ( year , month + 1 , 1 ) : new Date ( year , month , day + 1 ) ;
262
+ var
263
+ yearChange = isYear ? 10 : isMonth ? 1 : 0 ,
264
+ monthChange = isDay ? 1 : 0 ,
265
+ dayChange = isHour || isMinute ? 1 : 0 ,
266
+ prevNextDay = isHour || isMinute ? day : 1 ,
267
+ prevDate = new Date ( year - yearChange , month - monthChange , prevNextDay - dayChange , hour ) ,
268
+ nextDate = new Date ( year + yearChange , month + monthChange , prevNextDay + dayChange , hour ) ,
269
+ prevLast = isYear ? new Date ( Math . ceil ( year / 10 ) * 10 - 9 , 0 , 0 ) :
270
+ isMonth ? new Date ( year , 0 , 0 ) : isDay ? new Date ( year , month , 0 ) : new Date ( year , month , day , - 1 ) ,
271
+ nextFirst = isYear ? new Date ( Math . ceil ( year / 10 ) * 10 + 1 , 0 , 1 ) :
272
+ isMonth ? new Date ( year + 1 , 0 , 1 ) : isDay ? new Date ( year , month + 1 , 1 ) : new Date ( year , month , day + 1 )
273
+ ;
268
274
269
275
var tempMode = mode ;
270
276
if ( isDay && settings . showWeekNumbers ) {
@@ -809,7 +815,7 @@ $.fn.calendar = function(parameters) {
809
815
module . set . mode ( newMode ) ;
810
816
if ( mode === 'hour' || ( mode === 'day' && module . get . date ( ) ) ) {
811
817
//the user has chosen enough to consider a valid date/time has been chosen
812
- module . set . date ( date ) ;
818
+ module . set . date ( date , true , false ) ;
813
819
} else {
814
820
module . set . focusDate ( date ) ;
815
821
}
0 commit comments