Skip to content

Installation

You can install the module using Composer (recommended) or by manually placing the files and libraries on your server.

Composer Installation

This is the standard and recommended way to install Drupal modules.

  1. Require the module with Composer:

    composer require drupal/fullcalendar_block
    

  2. (Optional) To have Composer download the required JavaScript libraries for you, you can use the zodiacmedia/drupal-libraries-installer plugin.

    • Ensure that your root composer.json is configured to place packages of type drupal-library into your /libraries directory.
    • Add the installer plugin dependency:
      composer require zodiacmedia/drupal-libraries-installer
      
    • Add the following to the extra section of your composer.json file to tell the plugin to manage this module's libraries:
      "extra": {
        "drupal-libraries-dependencies": [
          "drupal/fullcalendar_block"
        ]
      }
      
    • Run composer install to download and place the libraries correctly.

Manual Installation

If you are not using Composer, you must download and place the module and its required JavaScript libraries manually.

  1. Download and extract the FullCalendar Block module into your /modules directory.
  2. If you want to host the JavaScript libraries locally, download and extract the following packages into your Drupal root directory as specified in the table.
URL Destination
https://registry.npmjs.org/fullcalendar/-/fullcalendar-5.11.4.tgz /libraries/drupal-fullcalendar
https://registry.npmjs.org/dompurify/-/dompurify-2.4.5.tgz /libraries/DOMPurify
https://registry.npmjs.org/moment/-/moment-2.29.4.tgz /libraries/moment
https://registry.npmjs.org/rrule/-/rrule-2.7.1.tgz /libraries/rrule
https://registry.npmjs.org/@fullcalendar/rrule/-/rrule-5.11.4.tgz /libraries/fullcalendar-rrule
https://registry.npmjs.org/@fullcalendar/moment/-/moment-5.11.4.tgz /libraries/fullcalendar-moment

Note: If the required external libraries are not available locally, they will be loaded from a CDN (usually https://unpkg.com) automatically.

Security Note for Manual Installation

The RRule library zip file contains a demo folder (rrule/dist/esm/demo) which includes an index.html file. For security reasons (see PSA-2011-002), you should delete this demo folder from your server after manual installation. This step is not necessary if you use Composer or load libraries from the CDN.