Commit graph

66 commits

Author SHA1 Message Date
Daniel Siepmann 9fe11b300c Extend dependency checker to TYPO3 specific files
Only autoloaded files will be checked by default.
TYPO3 has some additional files which should be scanned as well.
2020-09-16 09:13:29 +02:00
Daniel Siepmann 8ecc704cd9 Fetch XSD for xliff from official source 2020-09-16 09:09:58 +02:00
Daniel Siepmann 930903e39f Fix SQL query for pageviewsperpage widget
The existing query was not fully working as intended.
Also it did not work with proper MySQL sql_mode settings.

This is fixed by building a proper query which delivers expected and
deterministic results.

We now always have latest records first.

Also there is no need to fetch the sys_language_uid, as we only fetch
localized record if only one language is allowed. That way we can just
check configuration and use the configuration to do language overlay.

Also there was no need for an join, therefore query was reduced to
necessary stuff.

Relates:  #35
2020-08-13 10:11:45 +02:00
Daniel Siepmann 27e0623794 Fix SQL query for recordviews widget
The existing query was not fully working as intended.
Also it did not work with proper MySQL sql_mode settings.

This is fixed by building a proper query which delivers expected and
deterministic results.

We now always have latest records first.

Also there is no need to fetch the sys_language_uid, as we only fetch
localized record if only one language is allowed. That way we can just
check configuration and use the configuration to do language overlay.

Relates:  #35
2020-08-13 10:11:45 +02:00
Daniel Siepmann 8f755f79f2 Execute tests for MySQL in addition to existing sqlite 2020-08-13 10:11:45 +02:00
Daniel Siepmann 204eddf9e1 Fix path to PHPUnit schema
PHPUnit changed path of 9.3 aka current xsd.
2020-08-12 15:38:20 +02:00
Daniel Siepmann f06684c660 Add sensiolabs secutiy checker to ci 2020-08-07 12:43:28 +02:00
Daniel Siepmann 2c4db3078d Add php linting
Ensure PHP Code is valid for all supported PHP versions.
2020-08-07 12:43:15 +02:00
Daniel Siepmann 04fcaaaad2 Add XML linting to GitHub CI 2020-08-07 12:43:04 +02:00
Daniel Siepmann 80055b0642 Split GitHub Actions CI Jobs
It doesn't make sense to place all jobs into a single job.
Instead split them up into single jobs.
2020-08-07 12:10:59 +02:00
Daniel Siepmann 9cd32427ae Migrate phpunit configuration for 9.3.x
9.3.x renamed some options from offensive white and blacklist to include
and exclude.

As we don't want to wait until they get removed in v10, we adjust the
configuration now.
2020-08-07 10:46:37 +02:00
Daniel Siepmann 5d4b724485 Do not separate unit and functional tests
Both can be run with a single command and configuration.
Therefore merge both configurations into one and adjust CI call.
2020-08-07 10:40:19 +02:00
Daniel Siepmann 7d3aeabcdd Adjust branch alias for composer
As master was replaced by main.
2020-08-06 16:34:11 +02:00
Daniel Siepmann 42f75a75a0 Remove HTML Tags from dashboard widget labels
BackendUtility::getRecordTitle might contain HTML tags like "span".
Those might result in broken rendering. As we don't need this markup
anyway, we remove it.
2020-08-04 09:16:33 +02:00
Daniel Siepmann 1cbec2e51d Support language restriction for all widgets
Relates: #15
2020-08-03 14:29:42 +02:00
Daniel Siepmann 68d1b44008 Add missing _defaults to examples Services.yaml in docs
In order to provide fully consistent and working examples.
2020-08-03 12:31:16 +02:00
Daniel Siepmann d754120517 Use news as example for recordview tracking in docs
As it most likely is the most used configuration.
Therefore it should be as easy as possible.
Also it matches more or less any Extbase plugin with nested structure.
2020-08-03 12:31:16 +02:00
Daniel Siepmann 644f5f241d Add hint regarding loading order of extensions 2020-08-03 12:31:16 +02:00
Daniel Siepmann 7346616663 Allow older versions of symfony components
This should prevent conflicts with other tools like typoscript linter.
2020-08-03 12:31:16 +02:00
Daniel Siepmann 26d499a1de Allow Symfony to autowire and autoconfigure widgetproviders
That will allow to resolve none configured dependencies, e.g. to
language service.
2020-08-03 12:31:16 +02:00
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 f48714cb7b Add documentation for integrators
Relates: #14
2020-07-30 13:52:33 +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 8e2cadef08 Fix sorting of pageview records 2020-07-28 15:57:58 +02:00
Daniel Siepmann 1a5c10a26d Do not resolve pid relation
TYPO3 would otherwise run into trouble.
TYPO3 expects pid to be an integer or string.
Resolving pid due to a configured pid column via select or groups,
would result in an php array.
2020-04-22 18:46:42 +02:00
Daniel Siepmann 5fc0b60131 Add icon file to pageview record 2020-04-22 18:46:42 +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 7e0f5760db Require TYPO3 10.4 dev state
As extension uses features from upcoming TYPO3 10.4 release.
2020-04-16 11:54:42 +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 d3878d928d Improve CI
* Adjust names of tasks.
* Add composer require checker.
* Install without plugins to not use custom installer and stay
  compatible with require checker.
* Stay phpunit 10 compatible.
2020-04-07 15:32:29 +02:00
Daniel Siepmann 60f76b0d9f Use human readable output of phpunit in CI 2020-04-01 20:43:30 +02:00
Daniel Siepmann 669d75ce86 Add PHPStan to ensure code quality and prevent bugs 2020-04-01 20:43:30 +02:00
Daniel Siepmann e06cc3c5c5
Update todos in readme 2020-04-01 11:40:01 +02:00
Daniel Siepmann 05d0dec7b7
Do not configure unavailable TCA options 2020-04-01 11:39:45 +02:00
Daniel Siepmann 328bf3c58e
Split clients like wget out of bots blacklist 2020-04-01 11:39:05 +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 17cbbe288e Adjust order of todos 2020-02-26 23:05:07 +01:00
Daniel Siepmann b939bfa58b Ignore further bots
Also split bots and services to fetch previews (e.g. chats)
2020-02-26 23:05:07 +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 81e98ec269
As master branch is used, adjust branch-alias (#5)
Also add further urls to composer.
2020-02-26 07:43:56 +01:00
Daniel Siepmann 60d4d94a45
Add screenshots to readme (#3) 2020-02-25 22:46:07 +01:00
Daniel Siepmann dff48c98d2
Remove md in faviour of rst (#2) 2020-02-25 22:39:05 +01:00
Daniel Siepmann 64b0261694
Merge pull request #1 from DanielSiepmann/develop
Develop
2020-02-25 22:37:26 +01:00
Daniel Siepmann c5e788e31d
Add some about information 2020-02-25 22:35:30 +01:00