Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Let users download generated JS container #7

Open
tsteur opened this issue Jun 5, 2018 · 3 comments
Open

Let users download generated JS container #7

tsteur opened this issue Jun 5, 2018 · 3 comments
Labels
Enhancement New feature or request

Comments

@tsteur
Copy link
Member

tsteur commented Jun 5, 2018

This will be especially useful in case their analytics domain/path contains eg Matomo and is blocked by ad blockers or similar. By downloading the JS file they can embed the generated file manually and reduce risk of the generated container being blocked. Also they could directly minify it and merge it with other JS files to reduce the number of loaded files.

Obviously, when using this method, the JS container file needs to be updated manually on the website after publishing it.

@tsteur tsteur added Enhancement New feature or request c: Usability and removed c: Usability labels Jun 5, 2018
@peterbo
Copy link
Contributor

peterbo commented Jun 10, 2018

Great idea - also a notice like "tag manager library is out out sync / needs to be updated manually" would be great if it was implemented from external (e.g. a CDN)

@tsteur
Copy link
Member Author

tsteur commented Jun 10, 2018

Good point. Could even think of features like "sync with a CDN" and could integrate various CDN's (eg we could create one interface for CloudFront and allow plugin developers or contributors to add more)

tsteur added a commit that referenced this issue Jun 13, 2020
Eg if `$_GET['date']=today` is set, but `$_POST['date] = '';` then it might still trigger an exception like this otherwise:


> There was an error while regenerating container releases: Date format must be: YYYY-MM-DD, or 'today' or 'yesterday' or any keyword supported by the strtotime function (see http://php.net/strtotime for more information): #0 core/Date.php(148): Piwik\Date::getInvalidDateFormatException(false) #1 /core/Plugin/Controller.php(640): Piwik\Date::factory(false) #2 /core/Plugin/Controller.php(607): Piwik\Plugin\Controller->setGeneralVariablesViewAs(Object(Piwik\View), 'basic') #3 /plugins/TagManager/Controller.php(205): Piwik\Plugin\Controller->setGeneralVariablesView(Object(Piwik\View)) #4 /plugins/TagManager/Controller.php(53): Piwik\Plugins\TagManager\Controller->renderTemplate('@TagManager/deb...') #5 [internal function]: Piwik\Plugins\TagManager\Controller->debug() #6 /var/www/html/core/FrontController.php(590): call_user_func_array(Array, Array) #7 /core/FrontController.php
(165): Piwik\FrontController->doDispatch('TagManager', 'debug', Array) #8 plugins/TagManager/Context/WebContext/JavaScriptTagManagerLoader.php(72): Piwik\FrontController->dispatch('TagManager', 'debug') #9 /plugins/TagManager/Context/WebContext.php(166): Piwik\Plugins\TagManager\Context\WebContext\JavaScriptTagManagerLoader->getPreviewJsContent() #10
@tsteur
Copy link
Member Author

tsteur commented Aug 3, 2021

BTW the easiest way to achieve this is using your own CDN and configure it to point to the Matomo installation the js directory for pattern container*.js . This way you pretty much don't need to do anything except for setting up CDN once (or you could set up your own proxy like haproxy or in apache etc)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants