A simple JS library that enables you to add an "add to calendar" button for your upcoming events.
This project was inspired by Eventbrite's add to calendar feature (which should have been open sourced #justSayin).
Call 'createCalendar' with your event info, pass in any optional parameters such as a class and/ or id and boom! Insert your add-to-calendar div wherever you'd like.
The only fields that are mandatory are:
var myCalendar = createCalendar({
options: {
class: 'my-class',
// You can pass an ID. If you don't, one will be generated for you
id: 'my-id'
},
data: {
// Event title
title: 'Get on the front page of HN',
// Event start date
start: new Date('June 15, 2013 19:00'),
// Event duration (IN MINUTES)
duration: 120,
// You can also choose to set an end time
// If an end time is set, this will take precedence over duration
end: new Date('June 15, 2013 23:00'),
// Event Address
address: 'The internet',
// Event Description
description: 'Get on the front page of HN, then prepare for world domination.'
}
});
document.querySelector('#place-where-I-want-this-calendar').appendChild(myCalendar);
Copy OuiCal into Chrome's JS console (or whatever browser you're using).
Then call this:
document.getElementsByTagName('body')[0].appendChild(createCalendar({data:{title:"this is the title of my event", start: new Date(), duration: 90}}));
#winning!
Need to generate an add-to-calendar widget on the fly? No problem, go here.