ANDP projects use external forms to capture and process user input. External forms are not specific to ANDP – they are a standalone Gentics feature; for a general explanation of what general forms are and how they work, refer to the CMS Forms documentation.

This document covers the ANDP-specific side: it describes everything you need to configure and set up in order to use forms in an ANDP project – from the required configuration down to the individual steps and options.

Form Configuration (Form-Config)

All configurations involving forms must now be managed directly within the CMS, more specifically in the form.yml configuration file. This includes configurations for the Form-Type, Formgrid, Form-Flow, and form translations.

The ANDP project provides a default configuration file out-of-the-box: cms/conf/extraconfig/forms.yml

This file contains the default configuration for the ANDP form type (andp). Common project-specific modifications can be made here at any time.

Common Project-Specific Changes:

  • Modifying the Form-Flow: Defining a new sequence flow (e.g., no-summary, payment, etc.).

  • Extending Elements: Adding custom options for the acta-nova form element.

  • Formgrid Customizations: Adding new custom formgrid elements (such as text blocks, headings, etc.) or appending options to existing formgrid elements.

  • Translation Keys: Adding translation keys for custom elements.

Note

For further details regarding general configuration, please refer to the main CMS documentation for Forms

Form Languages

Acta Nova publishes forms in various languages using language-country codes (Culture codes, e.g., de-AT, en-AT, etc.).

To allow forms to be successfully created and processed in the CMS, the corresponding language (e.g., de-AT) must be available in the CMS. If you want to avoid renaming an existing language in the CMS, you can define an explicit language mapping (languageMapping) in the CMS Forms-Config.

Example Configuration for Form Type andp:

forms:
  types:
    andp:
      languageMapping:
        "de-AT": "de"
        "en-AT": "en"

This example maps the Acta Nova culture de-AT to the internal language abbreviation de in the CMS.

Important

Acta Nova forms cannot be published if they contain a language that is neither available in the CMS nor mapped via languageMapping.

Form Publishing & CMS Settings

Forms are sent to Mesh by Acta Nova and created as a Form object inside the CMS. Therefore, it is critical to configure where the forms are generated in the CMS and how the CMS can be accessed. These settings are defined within the Acta Nova plugin configuration inside Mesh.

Environment Variables

There are a few settings that must be provided through environment variables or set in the config yaml. The tables below list the required variables and what they control.

Mesh (Acta Nova Plugin)

Environment Variable Purpose Maps to / Example

ANDP_CMS_RESTAPI_BASE_URL

Base URL of the CMS REST API used to create the form objects.

cms.restApiBaseUrl – e.g. http://cms:8080/rest/

ANDP_CMS_RESTAPI_USER

User name for authenticating against the CMS REST API.

cms.restApiUser – e.g. node

ANDP_CMS_RESTAPI_PASSWORD

Password of the CMS REST API user.

cms.restApiPassword

ANDP_CMS_NODEID

Target CMS node the forms are published to (numeric ID or node UUID).

cms.restApiNodeId – e.g. 2BF8.72f24081-65de-11ef-add6-0242ac1a0003

Or if you want to set the configuration over the config.yml:

cms:
  restApiBaseUrl: http://cms:8080/rest/
  restApiUser: node
  restApiPassword: xxx
  restApiNodeId: 2BF8.72f24081-65de-11ef-add6-0242ac1a0003

CMS Node Prerequisites:

For the form publishing to work properly, the target CMS Node must meet the following criteria: 1. The Forms feature must be activated. 2. The andp form type must be assigned and properly configured. 3. The standard folder for external forms must be set.

Note: All Acta Nova forms will initially be created within this configured standard folder, but they can be manually moved to any folder within the node at a later time.

Translations

Form-specific translations are managed directly within the new CMS form solution. For detail documentation on how to use it please refer to …​.. TODO

Including Forms into Pages (Form Include)

Forms are no longer selected and embedded on CMS pages using a traditional formID. Instead, the CMS Form object must be selected directly within the Tagtype, adhering to the same behavior as all other native CMS forms.