Created
February 8, 2012 01:34
-
-
Save coderforhire/1764052 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<script type='text/javascript'> | |
$(document).ready(function() { | |
/* initialize the external events | |
-----------------------------------------------------------------*/ | |
$('#external-events div.external-event').each(function() { | |
// create an Event Object (http://arshaw.com/fullcalendar/docs/event_data/Event_Object/) | |
// it doesn't need to have a start or end | |
var eventObject = { | |
title: $.trim($(this).text()) // use the element's text as the event title | |
}; | |
// store the Event Object in the DOM element so we can get to it later | |
$(this).data('eventObject', eventObject); | |
// make the event draggable using jQuery UI | |
$(this).draggable({ | |
zIndex: 999, | |
revert: true, // will cause the event to go back to its | |
revertDuration: 0 // original position after the drag | |
}); | |
}); | |
/* initialize the calendar | |
-----------------------------------------------------------------*/ | |
$('#calendar').fullCalendar({ | |
header: { | |
left: 'prev,next today', | |
center: 'title', | |
right: 'month,agendaWeek,agendaDay' | |
}, | |
editable: true, | |
droppable: true, // this allows things to be dropped onto the calendar !!! | |
drop: function(date, allDay) { // this function is called when something is dropped | |
// retrieve the dropped element's stored Event Object | |
var originalEventObject = $(this).data('eventObject'); | |
// we need to copy it, so that multiple events don't have a reference to the same object | |
var copiedEventObject = $.extend({}, originalEventObject); | |
// assign it the date that was reported | |
copiedEventObject.start = date; | |
copiedEventObject.allDay = allDay; | |
$.post("/events", { 'event[name]' : copiedEventObject.title , 'start_at' : copiedEventObject.start }), | |
// function(data) { | |
// alert("Start at: " + copiedEventObject.start + "Event: " + copiedEventObject.title); | |
//}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment