PHPackages                             contaobayern/contao-member-contact-settings - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. contaobayern/contao-member-contact-settings

ActiveContao-module[Utility &amp; Helpers](/categories/utility)

contaobayern/contao-member-contact-settings
===========================================

Member contact settings extension for Contao Open Source CMS

1.1.0(8y ago)0148LGPL-3.0-or-laterPHPPHP &gt;=5.6

Since Jul 16Pushed 8y ago3 watchersCompare

[ Source](https://github.com/ContaoBayern/contao-member-contact-settings)[ Packagist](https://packagist.org/packages/contaobayern/contao-member-contact-settings)[ RSS](/packages/contaobayern-contao-member-contact-settings/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (6)Dependencies (2)Versions (6)Used By (0)

Contao Member Contact Settings
==============================

[](#contao-member-contact-settings)

Member contact settings extension for Contao Open Source CMS

Overview
--------

[](#overview)

This module enhances the core modules `Registration` and `MemberData` by adding fields that control the allowed contact settings for the registered frontend user.

Installation via Composer
-------------------------

[](#installation-via-composer)

Search package `contaobayern/contao-member-contact-settings` and install as usual. For Contao 4.4.x use the Contao Manager to install the extension.

Manual Installation
-------------------

[](#manual-installation)

1. Download the files from the GitHub repository. Rename the folder to `member-contact-settings`and save under `system/modules`.
2. Update your database and clear the internal cache.

Please note
-----------

[](#please-note)

This module's JavaScript will not work with table layouts (i.e. if "Tableless layout" is not checked in the module's definition). This applies to Contao 3 only, as Contao 4 only has templates for tableless layouts. So if you want to use this extension with table layouts you must uncheck the "Control field dependencies with JavaScript" option in your registration and personal data frontend modules.

Setup
-----

[](#setup)

The setup is the same for both frontend modules (registration and member data):

1. Create a new frontend module of the type "registration" or "member data".
2. Define the form as usual.
3. With the new fields you can add dependencies. For example if you add "contactPhone" the field "phone" will become mandatory when the user checks "contactPhone". A list of all dependencies is given below.
4. Sort the field as you wish. It makes sense to put the dependent fields right below the field from which they depend.
5. By default field dependencies are controlled on client side via JavaScript (jQuery must be enabled in page layout). If you do not want to use JavaScript setting of mandatory status you can uncheck the according option.
6. With the "Toggle visibility of dependent fields" option you can choose if depedent fields shall be hidden when they are not mandatory (can only be used with JavaScript enabled).

New fields and dependencies in tl\_member
-----------------------------------------

[](#new-fields-and-dependencies-in-tl_member)

FieldDependenciescontactEmail-contactLetterstreet, postal, city, countrycontactPhonephonecontactFaxfaxAdding your own dependencies
----------------------------

[](#adding-your-own-dependencies)

Dependencies are defined in the `tl_member` DCA. In the `eval` array of each field which has dependencies there is a new entry `dependents`:

```
$GLOBALS['TL_DCA']['tl_member']['fields']['contactLetter'] = [
    // ...
    'eval' => [
        // ...
        'dependents' => [
            'mandatory' => ['street', 'postal', 'city', 'country'],
            'visibility' => ['street', 'postal', 'city', 'country'],
        ],
        // ...
    ]
]
```

The array `mandatory` contains the names of the fields which shall be set to mandatory when the parent field is checked. The array `visibility` contains the names of the fields which shall be shown or hidden according to the parent field.

You can add or modify dependencies in the `system\config\dcaconfig.php` file.

For example if you want to add `state` to the dependencies of `contactLetter`. You can do so by adding the following code to `system\config\dcaconfig.php`:

```
$GLOBALS['TL_DCA']['tl_member']['fields']['contactLetter']['eval']['dependents']['mandatory'][] = 'state';
$GLOBALS['TL_DCA']['tl_member']['fields']['contactLetter']['eval']['dependents']['visibility'][] = 'state';
```

You can also create new dependencies for your own fields wherever you need them:

```
$GLOBALS['TL_DCA']['tl_member']['fields']['myCheckbox']['eval']['dependents'] = [
    'mandatory' => ['fieldA', 'fieldB', 'fieldC'],
    'visibility' => ['fieldA', 'fieldB', 'fieldC'],
];
```

Attention: a field which is mandatory by default should not be put in any dependents list. Otherwise its mandatory status will be controlled by the parent field which is unwanted because the field should always be mandatory.

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor1

Top contributor holds 65.2% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~47 days

Total

5

Last Release

3085d ago

Major Versions

0.2.1 → 1.0.02017-10-01

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/5047601?v=4)[Andreas Fieger](/maintainers/fiedsch)[@fiedsch](https://github.com/fiedsch)

![](https://avatars.githubusercontent.com/u/18099974?v=4)[Contao Bayern](/maintainers/contaobayern)[@ContaoBayern](https://github.com/ContaoBayern)

---

Top Contributors

[![joergmoldenhauer](https://avatars.githubusercontent.com/u/196525878?v=4)](https://github.com/joergmoldenhauer "joergmoldenhauer (45 commits)")[![fiedsch](https://avatars.githubusercontent.com/u/5047601?v=4)](https://github.com/fiedsch "fiedsch (24 commits)")

---

Tags

contaoregistrationmemberdependent-fieldsmandatory fields

### Embed Badge

![Health badge](/badges/contaobayern-contao-member-contact-settings/health.svg)

```
[![Health](https://phpackages.com/badges/contaobayern-contao-member-contact-settings/health.svg)](https://phpackages.com/packages/contaobayern-contao-member-contact-settings)
```

###  Alternatives

[metamodels/core

MetaModels core

10156.4k68](/packages/metamodels-core)[codefog/contao-news_categories

News Categories bundle for Contao Open Source CMS

3189.0k6](/packages/codefog-contao-news-categories)[terminal42/contao-node

Node bundle for Contao Open Source CMS

3177.0k6](/packages/terminal42-contao-node)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
