Git Product home page Git Product logo

consent_manager's People

Contributors

191977 avatar aeberhard avatar alxndr-w avatar anveno avatar bitshiftersgmbh avatar iceman-fx avatar imgbotapp avatar ingowinter avatar interweave-media avatar marcohanke avatar mc-pmoe avatar ngwngw avatar omphteliba avatar polarpixel avatar ritzfritz avatar schuer avatar shauste avatar skerbis avatar tbaddade avatar thorol avatar tobiaskrais avatar tyrant88 avatar xong avatar ynamite avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

consent_manager's Issues

Wunsch: Cookies importieren oder via yform bearbeiten?

Aufgrund der pid als auto-increment-Wert und eines weiteren id-Feldes, lässt sich die Tabelle nicht mit yform bearbeiten um so z.B. schnell Cookies zu importieren. Gibt es eine andere Möglichkeit dazu, um nicht bei jeder neuen Installation die Cookies per Hand einzutragen?

Scripte

Wie kann man abfragen

  • ob der Schliessen-Button
  • ob einer der beiden Buttons
    geklickt wurde?

Cookie Definitionen als YAML hinterlegen

Die Felder Name/Laufzeit/Beschreibung werden durch eine einzelne Textarea "Cookie Definitionen" ersetzt, die YAML erwartet:

-
  name: _ga
  time: 2 Jahre
  desc: Speichert für jeden Besucher der Website eine anonyme ID. Anhand der ID können Seitenaufrufe einem Besucher zugeordnet werden.
-
  name: _gat
  time: 1 Tag
  desc: Verhindert, dass in zu schneller Folge Daten an den Analytics Server übertragen werden.
-
  name: _gid
  time: 1 Tag
  desc: Speichert für jeden Besucher der Website eine anonyme ID. Anhand der ID können Seitenaufrufe einem Besucher zugeordnet werden.

Damit sind sämtliche Cookies für einen Dienst in einem Datensatz vorhanden, die Eingabe geht schneller und die Liste wird übersichtlicher.

Verständnisfrage : Cookie Gruppe bearbeiten

Skripte, die nach Einverständnis geladen werden

Wird das Skript nur einmalig nach dem Einverständnis geladen oder immer sofern das Cookie noch gesetzt ist?

Hintergrund ist, dass das Javascript nicht erscheint. Sollte man daher das Matomo Skript selbst in das Template notieren? Wie ist eure Erfahrung?

Button "Auswahl bestätigen" "Alle auswählen"

Hallo,
ich nutze das "Cookie-Gedöns" für eine Webseite mit drei Sprachen, 98% der Texte lassen sich im AddOn übersetzen nur die zwei Button "Auswahl bestätigen" "Alle auswählen" lassen sich nicht übersetzen, ich hab es mit Platzhalter (Sprog) im der iwcc_box.php hat aber leider auch nicht geklappt.
Gruß
Jochen

Probleme bei Mehrsprachigkeit

Hi, ich entwickle zur Zeit eine Redaxo-Webseite, die DE/EN unterstützt.
Die Konfiguration/Einrichtung/Anzeige des AddOns für DE ist problemlos.

Für EN treten jedoch eine Ungereimheiten auf, die wohl so nicht gedacht waren. Gerne lasse ich mich aber auch eines besseren belehren.

  1. Keine Möglichkeit, unter "Cookie Texte" die Einträge für die Sprache EN vornehmen zu können. Also zumindest das Übersetzen der schon vorhandenen DE Einträge:
    image

versus

image

Damit kann dann auch für clang=2 nichts im Cookiebanner angezeigt werden.

  1. "Cookie Gruppen" und "Cookies" werden für DE alle angezeigt, also DE und EN,
    image

und

image

während in EN tatsächlich nur die für die Sprache relevanten Einträge gezeigt werden:
image

und

image

Viele Grüße, Roland

Fatal Error wenn Sprog Standard Tags in Cookie Definition genutzt werden

In Sprog wird für öffnendes/schließendes Tag per Standard "{{ " und " }}" verwendet. Wird dieses Tag in einer Cookie Definition verwendet kommt folgender fatal error:

rex_yaml_parse_exception: Malformed inline YAML string: {{ iwcc_cookies_iwcc_cookie_iwcc }} at line 4 (near "desc: {{ iwcc_cookies_iwcc_cookie_iwcc }}").
File: redaxo/src/core/lib/util/string.php
Line: 148

Stacktrace
Function File Line
rex_string::yamlDecode redaxo/src/addons/iwcc/lib/iwcc_cache.php 87
iwcc_cache->prepareData redaxo/src/addons/iwcc/lib/iwcc_cache.php 32
iwcc_cache->writeCache redaxo/src/addons/iwcc/lib/iwcc_cache.php 24
iwcc_cache::write redaxo/src/core/lib/extension.php 45
rex_extension::registerPoint redaxo/src/core/lib/form/form.php 369
rex_form->save redaxo/src/core/lib/form/form_base.php 1151
rex_form_base->get redaxo/src/addons/iwcc/pages/cookie.php 56
include redaxo/src/core/lib/packages/package.php 245
rex_package->includeFile redaxo/src/core/lib/be/controller.php 471
rex_be_controller::includePath redaxo/src/core/lib/be/controller.php 428
rex_be_controller::includeCurrentPageSubPath redaxo/src/addons/iwcc/pages/index.php 8
include redaxo/src/core/lib/packages/package.php 245
rex_package->includeFile redaxo/src/core/lib/be/controller.php 471
rex_be_controller::includePath redaxo/src/core/lib/be/controller.php 413
rex_be_controller::includeCurrentPage redaxo/src/core/backend.php 216
require redaxo/src/core/boot.php 137
require redaxo/index.php 9
System report (REDAXO 5.10.0, PHP 7.3.11-nmm1)
REDAXO
Version 5.10.0
PHP
Version 7.3.11-nmm1
OPcache no
Xdebug no
Database
Version MySQL 5.6.44
Character set utf8
Server
OS Linux
SAPI fpm-fcgi
Webserver Apache
Request
Browser Firefox/74.0
Protocol HTTP/1.1
HTTPS yes
Packages
accessdenied 1.0.6
be_style 2.10.0
be_style/customizer 2.10.0
be_style/redaxo 2.10.0
cookie_consent 3.0.0-beta3
cronjob 2.7.0
d2u_address 1.1.2
d2u_helper 1.6.2
d2u_helper/translation_helper 1.6.1
d2u_history 1.0.0
d2u_jobs 1.1.0
d2u_jobs/hr4you_import 1.1.0
d2u_linkbox 1.2.3
d2u_machinery 1.3.2
d2u_machinery/industry_sectors 1.3.2
d2u_machinery/machine_features_extension 1.3.2
d2u_machinery/machine_steel_processing_extension 1.3.2
d2u_machinery/used_machines 1.3.2
d2u_news 1.1.2
d2u_news/fairs 1.1.2
d2u_partner 1.0
d2u_references 1.0.7
d2u_staff 1.0.3
d2u_videos 1.0.8
emailobfuscator 3.0.0
install 2.7.0
iwcc 1.0.8
media_manager 2.9.0
media_manager_autorewrite 1.1.0
mediapool 2.8.0
metainfo 2.7.0
multinewsletter 3.2.7
phpmailer 2.8.0
search_it 6.7.0
search_it/autocomplete 6.7.0
search_it/documentation 6.7.0
search_it/plaintext 6.7.0
search_it/stats 6.7.0
sprog 1.2.0
structure 2.10.0
structure/content 2.10.0
tinymce4 1.2.1
uploader 2.0.5
url 2.0.0-beta3
users 2.6.1
ycom 4.0.1
ycom/auth 4.0.1
ycom/docs 4.0.1
ycom/group 4.0.1
ycom/media_auth 4.0.1
yform 3.3.1
yform/docs 3.3.1
yform/email 3.3.1
yform/manager 3.3.1
yrewrite 2.6
yrewrite_scheme 3.2.1

Neue Textfelder für Buttons werden nicht angelegt

Ich hatte eben den Fall, dass mit dem Upgrade von 1.0.8 auf 1.0.9 die neuen Textfelder für die beiden Buttons "button_select_all" und "button_accept" nicht in der DB (Tabelle rex_iwcc_text) angelegt wurden. Grundlage war die 1.0.9 aus github. Ich habe mir beholfen, in dem ich die Felder händisch in der DB angelegt habe. Sollte jedoch bei ReInstall automatisch funktionieren.

Domains - aus System oder yrewrite verwenden?

Jetzt müsste man an noch einer weiteren Stelle die Domains pflegen, was bei einer Multidomainseite recht aufwendig werden kann. Sobald yrewrite dabei ist, könnte man von dort die Domains verwenden und als Fallback die unter System hinterlegte.

AddOnnamen und Präfix überdenken?

Da jetzt Cookie consent archiviert wurde (gab es dazu eine Abstimmung?), könnte man dann hier den Namen Gedöns loswerden und eventuell auch das Präfix iw für Ingo Winter?

Fragment "Aktuell gesetzte Cookies"?

Unsere Datenschutzerklärung enthält auch den Punkt "Aktuell gesetzte Cookies" um den Besucher zu informieren, welche Cookies derzeit von der Website gesetzt sind. Über folgendes Fragment lässt sich das mit der Cookie-Datenbank von iwcc verknüpfen.

Wäre das eine wünschenswerte Ergänzung?

<?php
$iwcc = new iwcc_frontend($this->getVar('forceCache'));
$iwcc->setDomain($_SERVER['HTTP_HOST']);

if ($this->getVar('debug'))
{
	print_r($_COOKIE);
}

if ($iwcc->cookiegroups) {

	$cookieDatabase = array();
	
	foreach ($iwcc->cookiegroups as $cookiegroup)
	{
		foreach ($cookiegroup['cookie'] as $cookie)
		{
			$cookieDatabase[$cookie['cookie_name']]=array(			
				"service_name"=>$cookie['service_name'],
				"provider"=>$cookie['provider'],
				"category"=>$cookiegroup['name'],
				"required"=>$cookiegroup['required'],
				"lifetime"=>$cookie['cookie_lifetime'],
				"description"=>$cookie['description']
			);
		}
	}

	$outputDatabase = '<table class="cookieInfoTable uk-table">';
	$outputDatabase .= '<tr>
							<th class="cookieName">Cookie-Name</th>
							<th class="cookieService">Service</th>
							<th class="cookieProvider">'. $iwcc->texts['provider'] .'</th>
							<th class="cookieLifetime">'. $iwcc->texts['lifetime'] .'</th>
							<th class="cookieDescription">Verwendungszweck</th>
							<th class="cookieCategory">Kategorie</th>
							<th class="cookieValue">Wert</th>
							<th class="cookieDelete">&nbsp;</th>
						</tr>';

	foreach ($_COOKIE as $cookieName => $cookieValue) 
	{
		$outputDatabase .= '<tr>';
		$outputDatabase .= '<td class="cookieName">'. $cookieName .'</td>';
		if (isset($cookieDatabase[$cookieName]) || array_key_exists($cookieName, $cookieDatabase)) 
		{
			$outputDatabase .= '<td class="cookieService">'. $cookieDatabase[$cookieName]['service_name'] .'</td>';
			$outputDatabase .= '<td class="cookieProvider">'. $cookieDatabase[$cookieName]['provider'] .'</td>';
			$outputDatabase .= '<td class="cookieLifetime">'. $cookieDatabase[$cookieName]['lifetime'] .'</td>';
			$outputDatabase .= '<td class="cookieDescription">'. $cookieDatabase[$cookieName]['description'] .'</td>';
			$outputDatabase .= '<td class="cookieCategory">'. $cookieDatabase[$cookieName]['category'] .'</td>';	
			$outputDatabase .= '<td class="cookieValue">'. $cookieValue .'</td>';
			if (!$cookieDatabase[$cookieName]['required']) 
			{
				$outputDatabase .= '<td class="cookieDelete"><a href="javascript:Cookies.remove(\''. $cookieName .'\', { path: \'/\' });Cookies.remove(\''. $cookieName .'\', { path: \'/\', domain: \''.str_replace('www','',$_SERVER['HTTP_HOST']).'\' })"><span>X</span></a></td>';
			}
			else 
			{
				$outputDatabase .= '<td></td>';
			}
		}
		else 
		{
			$outputDatabase .= '<td colspan="6">Keine Informationen vorhanden</td>';
		}
		$outputDatabase .= '</tr>';
	}

	$outputDatabase .= '</table>';

	echo $outputDatabase;

}

So sieht's aus:

cookie-database

REX_IWCC[] erweitern um Cookie-Check

Um die Ausgabe in Modulen zu steuern könnte das REX-Var hilfreich sein.
Eingebundener Code könnte erst ausgegeben werden, wenn dem Cookie zugestimmt wurde.

Beispiel:
REX_IWCC[id=1 group=google]

Code pro Dienst festlegen, nicht pro Gruppe

Es wäre glaube ich besser, wenn der Code am Dienst hinterlegt wird (z.B. google-analytics), statt an der Cookie-Gruppe - denn am Dienst ist ja auch die logische Zugehörigkeit.

Verständnisfrage - Skripte, die nach Einverständnis geladen werden

Aus der Readme

Pro Gruppe können Skripte hinterlegt werden, die nach Akzeptieren der Gruppe ausgeführt werden.

Sind das Skripte die

  1. nur einmal nach akzeptieren der Gruppe ausgelöst werden oder
  2. sind das Skripte die ständig geladen werden, sofern das Einverständnis vorhanden ist

Wenn 2. zutrifft, wo erscheinen die Skripte im Quelltext?

2 Buttons + Link: Impressum können nicht übersetzt werden

Vorweg erst einmal vielen DANK für das tolle Addon !!!

Ich hab es nun erstmalig auf einer Webseite mit 3 Sprachen eingesetzt.
Es läßt sich ja alles super ersetzen, aber ich habe für nachfolgende 2 Buttons und das Wort Impressum bisher keine Möglichkeit gefunden.

< a class="iwcc-save-selection iwcc-close" >Auswahl bestätigen< /a >
< a class="iwcc-accept-all iwcc-close" >Alle auswählen< /a >

Und der Link-Text: Impressum

Habe ich da was übersehen oder kann man das ggf. noch editierbar machen ?

Ich hoffe ich kann mit solchen Hinweisen die Entwicklung zumindest etwas unterstützen.

Liebe Grüße und bleibt gesund
Mirco

Platzhalter REX_IWCC[] abfangen

Moin,

vielleicht eher eine kleine kosmetische Sache, vermutlich läuft auch kaum jemand rein, aber spricht etwas dagegen das Ersetzen des Platzhalters REX_IWCC[] nochmal auf aktiviertes Addon zu validieren?

Habe den Cookie Hinweis gerade bei einem Kunden vorbereitet und anschließend das Addon deaktiviert und es hat etwas geknallt. Hab es jetzt im Template abgefangen, aber dann geht es weiter und iwcc_frontend.js schmeißt den nächsten Fehler, weil das Template Script nicht gefunden werden kann.

Schriftkonflikt

Hallo, iwcc führt zu einem Schriftkonflikt mit Fonts wie Font-Awesome oder Line-Icons.
In der fontello.css wird die Klasse "icon-" behandelt. Dieser Klassenname wird häufiger benutzt. Es wäre also gut die Iconklasse bei iwcc spezifischer zu machen, z.B. "iwccicon-"

fontello.css, Zeile 25
[class^="icon-"]::before, [class*=" icon-"]::before {

Gruß Heinz

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.