Age | Commit message (Collapse) | Author |
|
* Fix timezone issue when using magic date keywords
* improve readability
* use Date::factoryInTimezone
|
|
* Use timezone in period factory only for magic keywords
* add test
* use better timezone
* add non-timezone date
Co-authored-by: diosmosis <diosmosis@users.noreply.github.com>
|
|
* Allow using last (week|month|year) as date param
* Adds some unit tests
* improve tests
* Make it possible to use last (week|month|year) for api requests
* improve test
|
|
* Adding initial new code for cron archive rewrite.
* first pass at removing unused CronArchive code.
* unfinished commit
* fill out archiveinvalidator code
* getting some tests to pass
* unfinished commit
* fixing part of test
* Another test fix.
* another sql change
* fix broken merge or something else that went wrong
* Couple more fixes and extra logs.
* Fixing enough issues to get core archive command to run completely.
* Fix and log change.
* Fixed more segment/test related issues for CronArchiveTest. Includes optimization for no visits for period + segment process from handling.
* another optimization and possible build fix
* no visit optimization
* test fix
* Implement archiving_custom_ranges logic w/ queue based implementation
* fixes to get archivecrontest to work
* add logic to invalidate today period
* fix optimization and some tests
* Fixing more tests.
* Fixing more tests
* debug travis failure
* more test fixes
* more test fixes, removing more unneeded code, handling some TODOs
* Handle more TODOs including creating ArchiveFilter class for some cli options.
* tests and todos
* idarchives are specific to table + start on archivefilter tests
* one test
* more TODOs and tests
* more tests and todo taken care of
* handle more todos
* fixing more tests
* fix comment
* make sure autoarchiving is enabled for segments when cron archive picks them up
* Fixing test.
* apply more pr feedback
* order by date1 asc
* quick refactor
* use batch insert instead of createDummyArchives
* apply rest of pr feedback
* add removed events, add new test, fix an issue (when deleting idarchives older than do not lump all segments together).
* re-add fixed/shared siteids
* fix tests
* incomplete commit
* Insert archive entries into archive_invalidations table.
* Use invalidations table in core:archive and get ArchiveCronTest to pass.
* fixing some tests
* debugging travis
* fix more tests & remove DONE_IN_PROGRESS which is no longer used.
* fix more tests
* apply review feedback
* fix tests
* try fixing alltests build
* try again
* try again
* Move archive_invalidations update to new beta since omnifixture was updated w/o it.
* Another fix.
|
|
* update doc blocks with new name
* submodule updates
* updates expected UI files
|
|
|
|
|
|
* Add movers and shakers widget to dashboard
* few fixes
* show movers first
* move dashboard position again
* tests should be fixed
|
|
I updated the link tag for all php files with the new matomo link.
Not sure if it is realistic that this will get merged but I though that someday someone has to do this(?)
|
|
to get proper result. (#13799)
* Update TimezonesTest to be more useful.
* Update TimezonesTest which will not pass until https://github.com/matomo-org/matomo/issues/13829
* Non-intrusively fix evolution graph timezone end date issue using new Date method.
* Make sure Date::factoryInTimezone only works w/ special word times.
|
|
and add a unit test. (#13762)
* Make sure Period::toString() always returns array of strings and add a unit test.
* Ensure backwards compatible.
* docblock tweak
* Fix tests.
|
|
* Create periods with timezones in a couple places that are missing it.
* tweak
* Apply timezone only if endDate is not a normal date.
* add comment
|
|
* Properly check dates used for period factory
* Properly check given idSite for rowevolution
* Improve example API to check given parameter type
* cast idSite parameter in ImageGraph API method
|
|
metadata. (#13280)
* Do not serialize every property of Periods which can appear in DataTable metadata.
* Add test for original PHP serialized response.
|
|
* Throw exception if date is empty in Period\Factory::build() since it can occur during development.
* Add API.Request.intercept event in API\Proxy so plugins can preempt normal API execution.
* Use Request::getRenamedModuleAndAction() in Visualization, as it is called in every other use of core/API/Proxy.
* Add new SitesManager.shouldPerformEmptySiteCheck event.
* Add event Request.shouldDisablePostProcessing so plugins can disable datatable post processing for certain requests.
* Make sure DataTable metadata is serialized with the table.
* Add description of API.Request.intercept, Request.shouldDisablePostProcessing, SitesManager.shouldPerformEmptySiteCheck to changelog.
|
|
* If a period is filtered out, the result of the periods array becomes an object which breaks the period selector which expects an array.
* Use $onInit instead of directive constructor. Seems angular.js silences errors when this is done.
* Parse previousN/lastN dates correctly in angular periods service.
* Parse periods using piwikPeriods client side, since we cannot assume a date range. Also if an invalid is used for period/date, display ERROR in the period selector.
* Angular will swallow errors from datepicker.parseDate, so add a console.log for developer sanity + make sure period selector has consistent state even when period/date values are invalid (& result in failed date parsing).
* Update misc/log-analytics submodule to latest.
|
|
frontend (#11873)
* Add generate:angular-component command to generate an angular component.
* Do not modify Date prototype.
* Move period selector code from calendar.js to new angular directive (just move, no refactoring).
* Extract date picker code from period selector code and put into new directive.
* Extract range picking code into separate component than period selector.
* Extract single period calendar to separate component & extract period specific functionality to new extendable periods service.
* Fixing regressions in period selector behavior.
* Move bulk of period selector code from directive to controller, & fix variable name in date range picker template.
* Fix issue w/ yesterday date value, remove need to give period selector directive translations and make sure periods can be extended in the frontend.
* Make sure period selector still works outside of an angular routing context (ie, in embedded dashboard).
* In period selector UI test, hide ajaxLoadingCalendar using CSS since it is now managed by angular.
* Make sure selected period highlighting changes immediately after selecting, even if loading a new page.
* Put period selector top level element ID & classes on correct elements to ensure certain styles work properly.
* Make sure selected period text changes immediately after selecing period, even if loading a new page or changing the URL.
* Make sure range start/end changes immediately when a period is selected & selected period date range stops being highlighted immediately when a range period is selected, even if loading a new page.
* Updating expected screenshots.
* Updating screenshots.
* Assorted fixes for period selector refactor.
- Filter out invalid period labels (can happen if INI config for allowed periods is incorrect).
- When determining display text for range, don't try to format the startRangeDate/endRangeDate vars, they're both strings.
- Use correct selector when closing period selector.
* Set global piwik date/period values on location change, outside of period selector component.
* Do not skip parsing date if it does not start with an int (since the JS can handle today/yesterday/now).
* Assorted fixes for period selector refactor:
- use $onChanges instead of watches in datepicker (watches get triggered every time, $onChanges doesn't)
- don't use arrays for selected/highlighted dates (for some weird reason, changing one of these arrays results in angular thinking it changes 3 times instead of once)
- don't redraw on triggered mouseover events (something triggers mouseover when a date is selected, probably jquery datepicker)
- draw after a setTimeout when a date is selected so our drawing occurs after jquery datepicker draws
* Achieving smoother rendering for period selector by removing click handlers jquery datepicker adds.
Also fixed bug where selecting the current period type reset the view date for the date picker.
* Bound range date in period selector by piwik min/max date, so inferred dates will always be within allowed pickable dates in picker.
* Removing ES6 used by accident + fix for issue when switching from non-year to year period (ui-datepicker-current-day class does not get removed).
* Fix for angularjs one way binding quirk: initial property value is set before $onInit not during construction.
* Avoid an exception when a date input in the date range picker is empty.
* Split up change/keyup event to solve strange race condition in IE 10 on browserstack.
* Change period selector "click again" tooltip to "double click".
* Remove tabindexes > 1 so period selector control can be tabbed through.
* Show visual cue for invalid dates in date range picker.
* Only hide period option tooltip if period is active period, not if period is selected period.
* In period selector, disable apply button if range is invalid. Also fix case when \$.datepicker.parseDate returns null instead of throwing.
|
|
* Separate Archive query creation responsibility from Archive class.
* Add ability for plugins to define custom period types.
* Make period responsible for determining start/end time of periods, not LogAggregator.
* Allow specifying custom archive writer in PluginsArchiver.
|
|
|
|
Period::getAllParentPeriods and replace its use in ArchiveInvalidator w/ some small SQL changes.
|
|
default.
|
|
class + add unit tests.
|
|
non-API method to Piwik Core.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
period
Alternate implementation of #7623
|
|
month
|
|
Various performance improvements, especially for Range period and installations with many sites
|
|
|
|
|
|
|
|
This is a bit experimental and I need to see whether any test will
fail. It takes a long time to generate subperiods for period=range.
Eg requesting date=2015-01-04,2015-02-02&module=Referrers&action=getSearchEngines&period=range
took about 700ms for each request of 1500ms in total. It now takes
only 40ms which means it is 30-40% faster. With the other optimizations
the request in total does now only take 700-800ms instead of 1500ms.
|
|
|
|
|
|
code, few refactorings, all as part of our code cleanup strategy
|
|
|
|
|
|
enabled_periods_API
|
|
https://github.com/piwik/piwik/pull/320
(the only change was to set default timezone to UTC)
|
|
to use free/libre instead of open source
|
|
core:archive` command
|
|
; The list of periods that are available in the Piwik calendar
; Example use case: custom date range requests are processed in real time,
; so they may take a few minutes on very high traffic website: you may remove "range" below to disable this period
enabled_periods_UI = "day,week,month,year,range"
enabled_periods_API = "day,week,month,year,range"
|
|
|
|
Period\Factory class
|
|
dashboard and a new Insights visualization. More to come... still early version so expect a lot of things to change but I am still happy about feedback
|
|
refs #4609
|