diff --git a/js/utils/datetime.js b/js/utils/datetime.js index 901ad3cecd..1c8e53f430 100644 --- a/js/utils/datetime.js +++ b/js/utils/datetime.js @@ -50,13 +50,26 @@ wn.datetime = { d.setTime(d.getTime()+(days*24*60*60*1000)); return d }, + add_months: function(d, months) { + dt = dateutil.str_to_obj(d) + new_dt = new Date(dt.getFullYear(), dt.getMonth()+months, dt.getDate()) + if(new_dt.getDate() != dt.getDate()) { + // month has changed, go the last date of prev month + return dateutil.month_end(new Date(dt.getFullYear(), dt.getMonth()+months, 1)) + } + return dateutil.obj_to_str(new_dt); + }, + month_start: function() { var d = new Date(); return d.getFullYear() + '-' + int_to_str(d.getMonth()+1,2) + '-01'; }, - month_end: function() { - var d = new Date(); var m = d.getMonth() + 1; var y = d.getFullYear(); + month_end: function(d) { + if(!d)var d = new Date(); + var m = d.getMonth() + 1; + var y = d.getFullYear(); + last_date = month_last[m]; if(m==2 && (y % 4)==0 && ((y % 100)!=0 || (y % 400)==0)) // leap year test last_date = 29; diff --git a/js/wnf.compressed.js b/js/wnf.compressed.js index 94ee3dc2d0..7e322787c7 100644 --- a/js/wnf.compressed.js +++ b/js/wnf.compressed.js @@ -74,7 +74,10 @@ var isSafari=navigator.userAgent.indexOf('Safari')!=-1?1:0;var isChrome=navigato var month_list=['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'];var month_last={1:31,2:28,3:31,4:30,5:31,6:30,7:31,8:31,9:30,10:31,11:30,12:31} var month_list_full=['January','February','March','April','May','June','July','August','September','October','November','December'];var week_list=['Sun','Mon','Tue','Wed','Thu','Fri','Sat'];var week_list_full=['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];function int_to_str(i,len){i=''+i;if(i.length