Skip to content
Snippets Groups Projects
Select Git revision
  • 3.0.x
  • 8.x-1.x default
  • 8.x-2.x
  • 3.0.x-dev
  • drupal9
  • 3102834-saveonupdate
  • 3102831-fullresync
  • 8.x-2.6
  • 3.0.3
  • 3.0.2
  • 3.0.1
  • 8.x-2.5
  • 8.x-2.4
  • 8.x-2.3
  • 8.x-2.2
  • 8.x-2.1
  • 8.x-2.0
  • 8.x-2.0-beta1
  • 8.x-2.0-alpha2
  • 8.x-2.0-alpha1
  • 8.x-1.1
  • 8.x-1.0-beta3
  • 8.x-1.0
  • 8.x-1.0-beta2
  • 8.x-1.0-beta1
  • 8.x-1.0-alpha1
26 results

google_calendar

  • Clone with SSH
  • Clone with HTTPS
  • Ruth Ivimey-Cook's avatar
    Issue #3430787: Automated Drupal 11 compatibility fixes for google_calendar
    Ruth Ivimey-Cook authored
    83b42643
    History

    CONTENTS OF THIS FILE

    • Introduction
    • Requirements
    • Installation
    • Configuration
    • Maintainers

    INTRODUCTION

    Google Calendar Import provides a way to import Google Calendar events from a publicly available calendar into Drupal.

    Once into Drupal, you can layer on additional fields, theming, access control, and all the other things that make Drupal Entities so excellent to work with.

    The module creates two new entity types - one for Calendars as a whole, and one for Events (entries) in those Calendars. Each Calendar has a name which can be, but does not have to be, the name of the calendar in the Google web view.

    To import calendar entries, the appropriate authentication process must be completed with Google, and then you can select (Import) from the calendar edit screen to initiate an import. Importing is also carried out as a system "cron" task.

    Calendar Events are made available via the normal Entity data patterns, including as a source for Views.

    REQUIREMENTS

    • This module requires the google_secrets module to manage storage of google API secrets.

    • The composer.json file defines other packages required for use, notably the google/apiclient package that provides the Google_Client class. If you install this module using composer, these will be installed as well, otherwise you must install them yourself.

    INSTALLATION

    • Install the Google Calendar Import module as you would normally install a contributed Drupal module. Visit https://www.drupal.org/node/1897420 for further information.

    • You must generate and download the "credentials.json" file from the Google API developer pages before you can start importing calendar entries from Google (although you can set up the module without it). Visit the Settings page to upload this file.

    CONFIGURATION

    1. Navigate to Administration > Extend and enable the module.

    2. Navigate to admin/config/google_calendar/settings to configure the module settings. (Configuration > Google Calendar > Settings)

    3. Navigate to admin/config/google_calendar/wizard/1 to configure the Google Calendar API for access by Drupal. (Configuration > Google Calendar > Wizard)

    4. Navigate to admin/config/google_calendar/calendars/import to inspect the list of calendars visible via the Google Service account and import those accounts you wish to see.

    5. View calendars currently configured at admin/content/google_calendar.

    NOTABLE CHANGES from 1.0

    New features include:

    • A verbose configuration wizard for the Google API and local settings;

    • List calendars visible from Google and enable auto-import of them;

    • Additional drush commands to call the Google API and display calendars and events, delete events for one or all calendars, and also to do Google synchronize on just the calendars, to avoid running global cron on the whole site very frequently;

    • Additional fields imported into the Calendar entity, and also timestamps for sync progress;

    • Additional fields imported into the Event entity;

    • A container-service and Interface to manage Google credential storage, with managed and static file plugins - now in module "google_secrets";

    • Statistics collected and recorded in the logs, to simplify operation checks.

    • Expose as config options the timespan covered by the calendar, disposition of old events, minimum intervals for resync, and more;

    • Proper Incremental resync;

    • Configurable past and future horizons, defining the period for which events are wanted as relative dates. Events outside this period can be deleted, unpublished, or just ignored, on a per-calendar basis.

    THINGS NOT SUPPORTED

    • "Infinite" future view of calendar: repeating events are imported as their expanded, concrete versions to avoid any possibility of the local repat algorithm differing from Google's. This means there is a future horizon beyond which no events are visible. This is not a bug.

    KNOWN ISSUES

    MAINTAINERS

    CREATOR