Modify

Opened 5 years ago

Closed 5 years ago

#2039 closed Bug/Fehler (fixed)

Coockie-Consent erstellt oil_data-cookie für jeden Pfad

Reported by: info@… Owned by: Gerhard Waldemair
Priority: normal Milestone: modified-shop-2.0.7.0
Component: Template Version: 2.0.6.0
Keywords: Cc:
Blocked By: Blocking:

Description

Hi,

in der aktuellen Version des cookie-consent-Moduls wird der oil_data-cookie für jeden Pfad separat gesetzt, abhängig davon in welcher Kategorie / Hierarchie man sich in der URL befindet.

Ursache dafür ist wohl dieser Code in Zeile 10 der oil.min.js:

if("number"==typeof(r=e({path:""}

mit diesem Code aus einer älteren (der ersten Version) funktioniert es:

if("number"==typeof(r=e({path:"/"}

Bitte prüfen und bestätigen/korrigieren

Viele Grüße
AGI

Attachments (0)

Change History (6)

comment:1 by Torsten Riemer, 5 years ago

Version: trunk2.0.6.0

comment:2 by noRiddle, 5 years ago

Die Änderung ist glaube ich auf meine Anregung hin geschehen.
Siehe hier im Thread MODUL: OIL.js Cookie Consent Management
und im Ticket #1545

Man müsste den Pfad bestimmen können mittels DIR_WS_CATALOG.

Es sollte imho schon möglich sein mehrere Shops in Unterordnern einer Domain zu betreiben und eigene Cookie-Pfade dafür zu haben.
Ohne den unkomprimierten Code wird's schwer das Problem zu lösen.
Evtl. ist das lediglich mit der POI-Implementation, wie von hpzeller nach meinem oben zitierten Post im Thread erwähnt, möglich.

Leider ist auch die Doku von OIL verschwunden...

Gruß,
noRiddle

comment:3 by info@…, 5 years ago

verstehe.

Dann könnte es doch funktionieren, wenn in der general.js.php des Templates dieser Code ergänt wird:

var DIR_WS_CATALOG = "<?php echo DIR_WS_CATALOG ?>";

und die oben genannte Stelle in der oil.min.js durch diesen Code ersetzt wird:

if("number"==typeof(r=e({path:DIR_WS_CATALOG}

P.S.: laut Source der oil.min.js stammt der betroffene Teil des Scripts von hier: https://github.com/js-cookie/js-cookie Tag v2.1.4

comment:4 by noRiddle, 5 years ago

Gute Idee mit der gesetzten globalen var.
Schöner fände ich jedoch es wäre in der OIL-Config bestimmbar.
Ja, ich hatte das js-cookie-Plugin auch gefunden, kann aber auch nach Dekomprimierung der oil.js wegen der nicht ausagekräftigen einsilbigen Variablen die genaue Stelle nicht finden wo die Parameter des Cookies definiert werden, bzw. wo die Funktion im oil-Teil aufgerufen wird. Expire ist konfigurierbar, Path leider nicht, was man, wenn man die richtige Stelle findet aber erweitern könnte.

Die OIL-Doku ist übrigens doch noch zu finden, im Master-Branch.

Gruß,
noRiddle

comment:5 by noRiddle, 5 years ago

*NACHTRAG*

Übrigens muß dann auch im Code in /templates/DAS_TEMPLATE/javascript/extra/cookieconsent.js.php hier der path angepasst werden:

cookieString += 'path=/;SameSite=Lax;';

also, am Besten so

cookieString += 'path=<?php echo DIR_WS_CATALOG; ?>;SameSite=Lax;';

oder wenn die globale var bereits definiert ist so

cookieString += 'path='+DIR_WS_CATALOG+';SameSite=Lax;';

Gruß,
noRiddle

comment:6 by Gerhard Waldemair, 5 years ago

Owner: set to Gerhard Waldemair
Resolution: fixed
Status: newclosed

In 13590:

fix #1545 & #2039 - update cookie consent (update oil.min.js)

Modify Ticket

Action
as closed The owner will remain Gerhard Waldemair.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.