Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/core
AgeCommit message (Collapse)Author
2022-05-31Goals per page - new reports and metrics for tracking page conversions (#18221)Ben Burgess
* Goals per page - added new reports and metrics for tracking page conversions * Added top entry page statistic, added entry titles related report, adjusted percent formatting * Added datatable filter to remove goal revenue columns if there are no values, refactored goal visualisation classes to minimise duplicate methods * Fixed conversion query matching issue * Added system tests for page goals reports, rework of metrics and SQL to match expected calculations * Added UI tests * Remove unnecessary code, merge system tests * Fix for archiving query error on MySQL * Fix for query to work with MySQL 5.7 * Update core/API/DocumentationGenerator.php Co-authored-by: Stefan Giehl <stefan@matomo.org> * Revert unnecessary DocumentationGenerator change * Fix incorrect row limit config setting names * Remove special handling of pages reports * Update plugins/Goals/Visualizations/GoalsPages.php Co-authored-by: Stefan Giehl <stefan@matomo.org> * Update plugins/Goals/Visualizations/GoalsEntryPages.php Co-authored-by: Stefan Giehl <stefan@matomo.org> * Tidy up visualization classes * Fix for sorting * Remove unnecessary columns from reports, fix tests * Add new visualizations to Javascript checks * Add BasePages parent report class to deduplicate new reports * Reworked to add per-goal metric columns to the Actions_action and Action_action_url archives instead of generating separate page goal archives * Added a filter to remove goal columns from Actions datatables by default and an optional parameter to include goals columns * Improved remove goals actions filter to recurse subtables, get goals list for site * Test fixes * Move page goal metrics to nested column structure on actions and actions_url archives * Fixes and updates for apiGetReportMetadata tests * Test fixes * Test fixes and updates * More test updates * Bug fix for entry page incorrectly aggregating data from different goals * Backwards compatibility test fixes * Test fix * Update submodule * Updated tests * Updated tests * Updated test * built vue files * Force sorting of scheduled reports list by unique id to avoid sorting inconsistencies between PHP7 and PHP8 tests * Updated tests after sorting scheduled reports list * Updated tests * Test fixes * Skip specific tests that pass with PHP7 but fail with PHP8 * Test updates * Test updates * UI test screenshot updates * Slightly increased reasonable release total filesize test from 55mb to 56mb * Test fix * Disable test for PHP8 * Update submodule * Update submodule * Test updates * Revert test changes * Predictably sort scheduled reports * Disable failing test for PHP 8 * Updated tests after conflict fix * Update tests after conflict fix * Update submodule * Revert unnecessary change * Rework to use a single goals visualisation and show goal metrics directly on the action page reports * Update UI tests * Update tests, fix for goals menu ordering issue * Update tests * Revert goal overview menu item ordering * Do not add goal metadata to actions reports when the includeGoals API parameter is set to false * Updated unit and UI tests * Update UI tests * Update submodule * Update submodules * Code improvements, handle ecommerce metrics for page goals, remove obsolete test expected xml files * Remove unnecessary row properties after use * fix phpcs * Improve & refactor code * Update system test * Tweaked release reasonable size test from 55mb to 58mb to prevent test failure * Update submodule * Update system test * Update UI test screenshots * Update UI test screenshots * Update submodule * Update UI test screenshot * update submodule * test improvements * updates expected UI files * fix removing unused revenue columns from UI * applies some psr12 code formatting * Minor query optimisations * Rework the conversions by pageview query to remove subquery and all grouping, add aggregation in code * Test fixes, null checks for revenue metrics * Expanded goal page tests to cover multiple goals converted in a single visit * Updated UI test screenshots * Expanded test to be multi-day, multi-goal, multiple conversion per visit. Fixed summary logic for multi-goal visits. Fixed calculation of viewed before page rate to get conversion total via API call * Update system and UI screenshot tests * Added method return type hint, ensure request parameters are blank on Goals.get filter API call * Retrieve conversion totals from numeric archives directly instead of via API call * Move goal conversion totals lookup from the CalculateConversionPageRate filter to the Actions API and then pass to the filter * Tidy up unused namespaces * Revert move of goal conversion total retrieval from filter to actions api. Included segment in archive build for goal conversions totals. * fixes: date might be manipulated too often * updates expected UI files * avoid building archive too often * updates expected test files * fix ui tests Co-authored-by: sgiehl <stefan@matomo.org> Co-authored-by: bx80 <bx80@users.noreply.github.com>
2022-05-25Add 429 response code (#19245)Jason Morton
* Add 429 response code * Only set the default adapter if needed * Revert adapter change
2022-05-24[Vue] add manage goals store to share loaded idGoal with plugin components ↵dizzy
that extend goal management (#19236) * add manage goals store to share loaded idGoal with plugin components used to extend goal management * allow vue-entry components in edit goal template * for checkbox fields, undo dom property change manually so parent components can determine whether it should go through (vue does not do this automatically itself) * bump version so plugin tests can use this code * remove warning from vue when empty template is used for before goal list actions template event * fix v-for ref issue + do same change to FieldRadio
2022-05-24Show sparkline evolution figures for visits, goals and ecommerce overviews ↵Ben Burgess
(#19057) * Add evolution to sparklines on the visits overview and the goals overview * Add evolution to sparklines on the ecommerce overview * Updated UI test screenshots * Update submodule * Fix for tooltip date formatting, improved translation lookup and callback method extra parameter documentation * Sparklines API calls modified to return unformatted values, formatting added to the sparkline visualization and overview reports * update submodule * Updated inherited method signature * Code improvements, added forcedParams parameter to ViewDataTable / Visualization loadDataTableFromAPI methods * Revert change to loadDataTableFromAPI method signature in ViewDataTable and Visualization classes * Remove incorrectly added file * Improve international handling of plus symbol in ecommerce overview template * Always use gigabytes when formatting byte values for evolution charts * update sumbodule * built vue files * System test updates * UI test screenshot updates * Update submodule * Test fix * Test fixes * Update system tests * Rerun tests * Fix for unformatted metrics when comparing * Update UI test screenshots for sparkline comparisons * apply some fixes * Update submodule Co-authored-by: sgiehl <stefan@matomo.org> Co-authored-by: sgiehl <sgiehl@users.noreply.github.com>
2022-05-18[security] Force matomo.org related requests to use ssl as default (#19098)Peter Zhang
* Update dataTable.js update database table * Update dataTable.js update table bug * Update dataTable.js shorter the query * update screenshot update screenshot * Update dataTable.js make table size stable * Revert "Update dataTable.js" This reverts commit 1a72e1d9580172414fb147cda9e66f4927f4b2ae. * Update dataTable.js update columns * Revert "update screenshot" This reverts commit c11aec88af44668171d2ee14e7a502b5fb04126f. * force ssl to api and plug force ssl to api and plug * force request to ssl force request to ssl * Update Http.php update tests * update tests update condition only on matomo.org * update checks update checks * update default to https update default to https * update phpcs check update phpcs check * Update plugins/Marketplace/config/config.php * add config force ssl on market place add config force ssl on market place * Update plugins/Marketplace/config/config.php Co-authored-by: Justin Velluppillai <justin@innocraft.com> * update config update config * update config update config * built vue files * remove double diagnostic remove double diagnostic * force api using https force api using https * update tests update tests * update feed back update feed back * Remove unused use * update failed display message update failed display message * Update plugins/CoreUpdater/Diagnostic/HttpsUpdateCheck.php Co-authored-by: Justin Velluppillai <justin@innocraft.com> * Minor text tweak * update hardcode to translation update hardcode to translation * update translation update translation * update language and some logic update language and some logic * run test run test * trigger test trigger test * update screenshot update screenshot Co-authored-by: sgiehl <stefan@matomo.org> Co-authored-by: Justin Velluppillai <justin@innocraft.com> Co-authored-by: peterhashair <peterhashair@users.noreply.github.com> Co-authored-by: Ben Burgess <88810029+bx80@users.noreply.github.com>
2022-05-17Compatibility fixes for PHP 8.1 (#19143)Stefan Giehl
* Update .travis.yml * fix php 8.1 deprecation notices * Revert "run report tests on any PHP version (#18666)" This reverts commit ec58ab4606cbc6c7f7c3a7aa7f1e9cc5a88e5dfb. * apply PSR12 code formatting * fix deprecation notice * try to fix test * fix frontcontroller test * Clearing output buffers with enabled output compression makes problems on some PHP versions * Set the mysqli error reporting to none, to prevent possible problems on PHP 8.1
2022-05-16Merge 4.10.0 changes back to development branch (#19223)Justin Velluppillai
* tweak QueryParameters type in index.d.ts to better match arbitrary object types (#19191) * tweak QueryParameters type in index.d.ts to better match arbitrary object types * make sure github action takes into account changes in CoreVue types * add ability to use a deep watch in scope var watches in angularjs adapters (#19195) * covert getPluginUmdChunks from private to protected (#19212) * set default color value, when key not exist. (#18696) * Update Sparkline.php add addition setup * Update Sparkline.php update foreach to array_merge * protected getPluginUmdChunks update private to protect * correctly destroy vue entry components in widgetloader (#19216) * Release Matomo 4.10.0 Co-authored-by: dizzy <diosmosis@users.noreply.github.com> Co-authored-by: Peter Zhang <peter@innocraft.com>
2022-05-06Add support to exclude hosts from proxy (#19139)Jürgen Thomann
2022-05-03Update to 4.10.0-rc14.10.0-rc1Justin Velluppillai
2022-04-25Merge branch 'next_release' into 4.x-devsgiehl
2022-04-25Fix some "Passing null to parameter" warnings (#19135)MichaelRoosz
* Fix "passing null to parameter" errors * Fix "passing null to parameter" error * Fix "passing null to parameter" errors * Fix "passing null to parameter" error * Update fix for "passing null to parameter" error Co-authored-by: Michael Roosz <michael.roosz@check24.de>
2022-04-19Fix PHP 8.1 deprecation warning (#19103)Stefan Giehl
2022-04-13Create assets folder if it is missing when writing Report (#19088)Sam
* create assets folder if it is missing when writing Report * apply PSR12 code formatting Co-authored-by: sgiehl <stefan@matomo.org>
2022-04-13Update version to 4.9.04.9.0Justin Velluppillai
2022-04-12Remove invalid hosts tracker settings cache (#19021)Sam
* remove invalid host tracker settings cache * only check ini cache file if it exists * Revert "remove invalid host tracker settings cache" This reverts commit 88ec3b9d37517bfa290ea31022ecc423c8273ab5. * check host structure before cache init * fix tests - removing original file isn't necessary for test * apply PSR12 code formatting Co-authored-by: sgiehl <stefan@matomo.org>
2022-04-12Adds update script to remove broken scheduled reports from db (#19062)Stefan Giehl
* Adds update script to remove broken scheduled reports from db * Update core/Updates/4.10.0-b1.php Co-authored-by: Ben Burgess <88810029+bx80@users.noreply.github.com> Co-authored-by: Ben Burgess <88810029+bx80@users.noreply.github.com>
2022-04-11[Bug]fix prefilght cors OPTIONS request record in the action visits (#19030)Peter Zhang
* extend request with options and method when options header and method is options do not record in the database. * update function update function * update tests update tests * update tests adjust code only trigger on option request * remove class variable remove server * Update Request.php add check request method * drop option request drop prefight request * update reset update reset * return 204 on prefight return 204 on prefight * Update Tracker.php accept cors * fix typo & add type hint * Update core/Tracker/RequestSet.php * apply PSR12 code formatting * adds test Co-authored-by: sgiehl <stefan@matomo.org>
2022-04-11Add the request hostname to error & exception logs (#18996)Sam
* Add the hostname to the tracker exception log so multi-tenant domains are easier to debug * Add hostname to error log to help with debugging * use Url::getHost and add method to Url class instead * apply PSR12 code formatting Co-authored-by: sgiehl <stefan@matomo.org>
2022-04-05Remove execute bit on files that do not need it (#19052)Adrien Crivelli
Because execute bit might be a security risk and has no useful purpose for files that are not meant to be executed in the first place.
2022-04-04Try to reduce failed cache write random UI test failures (#19040)dizzy
* try to avoid random filesystem cache write failure during UI tests by retrying * update ui-test.php * forgot return
2022-04-01Merge branch 'next_release' into 4.x-devsgiehl
2022-04-01Improve handling of invalid API parameter types (#19027)Ben Burgess
* Added check to throw an exception if idSubtable is passed a string value * Added new system test * Adjusted idSubtable type check to allow for 'all' special value * Apply PSR12 code formatting Co-authored-by: sgiehl <stefan@matomo.org>
2022-04-01Clear general cache less often when launching the archiving (#19000)Thomas Steur
* Clear general cache less often when launching the archiving * invalidate only when needed * optimise clear general cache * better naming * try better approach * simplify * simplify further
2022-03-31Update version to 4.9.0-rc14.9.0-rc1Justin Velluppillai
2022-03-30Skip web server error logs for unsupported browser exceptions (#19018)Ben Burgess
2022-03-28Fix issue where date ranges might include too many subperiods (#18995)Stefan Giehl
* Fix issue where date ranges might include too many subperiods when including a magic keyword and a timezone * more tests
2022-03-24Minor performance improvement for archive invalidator (#18990)Thomas Steur
2022-03-24Build plugin module dependencies if type output does not exist locally, ↵dizzy
otherwise build will fail. (#18994)
2022-03-17Fix possible error on PHP 8.1 (#18913)Stefan Giehl
2022-03-17With multi_server_environment enable maintain won't send 503 as response ↵Peter Zhang
(#18862) * Update FrontController.php update multi_server_environment is set wont return 503 * Update FrontController.php update only response 503 * Update FrontController.php using GeneralConfig * Update global.ini.php append maintenance mode response code * Update global.ini.php update comments of multi_server_environment
2022-03-17[Vue] migrate LanguagesManager to vue (#18931)dizzy
* migrate translation search directive to vue * Allow specifying usable components in vue-entry and use in LanguagesManager configuration.twig * migrate language selector, fix prop type in personalsettings.vue, and get selector to work in installation * built vue files
2022-03-15[automatic Intl data updates from CLDR 40.0.0] (#18943)github-actions[bot]
* Updates Intl data from CLDR 40.0.0 * fix tests * Handle date formats b and B as a Co-authored-by: sgiehl <sgiehl@users.noreply.github.com> Co-authored-by: sgiehl <stefan@matomo.org>
2022-03-15[Vue] make sure chunk assets can be removed (#18929)dizzy
* make sure chunk assets can be removed * try to fix test * another attempt at a fix
2022-03-11Fix PHP8 Trim Error (#18903)Ben Hayden
* Fix PHP8 Trim Error An error happens if sites if names or skus are arrays in PHP 8 > Uncaught exception in core/Tracker/GoalManager.php line 567: > trim(): Argument #1 ($string) must be of type string, array given * Add unit test for PHP8 trim fix
2022-03-10[Codingstyle] Disallow unused use statements (#18520)Stefan Giehl
* Forbid unused use statements * Fix some incorrect classnames * fix tests * remove unused use statements
2022-03-09Merge RC patches back to main branch (#18901)Justin Velluppillai
* Update version to 4.8.0-rc1 * Fix possible warning in Url::isValidHost (#18887) * Handle case only file name updates on case insensitive file systems (#18865) * Added unit test for case-sensitive unlink * Use case-insensitive comparison in directoryDiff() if a case-insensitive filesystem is detected * Fix misleading method name * Update tests/PHPUnit/Unit/FilesystemTest.php Co-authored-by: Justin Velluppillai <justin@innocraft.com> * Update tests/PHPUnit/Unit/FilesystemTest.php Co-authored-by: Justin Velluppillai <justin@innocraft.com> Co-authored-by: Justin Velluppillai <justin@innocraft.com> * Update version to 4.8.0 (#18893) Co-authored-by: Stefan Giehl <stefan@matomo.org> Co-authored-by: Ben Burgess <88810029+bx80@users.noreply.github.com>
2022-03-08Prevent archiving of data for time periods that start in the future (#18790)Ben Burgess
* Prevent archiving data later than today instead of today + 2days * Added archive test to check that periods that start in the future are not archived * Allow for local time being a day ahead of UTC when skipping archive ranges * Added test for website with local time in the previous day from the current UTC time
2022-03-08the cachebuster set in render() does not appear to be used for JS files, ↵dizzy
which is different in development mode (#18895)
2022-03-07[UI] add report date on overview reports and fix date display (#18838)Peter Zhang
* update date on overview update date on overview * built vue files * Update plugins/CoreHome/templates/_dataTable.twig Co-authored-by: Stefan Giehl <stefan@matomo.org> * update largest key update largest key * update checks update checks * Update Map.php reset map class * Update Visualization.php update a condition * Update Visualization.php update some condition * Update Visualization.php convert meta data to local var * ini $metadata ini $metadata * Update Visualization.php update error * Update core/Plugin/Visualization.php Co-authored-by: Stefan Giehl <stefan@matomo.org> Co-authored-by: peterhashair <peterhashair@users.noreply.github.com> Co-authored-by: Stefan Giehl <stefan@matomo.org>
2022-03-07Fix regression in plugin order determination, new param keepUnresolved is ↵dizzy
not used in function. (#18886)
2022-03-04[Vue] Chunk UMD JavaScript into a set of asynchronously loaded files (#18761)dizzy
* proof of concept for chunking UMD JavaScript into a set of files that are loaded asynchronously * take into account alternative plugin directories * make chunk count and load umds individually configurable (undocumented config) and get to work * fix a bug and add chunk JS sizes to output of development:compute-js-asset-size * document * fill out TODO documentation * make sure cache buster is added to chunk script srcs * add some checks in case a chunk does not exist on disk (happens during some tests) * use realpath on test PIWIK_INCLUDE_PATH so search/replace on paths for relative path will work * add integration test and get to pass * fix for when disable_merged_assets=1 * fix condition * fix ui test failure * update screenshot Co-authored-by: sgiehl <stefan@matomo.org>
2022-02-23[Performance]Cache whether a DB supports transaction level (#18691)Peter Zhang
* add check add check * Update TransactionLevelTest.php update tests to fit different mysql version * built vue files * cs/ws * move supportsUncommitted to db level move supportsUncommitted to db level * Update Db.php append $supportsUncommitted to global Db * Update Mysql.php append supportsUncommitted * Update Mysqli.php append to mysqli supportsUncommitted * Update TransactionLevel.php update function * Update TransactionLevel.php update transaction * Update TransactionLevel.php revert back to previous change * Update TransactionLevel.php update cache level key * Update TransactionLevel.php update cache * Update TransactionLevel.php update supportsUncommitted * Update TransactionLevel.php add some comments * Update core/Db/TransactionLevel.php Co-authored-by: Stefan Giehl <stefan@matomo.org> * remove $supportsUncommitted reset remove $supportsUncommitted reset Co-authored-by: peterhashair <peterhashair@users.noreply.github.com> Co-authored-by: sgiehl <stefan@matomo.org>
2022-02-21Improve performance of some archiving queries (#18797)Thomas Steur
2022-02-21Fix cookies with session lifetime (#18820)Stefan Giehl
2022-02-14Fix session timeouts in overlay session (#18648)Stefan Giehl
* Ensure samesite cookie attribute is set correctly for requests coming from overlay session * Don't fetch API.getPagesComparisonsDisabledFor on Overlay page * Check for explicit overlay requests * Adds valid host check * parse referer query * use UrlHelper::getArrayFromQueryString * Adds some tests for Overlay::isOverlayRequest * apply review feedback * built vue files Co-authored-by: sgiehl <sgiehl@users.noreply.github.com>
2022-02-14[Hotfix]add date, period params into common function (#18686)Peter Zhang
* Update Common.php add array check in common request * Update Common.php test * add common period and date function add common period and date function * Update core/Piwik.php Co-authored-by: Stefan Giehl <stefan@matomo.org> * Update core/Piwik.php Co-authored-by: Stefan Giehl <stefan@matomo.org> * update function update function * Update core/Piwik.php Co-authored-by: Stefan Giehl <stefan@matomo.org> * Update Controller.php update isset check * Update core/Plugin/Controller.php Co-authored-by: Stefan Giehl <stefan@matomo.org> * Update core/Piwik.php Co-authored-by: Stefan Giehl <stefan@matomo.org> * update isset check update isset check * Update Piwik.php update phpdocs * Update core/Visualization/Sparkline.php Co-authored-by: Stefan Giehl <stefan@matomo.org> * Update Controller.php pass param * Update core/Plugin/Controller.php Co-authored-by: Stefan Giehl <stefan@matomo.org> Co-authored-by: Stefan Giehl <stefan@matomo.org>
2022-02-14[UI]update market place wording and UI (#18527)Peter Zhang
* update market place. update market place. * update language update language * revert language change revert language change * Update plugins/Marketplace/lang/en.json Co-authored-by: Stefan Giehl <stefan@matomo.org> * update screenshots update screenshots * update wording and array update wording and array * Update getPremiumFeatures.twig remove red color * update bundle special label update bundle special label * built vue files * Update GetPremiumFeatures.php update to fits php 8.0 * Update UserPermissionsEdit.vue update tests error * built vue files * Update UserPermissionsEdit.vue p to br * built vue files * Update UserPermissionsEdit.vue revert change Co-authored-by: Stefan Giehl <stefan@matomo.org> Co-authored-by: peterhashair <peterhashair@users.noreply.github.com>
2022-02-08Fix usage of translation key (#18747)Stefan Giehl
2022-02-04Fixed round fatal error in php8 (#18732)Altamash Shaikh
* Fixed round fatal error in php8 ,#DEV-2577 * Simplified logic for rounding
2022-02-03Merge branch 'next_release' into 4.x-devsgiehl