-
-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
Add event that allows plugins to disable archiving for certain periods/sites if they want. #15457
Conversation
…s/sites if they want.
core/ArchiveProcessor/Rules.php
Outdated
* @params bool &$isRequestAuthorizedToArchive | ||
* @params Parameters $params | ||
*/ | ||
Piwik::postEvent('Rules.isRequestAuthorizedToArchive', [&$isRequestAuthorizedToArchive, $params]); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we maybe use an event name starting with Archiving
or so? See https://developer.matomo.org/api-reference/events#archivinggetidsitestoarchivewhennovisits ... just so they are next to each other maybe.
Also, I think usually we mostly would do
$isRequestAuthorizedToArchive = Rules::isBrowserTriggerEnabled() || SettingsServer::isArchivePhpTriggered();
First and put the result of this into the event argument instead of later checking for null
. Not sure it's clear what you mean? This way eg the plugin can skip complex logic if the request is not authorized already anyway. Eg in the event it can do simple if (!$isRequestAuthorizedToArchive) { return; }
. I think this is how we usually do it in most events. But no strong preference. Could avoid running GA Importer logic in almost every request for example?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we maybe use an event name starting with Archiving or so?
Yes, that makes sense. Rules
is a bit generic.
First and put the result of this into the event argument instead of later checking for null.
Yes, this should work. I remember deciding against this at first... but I can't remember why.
@diosmosis feel free to merge if tests pass 👍 |
* Updates search engine and social definitions (#15384) * updates device detector to latest release (#15388) * updates device detector to latest release * updates tests * translation update (#15389) * Fix Could not get the lock for ID, when creating a site (#15401) * Lock key start * do not empty key lock Co-authored-by: Thomas Steur <tsteur@users.noreply.github.com> * 3.13.1 * submodule updates * Use correct name in update available message (#15423) * Fix removing user capabilities (#15422) * Order of implode() args, avoid E_NOTICE in PHP7.4 (#15428) * Fixes possible php warning in visitor log (#15442) * silence is_executable call (#15446) * Make sure geolocation admin experience is consistent if user is not using GeoIp2 plugin. (#15447) * Fix referrers test. (#15448) * Ensure to close visitor popover correctly (#15443) * Fixes possible warning (#15453) * Forward instance_id from local config when reseting config during tests. (#15445) * Add event that allows plugins to disable archiving for certain periods/sites if they want. (#15457) * Add event that allows plugins to disable archiving for certain periods/sites if they want. * apply review feedback * Fix possible warning for columns without index (#15467) * Day range archiving issue (#15462) * Improve lock ID check for max length (#15407) Better patch for #15401 which was merged last minute... This way it always works even when someone calls `acquireLock` directly instead of `execute` Pushing this for now into 3.x-dev but can also put it into 4.x-dev directly but then there might be merge conflicts when merging 3.x-dev into 4.x-dev * Use SameSite none for session token when embedded into iframe (#15439) * Make sure tracking works in IE9 and lower (#15480) * Mention Joomla install FAQ (#15481) * Make sparklines work when mbstring extension is not installed (#15489) 1) Too few arguments to function mb_strtolower(), 1 passed in matomo/vendor/davaxi/sparkline/src/Sparkline/StyleTrait.php on line 129 and exactly 2 expected 2) mb_strlen is not defined * update screenshots (#15488) * 3.13.2-rc1 * Use safemode when running CLI commands (#15472) * update icons submodule (#15490) * update icons submodule * update UI tests * Fix possible undefined index notice (#15502) * Use latest davaxi/sparkline release (#15464) * translation update * submodule updates * Fix deprecation notice (#15530) see #15467 (comment) * 3.13.2-rc2 * update cache component (#15536) * fixes copy dashboard to user for more than 100 users (#15538) cherry picking #15424 to fix #15420 in 3.x-dev * Add missing return statement. (#15539) * 3.13.2 * update tests * update tests Co-authored-by: Matthieu Aubry <mattab@users.noreply.github.com> Co-authored-by: Thomas Steur <tsteur@users.noreply.github.com> Co-authored-by: Peter Upfold <pgithub@upfold.org.uk> Co-authored-by: diosmosis <diosmosis@users.noreply.github.com> Co-authored-by: Lukas Winkler <github@lw1.at>
…s/sites if they want. (matomo-org#15457) * Add event that allows plugins to disable archiving for certain periods/sites if they want. * apply review feedback
…s/sites if they want. (matomo-org#15457) * Add event that allows plugins to disable archiving for certain periods/sites if they want. * apply review feedback
New event is not public. Would be useful for the GA importer to make sure day archives are not re-archived, erasing imported data.
Added to 3.13.2 since it would be good for this functionality to work for users of 3.x installs, but I don't require it.