Plugin - Google Calendar Events (add events into one of your Google Calendars)
Your form submitted data can be sent to your Google Calendar using this plugin.
The RSForm!Pro Google Calendar Events plugin allows you to connect to your Google Calendar and map form data within the desired calendar fields. When the form is submitted, the data you map is passed to your Google Calendar as well.
Downloading and Installing the plugin
Download
You can download the plugin by logging with your purchase user, then head to My Downloads > RSForm!Pro - Modules & Plugins > Plugins > "Google Calendar x.x Plugin".
Install
Go to the Extensions > Manager > Install page, and install the plugin. Next thing is to publish the plugin from Extensions > Plugins, search for the "System - RSForm! Pro Google Calendar" plugin.
Connecting to Google Calendar
- Access Google Developers Console.
- Login using your Google account and Create a new Project.
- Add a project name, organization, location and click on the "Create" button (wait a few moments after you click the create button to load your project, otherwise you can manually select it).
- In the Dashboard view search for "Google Calendar API" and access it.
- Enable the "Google Calendar API" by clicking on the "Enable" button at the top.
- Click on "Credentials" from the left sidebar.
- Next click on the "Create Credentials" button and select the "OAuth client ID" option.
- Select "Web application" and add a Name.
- Within the "Authorized JavaScript origins" add your website (for example: https://www.rsjoomla.com). If you're on localhost you can leave it blank.
- Within the "Authorized redirect URIs" add the already generated URL found via backend > Components > RSForm!Pro > Configuration > Google Calendar > "Redirect URI".
- Click the Create button.
- Now, two keys will be generated, client ID and client secret that you have to be placed in your installation within backend > Components > RSForm!Pro > Configuration > Google Calendar > "Google Client ID" respectively "Google Secret" fields.
- Use the top "Save" button to save your keys (these have to be firstly saved).
- After the page refreshes, you'll find a new button "Authenticate" which you'll have to click. Doing so will redirect you to Google to choose your Google account and will ask you to Allow the application.
- Clicking the Allow button will redirect back to your website where a successful green "Access token successfully stored!" message should be encountered if everything was properly configured. Eventually you'll view more data being specified within the Google Calendar tab of your RSForm!Pro configuration, though there's no need to further change anything here.
Mapping Submission Data
- Access your form in the backend > Components > RSForm!Pro > Manage Forms > your form > Form Properties > Google Calendar Events Settings tab.
- Enable the "Use Google Calendar Events" option.
- If the 'Create Event When Payment is Complete' option is enabled, the event will be created only after the payment has been confirmed by using the 'Confirm Payment' button while editing the submission. Confirming a payment is used when for some reason the gateway did not confirm it or when using Wire Transfer methods were payment is confirmed manually by you.
- When enabling the 'Show API Messages' the error messages will be displayed upon submission.
- Click top Save button (this has to be firstly saved to retrieve your Calendar ID).
- Finally, if you enable the 'Use Recurrence' option, you can additionally map fields for the recurrence you desire for the event.
Available mapping fields:
- Summary (Event Title) - as the name implies, this will be the title of the newly created event.
- Location - map the Geographic location of the event as free-form text (you can also map a Google Map field).
- Description - Description of the event will be displayed in the calendar
- Start * - Map the start date/dateTime of the event. For the events that are not set to 'All day Events', you'll need to map a Datetime field.
- End * - Map the end date/end of the event. For the events that are not set to 'All day Events', you'll need to map a Datetime field.
- Calendar Time Zone - A readonly field which displays the Time Zone of the selected Calendar ID.
- Status - this will show the event status. The possible values that can be typed are:
- confirmed - The event is confirmed (default value)
- tentative - The event is tentatively confirmed
- cancelled - The event is cancelled (deleted)
- All day Event - If it is an All day Event the Start and End will only take in consideration the date part and ignore the time part. The possible values that can be typed are:
- 0 - Not active
- 1 - Active
- Attendees - the email addresses of users that are attending to an event. You can type the email addresses separated only by comma. You could also map a textarea / multiple select field. If you use a textbox field, please use comma to separate the emails.
- Recurrence rules
- Frequency - the event frequency can have the following Values: HOURLY / DAILY / WEEKLY / MONTHLY / YEARLY
- How many events - here you can type the number of events that should be created with the current Recurrence set.
04 Mar 2024
Version 3.0.6
- Added - Joomla! 5 native compatibility - no longer needs the 'Behaviour - Backward Compatibility' plugin.
04 Dec 2023
Version 3.0.5
- Updated - Plugin requires at least Joomla! 3.9.0 to be installed.
- Fixed - PHP 8.2 compatibility improvements.
02 Jun 2022
Version 3.0.4
- Fixed - When an error occurred, the log wouldn't be saved and threw an error on Joomla! 4.
31 May 2022
Version 3.0.3
- Fixed - Restoring backups that contained log information would fail.
18 Jan 2022
Version 3.0.2
- Updated - 'Description' is now a textarea.
- Updated - {if} scripting can now be used in the 'Description' field.
27 Sep 2021
Version 3.0.1
- Fixed - Calendar ID was not being saved.
09 Jun 2021
Version 3.0.0
- Updated - Joomla! 4.0 and RSForm! Pro 3.0 compatibility.
09 Apr 2021
Version 1.0.2
- Fixed - Google error messages were not escaped in the log.
11 May 2020
Version 1.0.1
- Added - Option to create the event when the payment is completed (accepted).
17 Sep 2019
Initial Release
10 persons found this article helpful.