|
73 | 73 | unbindClickEventBlockTimerange()
|
74 | 74 | e.stopPropagation()
|
75 | 75 | e.preventDefault()
|
| 76 | + |
| 77 | + additional_items_html = '' |
| 78 | + opts.add_range.forEach (el, i)-> |
| 79 | + additional_items_html += '<div><span class="btn_date_rage_' + i + '">' + el['title'] + '</span></div>' |
| 80 | + |
76 | 81 | $('body').append('<div style="min-width: '+e.target.offsetWidth+'px; top: '+(e.target.offsetTop)+'px; left: '+(e.target.offsetLeft)+'px" class="block_timerange">' +
|
77 | 82 | '<div><span class="btn_today">Today</span></div>' +
|
78 | 83 | '<div><span class="btn_yesterday">Yesterday</span></div>' +
|
79 | 84 | '<div><span class="btn_week">This Week</span></div>' +
|
80 | 85 | '<div><span class="btn_month">This Month</span></div>' +
|
81 | 86 | '<div><span class="btn_last_week">Last Week</span></div>' +
|
82 | 87 | '<div><span class="btn_last_month">Last Month</span></div>' +
|
| 88 | + additional_items_html + |
83 | 89 | '</div>'
|
84 | 90 | ).ready(->
|
85 | 91 | container = $(this).find('.block_timerange')
|
86 | 92 |
|
| 93 | + # additional rages |
| 94 | + opts.add_range.forEach (el, i)-> |
| 95 | + $(container).on('click.CalendarRangeSet', '.btn_date_rage_' + i, (e)-> |
| 96 | + unbindClickEventBlockTimerange() |
| 97 | + start = new Date(el['start'].getFullYear(), el['start'].getMonth(), el['start'].getDate()) |
| 98 | + end = new Date(el['end'].getFullYear(), el['end'].getMonth(), el['end'].getDate()) |
| 99 | + fillInputs(start, end) |
| 100 | + ) |
| 101 | + |
87 | 102 | # Today
|
88 | 103 | $(container).on('click.CalendarRangeSet', '.btn_today', (e)->
|
89 | 104 | unbindClickEventBlockTimerange()
|
|
144 | 159 | $.fn.date_range_ext_preset.defaults = {
|
145 | 160 | # Manual global time shift, from UTC can be +/- number
|
146 | 161 | hours_offset: 0,
|
| 162 | + |
147 | 163 | # date_to_human_readable = true, then "date_to" consider as including full day without last second
|
148 | 164 | # For example Today will be:
|
149 | 165 | # true
|
|
153 | 169 | # 2015-06-10 - 2015-06-11
|
154 | 170 | # 2015-06-10 00:00:00 - 2015-06-11 00:00:00
|
155 | 171 | date_to_human_readable: false,
|
| 172 | + |
156 | 173 | # Display time or not: 2015-06-10 vs 2015-06-10 00:00:00
|
157 |
| - show_time: false |
| 174 | + show_time: false, |
| 175 | + |
| 176 | + # Array of addition ranges |
| 177 | + # example: |
| 178 | + # { |
| 179 | + # title: 'Last 30 days', |
| 180 | + # start: new Date().setDate((new Date()).getDate() - 30) |
| 181 | + # end: new Date() |
| 182 | + # } |
| 183 | + add_range: [] |
158 | 184 | };
|
159 | 185 |
|
160 | 186 | ) jQuery
|
161 | 187 |
|
162 | 188 |
|
163 |
| - |
164 |
| - |
165 | 189 | $(document).on 'ready', ->
|
166 |
| - # Init in sidebar filters |
167 |
| - $('.filter_form .filter_date_range').date_range_ext_preset() |
168 | 190 | # Init in forms
|
169 | 191 | $('.datetime_preset_pair').date_range_ext_preset()
|
170 |
| - |
|
0 commit comments