From bce941ad1865f8cc13751bab95bd22b8fb7adc52 Mon Sep 17 00:00:00 2001 From: Sebastian Wagner Date: Mon, 24 Oct 2011 19:28:55 +0200 Subject: event drop fix --- application/views/scripts/event/index.phtml | 48 +++++++++++++++++++++-------- 1 file changed, 36 insertions(+), 12 deletions(-) diff --git a/application/views/scripts/event/index.phtml b/application/views/scripts/event/index.phtml index f49f104..87fb8a6 100755 --- a/application/views/scripts/event/index.phtml +++ b/application/views/scripts/event/index.phtml @@ -307,6 +307,8 @@ var dayClick = false; }, select: function( startDate, endDate, allDay, jsEvent, view ) { + + var currentDate = $('#calendar').fullCalendar('getDate'); //initialize eventNotDroppableDialog Dialog $(function() { @@ -351,9 +353,14 @@ var dayClick = false; $('#calendar').fullCalendar( 'unselect' ); }, "OK": function() { - if(returndata == -1) { - $(this).dialog("close"); - self.location="/event/add/evstart/" + startDate + "/evend/" + endDate + "/poolID/" + $("#poolselectbox option:selected").val(); + if(returndata == -1) { + if(startDate > currentDate) { + $(this).dialog("close"); + self.location="/event/add/evstart/" + startDate + "/evend/" + endDate + "/poolID/" + $("#poolselectbox option:selected").val(); + } else { + $(this).dialog("close"); + $('#calendar').fullCalendar( 'unselect' ); + } } else { $(this).dialog("close"); cell.removeChild(cell.firstChild); @@ -430,7 +437,7 @@ var dayClick = false; revertFunc(); }, "OK": function() { - if(returndata.withoutrepeat == -1) { + if(returndata.withoutrepeat == -1) { $(this).dialog("close"); $.post("/event/eventresize/evid/" + event.id + "/evend/" + event.end + "/poolID/" + $("#poolselectbox option:selected").val()); } else { @@ -507,6 +514,8 @@ var dayClick = false; eventDrop: function( event, dayDelta, minuteDelta, allDay, revertFunc ) { + var currentDate = $('#calendar').fullCalendar('getDate'); + $.get("/event/checkoverlapdrop/poolID/" + $("#poolselectbox option:selected").val() + "/eventID/" + event.id + "/date/" + event.start, function(data){ // get conflicts-HTML Element @@ -555,9 +564,14 @@ var dayClick = false; revertFunc(); }, "OK": function() { - if(returndata.withoutrepeat == -1) { - $(this).dialog("close"); - $.post("/event/eventmove/evid/" + event.id + "/evstart/" + event.start + "/evend/" + event.end); + if(returndata.withoutrepeat == -1) { + if(event.start > currentDate) { + $(this).dialog("close"); + $.post("/event/eventmove/evid/" + event.id + "/evstart/" + event.start + "/evend/" + event.end); + } else { + $(this).dialog("close"); + revertFunc(); + } } else { $(this).dialog("close"); cell.removeChild(cell.firstChild); @@ -587,8 +601,13 @@ var dayClick = false; }, "Move just this Event": function() { if(returndata.withoutrepeat == -1) { - $(this).dialog("close"); - $.post("/event/eventmove/evid/" + event.id + "/evstart/" + event.start + "/evend/" + event.end); + if(event.start > currentDate) { + $(this).dialog("close"); + $.post("/event/eventmove/evid/" + event.id + "/evstart/" + event.start + "/evend/" + event.end); + } else { + $(this).dialog("close"); + revertFunc(); + } //event.repeat = 0; } else { $(this).dialog("close"); @@ -598,9 +617,14 @@ var dayClick = false; } }, "Move all Events": function() { - if(returndata.withrepeat == -1) { - $(this).dialog("close"); - self.location="/event/eventmoveall/eventTitle/" + event.title + "/evmindelta/" + minuteDelta + "/evdaydelta/" + dayDelta + "/poolID/" + $("#poolselectbox option:selected").val(); + if(returndata.withrepeat == -1) { + if(event.start > currentDate) { + $(this).dialog("close"); + self.location="/event/eventmoveall/eventTitle/" + event.title + "/evmindelta/" + minuteDelta + "/evdaydelta/" + dayDelta + "/poolID/" + $("#poolselectbox option:selected").val(); + } else { + $(this).dialog("close"); + revertFunc(); + } } else { $(this).dialog("close"); cell.removeChild(cell.firstChild); -- cgit v1.2.3-55-g7522