Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


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

Profile Information

  • Gender
  • Location
    Göttingen, Germany
  • Interests
    Next to web development? :D
    Mountainbiking and Lindy Hop

Recent Profile Visitors

3,677 profile views

joshua's Achievements

Full Member

Full Member (4/6)



  1. 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.
  2. 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=
  3. 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.
  4. I just merged your PR ? Thank you for contributing @chrizz!
  5. Thanks @chrizz! That's a good idea. I will look into your PR later today and will merge it as soon as possible ?
  6. 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.
  7. 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!
  8. 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
  9. 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>
  10. 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
  11. 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?
  12. 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?
  13. 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; }
  14. 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
  • Create New...