Agent-readable demo data
- Title
- JPEG Export (JavaScript Event Calendar) | DayPilot Pro for JavaScript Demo
- Tree
- DayPilot JavaScript Demo
- Catalog root
- Default
- Description
- Read more about the JavaScript event calendar.
Inline demo script 1
const dp = new DayPilot.Calendar("dp", {
startDate: DayPilot.Date.today(),
viewType: "Week",
allDayEventHeight: 25,
showAllDayEvents: true,
onTimeRangeSelected: async (args) => {
const {result} = await DayPilot.Modal.prompt("New event name:", "Event");
if (!result) return;
const e = new DayPilot.Event({
start: args.start,
end: args.end,
id: DayPilot.guid(),
resource: args.resource,
text: result
});
dp.events.add(e);
dp.clearSelection();
dp.message("Created");
},
});
dp.init();
const app = {
init() {
this.loadEventData();
this.addEventHandlers();
},
loadEventData() {
const events = [
{
start: DayPilot.Date.today().addHours(12),
end: DayPilot.Date.today().addHours(15),
id: DayPilot.guid(),
text: "Special event"
},
{
start: DayPilot.Date.today(),
end: DayPilot.Date.today().addDays(3),
id: DayPilot.guid(),
allday: true,
text: "All-day event 1"
}, {
start: DayPilot.Date.today().addDays(2),
end: DayPilot.Date.today().addDays(5),
id: DayPilot.guid(),
allday: true,
text: "All-day event 2"
},
];
dp.update({events});
},
addEventHandlers() {
document.getElementById("export-button").addEventListener("click", (ev) => {
ev.preventDefault();
const area = document.getElementById("area").value;
const element = dp.exportAs("jpeg", {
area: area,
}).toElement();
const exportElement = document.getElementById("export");
while (exportElement.firstChild) {
exportElement.firstChild.remove();
}
exportElement.appendChild(element);
});
document.getElementById("download-button").addEventListener("click", (ev) => {
ev.preventDefault();
const area = document.getElementById("area").value;
dp.exportAs("jpeg", {
area: area,
}).download();
});
}
};
app.init();