Here are two options that are not related to editing the fullcalendar source:
Option 1: If you just manage to distinguish completed tasks from unfinished tasks, you do not need to change the source of full-calendar data. I was lucky that the little icons on full-calendar events were used only with CSS:
div.fc-event.completed-task div.fc-event-inner { background-image: url('checkbox-icon.png'); background-position: bottom right; background-repeat: no-repeat; }
Then you just need to set the className event field to complete-task. You can do this on the server or in JavaScript.
Option 2: If you need to do something more complex than just displaying a background image, you can use the eventRender or eventAfterRender callbacks that fullcalendar provides to manipulate the DOM elements of event objects in any way (including adding flags).
bmode source share