Commit graph

21 commits

Author SHA1 Message Date
Daniel Siepmann f3d69eed45 Add multi language support
Allow integrator to limit results in widget to certain languages.
If only one language is allowed, labels will be translated.
Otherwise default system language is used.

E.g. one record will be displayed in multiple languages, it would be
confusing to show him multiple times for each language.

Add TYPO3 extension for phpstan as many things would break within tests.

Relates: #15
2020-08-03 08:46:31 +02:00
Daniel Siepmann a387580df7 !!!|Rename bad phrases like blacklist
This involves changed inside of Services.yaml if those configuration
options were used before.

Relates: #17
2020-07-30 14:00:22 +02:00
Daniel Siepmann 33685d1735 Add tracking of record views
Allow Integrator to define rules to track views of records.
This allows to add tracking to extensions like tx_news.
Integrators are able to define matching rules on current request. If a
request matches, the record is stored as individual view beside existing
pageview.

Relates: #14
2020-07-30 13:52:33 +02:00
Daniel Siepmann 44ca6a2d3c Add operating system to page view record
Extract operating system from user agent and store it in database
record.

Another widget is added which displays the page views per operating
system.

An command is provided which will update existing data.
2020-07-29 09:07:43 +02:00
Daniel Siepmann b732cc0cd2 Update interface namespace for ext:dashboard
As Interfaces was moved to a different namespace,
import statements need to be adjusted.
2020-04-17 16:18:28 +02:00
Daniel Siepmann 0927683926 Migrate dashboard part to be compatible with v10.4
10.4 introduced breaking changes for dashboard widgets.
The necessary changes to stay compatible are done within this commit.

No need anymore to configure widget through PHP, instead DI is used.
Instead only PHP to provide data is used.
2020-04-16 11:54:42 +02:00
Daniel Siepmann 669d75ce86 Add PHPStan to ensure code quality and prevent bugs 2020-04-01 20:43:30 +02:00
Daniel Siepmann 382f58a6ec
Cast string to int to fulfill interface 2020-04-01 11:38:48 +02:00
Daniel Siepmann be0e13416c
Truncate page title for graph
In order to not break layout.
2020-04-01 11:38:09 +02:00
Daniel Siepmann b19eb00329
Properly use order by doctrine api (#7) 2020-02-26 23:14:04 +01:00
Daniel Siepmann 763769b4d2 Add list widget with newest page views
Still very basic, no custom template or fancy information or styling.
2020-02-26 23:05:07 +01:00
Daniel Siepmann db2b0e13ed Make max results of doughnut graph configurable 2020-02-26 23:05:07 +01:00
Daniel Siepmann e237941e07 Fix wrong label identifier 2020-02-26 23:05:07 +01:00
Daniel Siepmann 548ad0b07c
Make widgets configurable via DI
As no configuration API is provided, we use Services.yaml for now.
2020-02-25 22:35:30 +01:00
Daniel Siepmann 50dcb619ea
Add PSR-12 2020-02-25 22:35:29 +01:00
Daniel Siepmann ab6c7d2967
Use DI instead of unnecessary code 2020-02-25 22:35:27 +01:00
Daniel Siepmann 2e718d41c9
Take current day into account for page views per day 2020-02-25 22:35:27 +01:00
Daniel Siepmann b1a7226ed8
Add tracking widgets 2020-02-25 22:35:26 +01:00
Daniel Siepmann 6a2cd9bc50
Add rules to prevent tracking of certain requests 2020-02-25 22:35:25 +01:00
Daniel Siepmann 27819c73ef
Add user agent to tracking
To enable fine grained filtering, and detect further bots / crawler to
block.
2020-02-25 22:35:25 +01:00
Daniel Siepmann cece44c735
Add first basic tracking for page views 2020-02-25 22:35:25 +01:00