Package: django-cookie-monster
django-cookie-monsterThis package gives you two versions of a cookie banner. The simple one is basically just a hint to inform users
that you are using cookies. The group version let's your users decide which cookies he needs.QuickstartInstall django-cookie-monster::pip install django-cookie-monsterAdd it to yourINSTALLED_APPS:INSTALLED_APPS = (
    ...
    'cookie_monster',
    ...
)Add a type and data property to all script tags that store any cookies.<!-- before --><script>// This is my script</script><!-- after --><scripttype="text/plain"data-cookieconsent="the_ID_of_my_group">// This is my script</script>SettingsOverwrite strings in your settings file. You will find a complete reference below.COOKIE_MONSTER={'banner':{'title':'My Cookie Banner Title',}}To switch from standard to group mode you need to specify a list of setting groups.COOKIE_MONSTER={'cookie_groups':{'rows':['Name','Provider','Purpose',],'groups':[{'title':'Necessary','required':True,'cookies':[{'id':'application','rows':['Language','example.com','site language',],},],},{'title':'Marketing','required':False,'cookies':[{'id':'GTM','rows':['Google Tag Manager','Google.com','tracking cookie',],},],},],},}This is an example of a fully customised version of a cookie banner:COOKIE_MONSTER={'banner':{'title':'My Cookie Banner Title','text':'This is my custom text with a dynamic <a href="https://example.com/">link</a> to another page.','policy_link':'contents.utils.my_callable_that_returns_a_dynamic_link_to_the_privacy_page','buttons':{'confirm':{'label':'Accept all cookies'},'toggle':{'label':'Toggle settings'},'accept_all_cookies':{'label':'Accept all Cookies'},'accept_all_group_cookies':{'label':'Accept{groupTitle}Cookies'}},},'accordion_title':'{groupTitle}({amount})','cookie':{'samesite':'Lax'},'custom_theme':True,'cookie_groups':{'rows':['Name','Provider','Purpose',],'groups':[{'title':'Necessary','required':True,'cookies':[{'id':'application','rows':['Language','example.com','site language',],},],},{'title':'Marketing','required':False,'cookies':[{'id':'GTM','rows':['Google Tag Manager','Google.com','tracking cookie',],},],},],},}ContributeInstallationTo install the frontend you will need to run:npmiBuilding frontendThe frontend can be built via:npmrunbuildUnit testYou can unit test the frontend code with:npmtestHistory0.1.8.2 (2023-05-15)
++++++++++++++++++Simplify imports0.1.8.1 (2023-04-20)
++++++++++++++++++Include *.map files in source distribution0.1.8 (2023-02-02)
++++++++++++++++++Add Django 4 compatibility0.1.7 (2022-10-11)
++++++++++++++++++Add samesite configuration option0.1.6 (2022-01-31)
++++++++++++++++++Simplify banner text to prevent failsDEPRECATION WARNING:The setting variablepolicy_linkwas removed due to errors. Please handle any text/link combinations yourself.0.1.5 (2021-02-15)
++++++++++++++++++Add plain html support for the groups labels0.1.4 (2020-05-13)
++++++++++++++++++Improve backward compatibility of browsers0.1.3 (2020-05-13)
++++++++++++++++++Fix translation issue in banner text0.1.2 (2020-04-09)
++++++++++++++++++Bugfix0.1.1 (2020-04-08)
++++++++++++++++++Bugfix0.1.0 (2019-10-16)
++++++++++++++++++First release on PyPI.