I have published a new version of the book:
1. New chapter showing how to use external widgets to manipulate a calendar instance: datepicker for navigating and checkbox for filtering.
2. Added code in the database persistence samples to save updates when resizing or dragging events.
3. Fixed bugs in code samples from the database persistence chapter. Also updated Web2py sample project with those fixes.
Buyers from previous versions will get these updates for free. Interested developers can get their own copy and future updates will be free.
Thank you all for your support!
I am currently adding to the book two examples showing how to interact with fullCalendar using widgets such as datepickers or checkboxes. These are the examples:
The price will increase again in a few days when I publish this version. This version is already published. As always, previous buyers will not be affected by this and will receive these updates at no additional cost.
You can take advantage of the current price if you get the book now.
Thanks for your support.
Just finished the chapter on the basics of how to use a database to manage fullCalendar’s events and you can buy the new version now.
These are the topics:
- Database representation of a fullCalendar event
- Saving events
- Loading events
- Modifying events
- Deleting events
The actual code to save to or retrieve events from the database depend on your back end: libraries, framework or database. The samples in the book are just to give you an idea about how to build the interaction with your back end through JSON.
I plan to extend this chapter with examples showing how to save events to a database after drag and drop actions. Although I think that, after going through the examples in the new chapter, you will readily get the idea on how to do it. It is a matter of choosing inside which fullCalendar’s callback to put your save, update and delete functions calls.
As announced before, the price increased again for new buyers. If you already bought the book you should be receiving soon an email with the updated materials at no additional charge.
If you have not bought the book yet, get it at the current price and receive future updates for free.
Use these callbacks in fullCalendar to respond when:
- Event’s content is about to be rendered: eventRender
- Event is clicked: eventClick
- Event is resized: eventResize
- Event finished been dragged and dropped: eventDrop
- Event is already dropped and rendered: eventReceive
- Event stopped been dragged, but still not dropped: eventDragStop
Added a chapter on how to use jQuery dialogs to create, modify and remove events from the calendar. The source package includes jQueryUI and its CSS so the samples can run out of the box.
This upgrade is free if you already purchased the book. If not, learn more about it and decide if it will be useful to you.
After the next chapter the price will change to $9.99 ($2 increase). Take advantage of the early adopters price.
When serializing a fullCalendar event with JSON.stringify() you may receive an error message like this one:
TypeError:Converting circular structure to JSON
That happens because each event has a reference to its source, which has a reference to the event itself, effectively creating a circular reference that JSON.stringify cannot manage.
The culprit is the event’s “source” property. The way I deal with this is removing the source property before sending the event to its destination (ajax call, database CRUD function, etc):
This is for a client’s project but I will include it in the book:
The events adopt the color of external events dropped on the calendar and adjust their duration according to a custom “data-*” attribute of the dropped element.
More about the book …