forked from extern/egroupware
Enable planner view vertical time bar and clicks for extra space after last planner row
This commit is contained in:
parent
1dc5a8ee21
commit
41c89e0f7e
@ -249,8 +249,8 @@ var et2_calendar_planner = (function(){ "use strict"; return et2_calendar_view.e
|
|||||||
});
|
});
|
||||||
})
|
})
|
||||||
.on('mousemove', function(event) {
|
.on('mousemove', function(event) {
|
||||||
// Not when over header
|
// Ignore headers
|
||||||
if(jQuery(event.target).closest('.calendar_eventRows').length == 0)
|
if(planner.headers.has(event.target).length !== 0)
|
||||||
{
|
{
|
||||||
planner.vertical_bar.hide();
|
planner.vertical_bar.hide();
|
||||||
return;
|
return;
|
||||||
@ -264,7 +264,12 @@ var et2_calendar_planner = (function(){ "use strict"; return et2_calendar_view.e
|
|||||||
planner.vertical_bar.css('top','0px');
|
planner.vertical_bar.css('top','0px');
|
||||||
|
|
||||||
// Get time at mouse
|
// Get time at mouse
|
||||||
if(planner.options.group_by == 'month')
|
if(jQuery(event.target).closest('.calendar_eventRows').length == 0)
|
||||||
|
{
|
||||||
|
// "Invalid" times, from space after the last planner row, or header
|
||||||
|
var time = planner._get_time_from_position(event.pageX - planner.grid.offset().left, 10);
|
||||||
|
}
|
||||||
|
else if(planner.options.group_by == 'month')
|
||||||
{
|
{
|
||||||
var time = planner._get_time_from_position(event.clientX, event.clientY);
|
var time = planner._get_time_from_position(event.clientX, event.clientY);
|
||||||
}
|
}
|
||||||
@ -1954,7 +1959,12 @@ var et2_calendar_planner = (function(){ "use strict"; return et2_calendar_view.e
|
|||||||
{
|
{
|
||||||
// Clicked in row, but not on an event
|
// Clicked in row, but not on an event
|
||||||
// Default handler to open a new event at the selected time
|
// Default handler to open a new event at the selected time
|
||||||
if(this.options.group_by == 'month')
|
if(jQuery(event.target).closest('.calendar_eventRows').length == 0)
|
||||||
|
{
|
||||||
|
// "Invalid" times, from space after the last planner row, or header
|
||||||
|
var date = this._get_time_from_position(_ev.pageX - this.grid.offset().left, _ev.pageY - this.grid.offset().top);
|
||||||
|
}
|
||||||
|
else if(this.options.group_by == 'month')
|
||||||
{
|
{
|
||||||
var date = this._get_time_from_position(_ev.clientX, _ev.clientY);
|
var date = this._get_time_from_position(_ev.clientX, _ev.clientY);
|
||||||
}
|
}
|
||||||
@ -2042,7 +2052,9 @@ var et2_calendar_planner = (function(){ "use strict"; return et2_calendar_view.e
|
|||||||
{
|
{
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} while(row.nodeName !== 'BODY');
|
} while(row && row.nodeName !== 'BODY');
|
||||||
|
if(!row) return false;
|
||||||
|
|
||||||
// Restore hidden nodes
|
// Restore hidden nodes
|
||||||
for(var i = 0; i < hidden_nodes.length; i++)
|
for(var i = 0; i < hidden_nodes.length; i++)
|
||||||
{
|
{
|
||||||
@ -2090,6 +2102,9 @@ var et2_calendar_planner = (function(){ "use strict"; return et2_calendar_view.e
|
|||||||
*/
|
*/
|
||||||
_mouse_down: function(event)
|
_mouse_down: function(event)
|
||||||
{
|
{
|
||||||
|
// Ignore headers
|
||||||
|
if(this.headers.has(event.target).length !== 0) return false;
|
||||||
|
|
||||||
// Get time at mouse
|
// Get time at mouse
|
||||||
if(this.options.group_by === 'month')
|
if(this.options.group_by === 'month')
|
||||||
{
|
{
|
||||||
@ -2101,8 +2116,6 @@ var et2_calendar_planner = (function(){ "use strict"; return et2_calendar_view.e
|
|||||||
}
|
}
|
||||||
if(!time) return false;
|
if(!time) return false;
|
||||||
|
|
||||||
this.div.css('cursor', 'ew-resize');
|
|
||||||
|
|
||||||
// Find the correct row so we know the parent
|
// Find the correct row so we know the parent
|
||||||
var row = event.target.closest('.calendar_plannerRowWidget');
|
var row = event.target.closest('.calendar_plannerRowWidget');
|
||||||
for(var i = 0; i < this._children.length && row; i++)
|
for(var i = 0; i < this._children.length && row; i++)
|
||||||
@ -2115,6 +2128,10 @@ var et2_calendar_planner = (function(){ "use strict"; return et2_calendar_view.e
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if(!this.drag_create.parent) return false;
|
||||||
|
|
||||||
|
this.div.css('cursor', 'ew-resize');
|
||||||
|
|
||||||
return this._drag_create_start(jQuery.extend({},this.drag_create.parent.node.dataset,{date: time.toJSON()}));
|
return this._drag_create_start(jQuery.extend({},this.drag_create.parent.node.dataset,{date: time.toJSON()}));
|
||||||
},
|
},
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user