-
Posts
89 -
Joined
-
Last visited
-
Days Won
8
joshua last won the day on September 8 2021
joshua had the most liked content!
About joshua
- Birthday 01/14/1993
Contact Methods
-
Website URL
https://www.blauequelle.de/
Profile Information
-
Gender
Male
-
Location
Göttingen, Germany
-
Interests
Next to web development? :D
Mountainbiking and Lindy Hop
Recent Profile Visitors
joshua's Achievements
Full Member (4/6)
209
Reputation
-
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
Hi @Ellyot_Chase, in the above example you posted there is no type defined on the script element. See the original example here: <script type="text/plain" data-type="text/javascript" data-category="functional" class="require-consent">console.log("This script only runs after giving consent to functional cookies");</script> Without the `type="text/plain"` the browser immediately executes the script, PrivacyWire has no chance to stop this behaviour. When you add the type, the script should only be loaded after the user has given consent. -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
That's an interesting finding. PrivacyWire hooks into the page->render method for the rendering: $this->wire('page')->addHookBefore('render', $this, 'initiatePrivacyWire'); Is this still called when accessing a URL created with URL-Hooks? If not, what would be an alternative point to hook= -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
Sorry for my late response in general. I haven't used ProcessWire ( and therefore also PrivacyWire) in new business projects in the last time but was quiet busy with work. I think that actually is the easiest way right now. In general yes. But it depends on how you implement PrivacyWire and the 3rd-party scripts! Yes, this is possible. See this forum thread for examples. Feel free to fork, add the feature and start an PR. -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
I just merged your PR ? Thank you for contributing @chrizz! -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
Thanks @chrizz! That's a good idea. I will look into your PR later today and will merge it as soon as possible ? -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
That's great! Thanks for the feedback. It is even easier now in v1.0.9 as I reduced the hook priority, so every "usual" hook written inside a template should work, too. -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
That's correct, currently PrivacyWire loads itself in the module ready() method. I played around with some settings to load PrivacyWire later. You can find the feature in this branch: https://github.com/webworkerJoshua/privacywire/tree/feature-initiate-privacywire-laster In this version PrivacyWire initiates itself before Page::render: $this->addHookBefore('Page::render', $this, 'initiatePrivacyWire'); Could you try this version and confirm, that it's working the way you wanted / expected? After that I will do some more testing before merging into the main branch just to be sure that there are no side effects ? Thanks! -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
I just added a small function for this usecase in v1.0.7. You can trigger this "re-initiating" by calling window.PrivacyWire.reHandleExternalButtons() Updated / Added code: https://github.com/webworkerJoshua/privacywire/blob/1.0.7/src/js/PrivacyWire.js#L146-L149 -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
Is your ProcessWire instance installed in the root web directory or somewhere else? The only noticible change I find in your code examle is the directory within the script tag: <script nomodule type='text/javascript' src='.../site/modules/PrivacyWire/js/PrivacyWire_legacy.js'> Usually the src attribute starts directly with '/site/' instead of '.../site/' <style>.privacywire{position:fixed;bottom:-250%;left:0;right:0;box-shadow:0 -1px 3px rgba(0,0,0,.3);opacity:0;background:#fff;z-index:1;padding:1rem;transition:bottom .3s ease-in,opacity .3s ease}.show-banner .privacywire-banner,.show-message .privacywire-message,.show-options .privacywire-options{bottom:0;opacity:1}.privacywire-header{font-weight:700}.privacywire-ask-consent-blueprint,.privacywire button[hidden],[data-ask-consent-rendered="1"]{display:none}</style> <script>var PrivacyWireSettings={"version":1,"dnt":"0","customFunction":"","messageTimeout":1500,"consentByClass":"1","cookieGroups":{"necessary":"Necessary","functional":"Functional","statistics":"Statistics","marketing":"Marketing","external_media":"External Media"}};</script> <script type='module' src='/site/modules/Privacywire/js/PrivacyWire.js'></script> <script nomodule type='text/javascript' src='/site/modules/Privacywire/js/ie_polyfill.js'></script> <script nomodule type='text/javascript' src='/site/modules/Privacywire/js/PrivacyWire_legacy.js'></script> -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
Hi Jens, sounds like an good workflow and also a nice improvement for the PrivacyWire module config. I'll add it as soon as I find the time. Best, Joshua -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
Thanks for noticing! I fixed the typo in the git repo, should be updated in the PW module repo soon. Hm, I'm looking into this problem. Which version of PrivacyWire are you using? -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
In this example the starting quote at the type attribute is missing: <script type="text/plain" data-type="text/javascript" data-category="external_media" class="require-consent">...</script> In your example: Does it work with the quotation mark? -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
You mean something like the screenshot attached? That's possible with some CSS (this is just an example, how one could do this) .show-banner > .privacywire-page-wrapper, .show-options > .privacywire-page-wrapper, .show-message > .privacywire-page-wrapper { position: fixed; left: 0; top: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.6); backdrop-filter: blur(5px); display: flex; justify-content: center; align-items: center; } .privacywire { display: none; } .show-banner .privacywire.privacywire-banner, .show-options .privacywire.privacywire-options, .show-message .privacywire.privacywire-message { display: block; position: relative; left: auto; right: auto; bottom: auto; max-width: 450px; } -
module PrivacyWire - Cookie Management & async external asset loading
joshua replied to joshua's topic in Modules/Plugins
You can ommit the src attribute also. In my test case it works that way. I use it a lot in combination with vimeo video and used the implementation as in this video Bildschirmaufnahme 2021-04-05 um 14.46.29.mov