Twig templates for German DSGVO / GDPR
The Goal
This templates collection shall provide you ready-to-use snippets which only need context variables to be filled in. Any user feel invited to contribute!, (*1)
Use at own risk
As âbest practicesâ have not evolved yet, the texts provided here can not be considered âlegally bullet-proofâ. In any case, stay in touch with your Data Protection Officer., (*2)
DSGVO Readings
Jens Kubieziel's DSGVO-Liste on GitHub
âInformationsquellen und weitere Ressourcen zur Datenschutz-Grundverordnungâ, (*3)
Lukas Leitsch's DSGVO-Checkliste on GitHub
âEine Ăbersicht fĂŒr Website-Betreiberâ, (*4)
Installation
Whilst templates are not PHP, Composer makes it easy to download the templates somewhere and update automatically. Feel free to propose an handsome alternative, opening a new issue: issues list., (*5)
$ composer require tomkyle/dsgvo-twig
To obtain the stable release one day, use this:, (*6)
$ composer require tomkyle/dsgvo-twig:">0.2|^1.0"
Usage
First add vendor/tomkyle/dsgvo-twig/templatesto Twig's template paths. Make sure to append the templates directory to make sure you can override the default template with a customized copy in your primary (app) templates directory., (*7)
See Twig's documentation on File system loaders., (*8)
<?php
// The path where Composer installs this package
$dsgvo_templates_path = 'vendor/tomkyle/dsgvo-twig/templates';
// Instantiate Loader
$loader = new Twig_Loader_Filesystem([
'my_templates',
$dsgvo_templates_path
]);
// Alternatively, add DSGVO templates after instantiation
$loader = ...
$loader->addPath( $dsgvo_templates_path );
Available Templates
Jump directly to:, (*9)
Some basic introductory text for the top of your privacy terms page., (*10)
<?php
echo $twig->render('dsgvo.intro.twig', [
'company' => 'The ACME Company',
// optional
'company_shortname' => 'ACME'
]);
Information about the responsible organisation for your website., (*11)
<?php
echo $twig->render('dsgvo.resonsible.twig', [
'website_name' => 'www.test.com',
'email' => 'info@test.com',
// optional:
'company' => 'MUSTER-Firma GmbH',
'address' => 'Musterstrasse 5',
'zip' => '99999',
'city' => 'Musterstadt',
'phone' => '+4940123456789',
'title' => 'Verantwortlicher und Geltungsbereich',
'website_realm' => 'das Internetangebot',
'law_name' => 'EU-Datenschutz-Grundverordnung',
'law_shortname' => 'DSGVO',
'company_shortname' => 'MUSTER',
'region' => 'Schleswig-Holstein',
'country' => 'Deutschland',
'phone_display' => '+49 (040) 12345678-9',
'fax_display' => '+49 (040) 12345678-1'
]);
Information about the DPO (Data Processing Officer) for your organisation., (*12)
<?php
echo $twig->render('dsgvo.dpo.twig', [
'external' => true,
'name' => 'John Doe',
'address' => 'Musterstrasse 5',
'zip' => '99999',
'city' => 'Musterstadt',
'phone' => '+4940123456789',
'email' => 'privacy@test.com',
// optional:
'jobtitle' => 'Zertifiziert als Datenschutzbeauftragter',
'company' => 'The External DPO Comp.',
'region' => 'Schleswig-Holstein',
'country' => 'Deutschland',
'phone_display' => '+49 (040) 12345678-9',
'fax_display' => '+49 (040) 12345678-1'
]);
Information about the user's privacy rights, (*13)
<?php
echo $twig->render('dsgvo.rights.twig');
Information about how to contact your company (via email and/or contact form), (*14)
<?php
echo $twig->render('dsgvo.contact.twig', [
'contactform' => true
]);
Information about SSL/HTTPS transportation., (*15)
<?php
echo $twig->render('dsgvo.https.twig');
Information about using cookies and how to avoid them., (*16)
<?php
echo $twig->render('dsgvo.cookies.twig');
External links disclaimer, (*17)
<?php
echo $twig->render('dsgvo.links.twig');
Information about Google ReCAPTCHA, (*18)
<?php
echo $twig->render('dsgvo.google-recaptcha.twig', [
// optional:
'google_policy_url' => 'https://www.google.de/intl/de/policies/privacy/',
'legal_basis' => 'Art. 6 Abs. 1 lit. b,c DSGVO'
]);
Information about webfonts used on your site., (*19)
<?php
echo $twig->render('dsgvo.webfonts-typekit.twig', [
// optional:
'typekit_policy_url' => 'https://www.adobe.com/de/privacy/policies/typekit.html',
'typekit_url' => 'https://typekit.com',
'legal_basis' => 'Art. 6 Abs. 1 lit. f DSGVO'
]);
Information about using cookieless YouTube., (*20)
<?php
echo $twig->render('dsgvo.videos-youtube.twig', [
// optional:
'google_policy_url' => 'https://www.google.de/intl/de/policies/privacy/'
]);
Information about what is called âĂnderungsvorbehaltâ in German., (*21)
<?php
echo $twig->render('dsgvo.changes.twig');
Contributions welcome!
Any contribution and proposal with this is highly appreciated. Stay up to-date on issues list. Also checkout the Wishlist., (*22)
Development
$ git clone git@github.com:tomkyle/dsgvo-twig.git
$ cd dsgvo-twig
$ composer install
Unlicense
This is free and unencumbered software released into the public domain., (*23)
Anyone is free to copy, modify, publish, use, compile, sell, or
distribute this software, either in source code form or as a compiled
binary, for any purpose, commercial or non-commercial, and by any
means., (*24)
In jurisdictions that recognize copyright laws, the author or authors
of this software dedicate any and all copyright interest in the
software to the public domain. We make this dedication for the benefit
of the public at large and to the detriment of our heirs and
successors. We intend this dedication to be an overt act of
relinquishment in perpetuity of all present and future rights to this
software under copyright law., (*25)
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE., (*26)
For more information, please refer to http://unlicense.org, (*27)