Skip to content

Instantly share code, notes, and snippets.

@arshaw
arshaw / fiddle.response.json
Created Jun 5, 2014
many events json, for v2
View fiddle.response.json
[{"id":830,"start":1262279460000,"end":1262281260,"title":"this is a long event isnt that righttt","body":"","multi":0,"allDay":false,"extension_id":2},{"id":831,"start":1262282052000,"end":1262283852,"title":"830","body":"","multi":0,"allDay":false,"extension_id":2},{"id":832,"start":1262284644000,"end":1262286444,"title":"831","body":"","multi":0,"allDay":false,"extension_id":2},{"id":833,"start":1262287236000,"end":1262289036,"title":"832","body":"","multi":0,"allDay":false,"extension_id":2},{"id":834,"start":1262289828000,"end":1262291628,"title":"833","body":"","multi":0,"allDay":false,"extension_id":2},{"id":835,"start":1262292420000,"end":1262294220,"title":"834","body":"","multi":0,"allDay":false,"extension_id":2},{"id":836,"start":1262295012000,"end":1262296812,"title":"835","body":"","multi":0,"allDay":false,"extension_id":2},{"id":837,"start":1262297604000,"end":1262299404,"title":"836","body":"","multi":0,"allDay":false,"extension_id":2},{"id":838,"start":1262300196000,"end":1262301996,"title":"83
@arshaw
arshaw / BEM-singleclass.html
Last active Aug 29, 2015
Generated by SassMeister.com.
View BEM-singleclass.html
<div class="app-card">
<div class="app-card__title"></div>
<div class="app-card__content"></div>
</div>
<!-- a variation -->
<div class="app-card--tall">
<div class="app-card__title"></div>
<div class="app-card__content"></div>
</div>
@arshaw
arshaw / BEM-addon.html
Last active Aug 29, 2015
Generated by SassMeister.com.
View BEM-addon.html
<div class="app-card">
<div class="app-card--title"></div>
<div class="app-card--content"></div>
</div>
<!-- a variation -->
<div class="app-card -tall">
<div class="app-card--title"></div>
<div class="app-card--content"></div>
</div>
@arshaw
arshaw / BEM-multiclass.html
Last active Aug 29, 2015
Generated by SassMeister.com.
View BEM-multiclass.html
<div class="app-card">
<div class="app-card__title"></div>
<div class="app-card__content"></div>
</div>
<!-- a variation -->
<div class="app-card app-card--tall">
<div class="app-card__title"></div>
<div class="app-card__content"></div>
</div>
@arshaw
arshaw / xdate_extending_parser.js
Last active Sep 27, 2015
XDate: Extending the Parser
View xdate_extending_parser.js
// You can extend the parser by adding a new parsing function to the `XDate.parsers` array.
// This function is given a single string argument and should return an XDate if parsing was successful.
function parseMDY(str) {
// this example parses dates like "month/date/year"
var parts = str.split('/');
if (parts.length == 3) {
return new XDate(
parseInt(parts[2]), // year
parseInt(parts[0] ? parts[0]-1 : 0), // month
@arshaw
arshaw / fiddle.response.json
Last active Dec 21, 2015
many events json
View fiddle.response.json
[{"id":830,"start":1262279460,"end":1262281260,"title":"this is a long event isnt that righttt","body":"","multi":0,"allDay":false,"extension_id":2},{"id":831,"start":1262282052,"end":1262283852,"title":"830","body":"","multi":0,"allDay":false,"extension_id":2},{"id":832,"start":1262284644,"end":1262286444,"title":"831","body":"","multi":0,"allDay":false,"extension_id":2},{"id":833,"start":1262287236,"end":1262289036,"title":"832","body":"","multi":0,"allDay":false,"extension_id":2},{"id":834,"start":1262289828,"end":1262291628,"title":"833","body":"","multi":0,"allDay":false,"extension_id":2},{"id":835,"start":1262292420,"end":1262294220,"title":"834","body":"","multi":0,"allDay":false,"extension_id":2},{"id":836,"start":1262295012,"end":1262296812,"title":"835","body":"","multi":0,"allDay":false,"extension_id":2},{"id":837,"start":1262297604,"end":1262299404,"title":"836","body":"","multi":0,"allDay":false,"extension_id":2},{"id":838,"start":1262300196,"end":1262301996,"title":"837","body":"","multi":0,"all
@arshaw
arshaw / fiddle.response.json
Created Aug 13, 2013
many agenda events json
View fiddle.response.json
[{"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13"}, {"title": "event", "start": "2009-12-13 00:00:00", "allDay": false}, {"title": "event", "start": "2009-12-13 01:00:00", "allDay": false}, {"title": "event", "start": "2009-12-13 02:00:00", "allDay": false}, {"title": "event", "start": "2009-12-13 03:00:00", "allDay": false}, {"title": "event", "start": "2009-12-13 04:00:00", "allDay": false}, {"title": "event", "start": "2009-12-13 05:00:00", "allDay": false}, {"title": "event", "start": "2009-12-13 06:00:00",
View fullcalendar-date-overhaul.md

Proposal for a date system overhaul

The Problem

FullCalendar was initially designed without much notion of timezones. By default, it ignores timezone offsets in the dates it receives.

The original assumption was that if you received a date from Brussels, say "2013-09-01T12:00:00+02:00", which is noon, it would display as noon in every timezone.

However, FullCalendar shoehorns this value into a local date. With the same example, if you were in San Francisco, it internally stores the date as "2013-09-01T12:00:00-08:00". This is bad for two reasons:

View test gist
will i be notified of comemnts?