PHPackages                             blomstra/gdpr - 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. [Security](/categories/security)
4. /
5. blomstra/gdpr

Abandoned → [flarum/gdpr](/?search=flarum%2Fgdpr)Flarum-extension[Security](/categories/security)

blomstra/gdpr
=============

Features for GDPR, PII management

v1.8.2(2mo ago)1411.1k—0%7[1 PRs](https://github.com/flarum/gdpr/pulls)MITPHPPHP 8.\*CI passing

Since Nov 4Pushed 1mo ago5 watchersCompare

[ Source](https://github.com/flarum/gdpr)[ Packagist](https://packagist.org/packages/blomstra/gdpr)[ GitHub Sponsors](https://github.com/flarum)[ Fund](https://opencollective.com/flarum)[ RSS](/packages/blomstra-gdpr/feed)WikiDiscussions 2.x Synced 1mo ago

READMEChangelog (7)Dependencies (9)Versions (37)Used By (0)

GDPR or PII management
======================

[](#gdpr-or-pii-management)

This extension allows users increasing control over their data.

### Requirements

[](#requirements)

- `flarum/core` - `v2.0` or higher
- `PHP` - `8.3` or higher

### Installation or update

[](#installation-or-update)

Install manually with composer:

```
composer require flarum/gdpr:^2.0.0
```

### Use

[](#use)

All forum users now have a `Personal Data` section within their account settings page:

[![image](https://private-user-images.githubusercontent.com/16573496/276151391-4e469956-709f-4ba3-a5fe-d3fcb0401b73.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzQ1MTg2ODcsIm5iZiI6MTc3NDUxODM4NywicGF0aCI6Ii8xNjU3MzQ5Ni8yNzYxNTEzOTEtNGU0Njk5NTYtNzA5Zi00YmEzLWE1ZmUtZDNmY2IwNDAxYjczLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjAzMjYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwMzI2VDA5NDYyN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTE0OTI3NGNiN2ZjYzNmNmRjOWIzN2YxOTdmNTU5ZWQ1YmJkZGFiODZmZDY5MDRkOTk5NGFhM2Y1YWY0YzM1OTMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.P3h6tGuK7kzOlhddeudY6KEwOtXq9Y4mvISOU_kGyHU)](https://private-user-images.githubusercontent.com/16573496/276151391-4e469956-709f-4ba3-a5fe-d3fcb0401b73.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzQ1MTg2ODcsIm5iZiI6MTc3NDUxODM4NywicGF0aCI6Ii8xNjU3MzQ5Ni8yNzYxNTEzOTEtNGU0Njk5NTYtNzA5Zi00YmEzLWE1ZmUtZDNmY2IwNDAxYjczLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjAzMjYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwMzI2VDA5NDYyN1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTE0OTI3NGNiN2ZjYzNmNmRjOWIzN2YxOTdmNTU5ZWQ1YmJkZGFiODZmZDY5MDRkOTk5NGFhM2Y1YWY0YzM1OTMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.P3h6tGuK7kzOlhddeudY6KEwOtXq9Y4mvISOU_kGyHU)

From here, users may self-service export their data from the forum, or start an erasure request. Erasure requests are queued up for admins/moderators to process. Any unprocessed requests that are still pending after 30 days will be processed automatically using the configured default method (Deletion or Anonymization).

#### Specifying which queue to use

[](#specifying-which-queue-to-use)

If your forum runs multiple queues, ie `low` and `high`, you may specify which queue jobs for this extension are run on in your skeleton's `extend.php` file:

```
Flarum\Gdpr\Jobs\GdprJob::$onQueue = 'low';

return [
    ... your current extenders,
];
```

### For developers

[](#for-developers)

You can easily register a new Data type, remove an existing Data type, or exclude specific columns from the user table during export by leveraging the `Flarum\Gdpr\Extend\UserData` extender. Ensure that you wrap the GDPR extender in a conditional extend, so that forum owners can choose if they want to enable GDPR functionality or not. This functionality requires `flarum/core` `v2.0` or higher, so that should be set as your extension's minimum requirement.

#### Registering a new Data Type:

[](#registering-a-new-data-type)

Your data type class should implement the `Flarum\Gdpr\Contracts\DataType`:

```
