This forum is no longer open and is for reading/searching only.
Please use our new MachForm Community Forum instead.
MachForm Community Forums » MachForm 3
Google Calendar Integration
Started 10 years ago by jeannewey | 7 posts |
-
Has anyone integrated Machform with the Google Calendar API? We want to use MF for a transportation booking system and we want the booking date and details to be automatically sent to our Google Calendar. I found code for Google sites and forms (below). I can probably figure it out within a few days, but don't want to repeat work if someone has already done it.
This would be a FANTASTIC enhancement and the Google Calendar API was simplified this year, too.
//Create the GUI form
function doGet() {
var app = UiApp.createApplication().setTitle('Form and Calendar Events');//Create a penel which holds all the form elelemnts
var panel = app.createVerticalPanel().setId('panel');//Create the form elelemnts
var eventDateLabel = app.createLabel('Event Date:');
var evenDate = app.createDateBox().setId('eventDate');
var eventTitleLabel = app.createLabel('Event title:');
var eventTitle = app.createTextBox().setName('eventTitle').setId('eventTitle');
var eventDeatilLabel = app.createLabel('Event Details:');
var eventDetail = app.createTextArea()
.setSize('200', '100').setId('eventDetail').setName('eventDetail');
var btn = app.createButton('createEvents');//Create handler which eill execute 'createEvents(e)' on clicking the button
var handler = app.createServerClickHandler('createEvents');
handler.addCallbackElement(panel);
//Add this handler to the button
btn.addClickHandler(handler);//Add all the elemnts to the panel
panel.add(eventDateLabel)
.add(evenDate)
.add(eventTitleLabel)
.add(eventTitle)
.add(eventDeatilLabel)
.add(eventDetail)
.add(btn);
//Add this panel to the application
app.add(panel);
//return the application
return app;
}function createEvents(e){
//Get the active application
var app = UiApp.getActiveApplication();try{
//get the entries;
var eventDate = e.parameter.eventDate;
var eventTitle = e.parameter.eventTitle;
var eventDetails = e.parameter.eventDetail;//Get the calendar
var cal = CalendarApp.getCalendarsByName('Calendar-Name')[0];//Change the calendar name
var eventStartTime = eventDate;
//End time is calculated by adding an hour in the event start time
var eventEndTime = new Date(eventDate.valueOf()+60*60*1000);
//Create the events
cal.createEvent(eventTitle, eventStartTime,eventEndTime ,{description:eventDetails});//Log the entries in a spreadsheet
var ss = SpreadsheetApp.openById('Spreadsheet-Key');//Change the spreadhseet key to yours
var sheet = ss.getSheets()[0];
sheet.getRange(sheet.getLastRow()+1, 1, 1, 5).setValues([[new Date(), eventDate,eventTitle, eventDetails, 'Event created']]);//Show the confirmation message
app.add(app.createLabel('Event created Successfully'));
//make the form panel invisible
app.getElementById('panel').setVisible(false);
return app;
}//If an error occurs, show it on the panel
catch(e){
app.add(app.createLabel('Error occured: '+e));
return app;
}
}Posted 10 years ago # -
We don't have anything for Google calendar yet, for the current version. However, the next version (v4) would allow you to integrate your form with Google calendar API (we'll post some previews and details soon within our blog).
MachForm Founder
Posted 10 years ago # -
Would it also then be possible to integrate with Google Contacts?
Posted 10 years ago # -
Will the planned integration be able to restrict available dates/times based on timeslots that are already populated in the calendar?
For instance, if there is a form for people to choose which time they want to take a tour, and there's only two spots available on a certain time/date, will machform be able to read the calendar and only allow people to choose the available dates/times?
Posted 10 years ago # -
Occasionally I visit this forum to see if there's any blog update, or if Machform is still actively developed. Glad hearing about version 4 preview coming soon.
I forgot to renew my license last year (oops, no reminder was sent either..)Posted 10 years ago # -
Any news on integration with Google Calendar yet ?
I allso would like to use machform to add to a Google Calendar.
Posted 10 years ago # -
Unfortunately, my post from 7 month above is no longer valid. Google now enforced all API integration to use OAuth2 for the authentication, hence it won't work with the new webhook functionality within v4.
MachForm Founder
Posted 10 years ago #
Reply
You must log in to post.