|
11 | 11 | render_event : 'view_week_render_event', |
12 | 12 | postcalrender : function(){}, |
13 | 13 |
|
14 | | - get_time_offset : function( evt, ui ){return ui.offset.top + $(evt.target).parent().scrollTop() - evt.target.offsetTop;}, |
| 14 | + get_time_offset : function( draggable, droppable, parent ){ |
| 15 | + return draggable.offset.top + parent.scrollTop() - droppable.offsetTop; |
| 16 | + }, |
15 | 17 |
|
16 | 18 | // persistent event storage accessor functions |
17 | 19 | // (override with application functions in rc_calendar constructor call) |
@@ -150,7 +152,7 @@ function Calendar( element, options ) |
150 | 152 | drop: function( event, ui ) { |
151 | 153 | var dragged = $(ui.draggable[0]); |
152 | 154 | var target = $(event.target); |
153 | | - var time_offset = t.options.get_time_offset( event, ui ); |
| 155 | + var time_offset = t.options.get_time_offset( ui, event.target, $(event.target).parent() ); |
154 | 156 | var start_time = nearest_time( time_offset ); |
155 | 157 | var date = new moment( parseInt(target.attr('data-date'),10) ); |
156 | 158 | var resource_id = target.parent().attr('id'); |
@@ -259,18 +261,27 @@ function Calendar( element, options ) |
259 | 261 | appendTo : 'body', |
260 | 262 | helper : 'clone', |
261 | 263 | zIndex : 9999, |
262 | | - /* drag : function( event, ui ){ |
263 | | -
|
| 264 | + drag : function( event, ui ){ |
264 | 265 | // [TODO] |
265 | 266 | // Update Time in helper during drag |
266 | 267 | // Add "next week, previous week" drag zones? |
267 | 268 | // |
| 269 | + var target = findDroppable( ui ); |
| 270 | + |
| 271 | + if( target ){ |
| 272 | + var tgtdiv = $('#'+target); |
| 273 | + // make compatible with 'drop' parameters |
| 274 | + tgtdiv.offsetTop = tgtdiv.offset().top; |
| 275 | + tgtdiv.offsetLeft = tgtdiv.offset().left; |
| 276 | + var time_offset = t.options.get_time_offset( ui, tgtdiv, tgtdiv.parent() ); |
| 277 | + var start_time = nearest_time( time_offset ); |
| 278 | + ui.helper.find(".rc_event_head").text(start_time); |
| 279 | + |
| 280 | + console.log( start_time ); |
| 281 | + } |
268 | 282 |
|
269 | | - var time_offset = t.options.get_time_offset( event, ui ); |
270 | | - var start_time = nearest_time( time_offset ); |
271 | | - ui.helper.find(".rc_event_head").text(start_time); |
272 | | - } |
273 | | - */ |
| 283 | + } |
| 284 | + |
274 | 285 | }).resizable({ |
275 | 286 | handles: 's', |
276 | 287 |
|
|
0 commit comments