TYPO3 v15 dev-main snapshot ()
This commit is contained in:
@@ -0,0 +1,73 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _bar-chart-widget:
|
||||
|
||||
================
|
||||
Bar Chart Widget
|
||||
================
|
||||
|
||||
.. php:namespace:: TYPO3\CMS\Dashboard\Widgets
|
||||
|
||||
Widgets using this class will show a bar chart with the provided data.
|
||||
|
||||
This kind of widgets are useful if you want to show some statistics of for example
|
||||
historical data.
|
||||
|
||||
.. php:class:: TYPO3\CMS\Dashboard\Widgets\BarChartWidget
|
||||
|
||||
.. _bar-chart-widget-example:
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
.. code-block:: yaml
|
||||
:caption: Excerpt from EXT:dashboard/Configuration/Services.yaml
|
||||
|
||||
services:
|
||||
dashboard.widget.sysLogErrors:
|
||||
class: 'TYPO3\CMS\Dashboard\Widgets\BarChartWidget'
|
||||
arguments:
|
||||
$dataProvider: '@TYPO3\CMS\Dashboard\Widgets\Provider\SysLogErrorsDataProvider'
|
||||
$buttonProvider: '@TYPO3\CMS\Dashboard\Widgets\Provider\SysLogButtonProvider'
|
||||
$options:
|
||||
refreshAvailable: true
|
||||
tags:
|
||||
- name: dashboard.widget
|
||||
identifier: 'sysLogErrors'
|
||||
groupNames: 'systemInfo'
|
||||
title: 'LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.sysLogErrors.title'
|
||||
description: 'LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.sysLogErrors.description'
|
||||
iconIdentifier: 'content-widget-chart-bar'
|
||||
height: 'medium'
|
||||
width: 'medium'
|
||||
|
||||
.. _bar-chart-widget-options:
|
||||
|
||||
Options
|
||||
-------
|
||||
|
||||
.. include:: Options/RefreshAvailable.rst.txt
|
||||
|
||||
.. _bar-chart-widget-dependencies:
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
.. confval:: $dataProvider
|
||||
:type: :php:`\TYPO3\CMS\Dashboard\Widgets\ChartDataProviderInterface`
|
||||
:name: bar-chart-widget-dataProvider
|
||||
|
||||
To add data to a Bar Chart widget, you need to have a DataProvider that implements
|
||||
the interface :php-short:`\TYPO3\CMS\Dashboard\Widgets\ChartDataProviderInterface`.
|
||||
|
||||
See :ref:`graph-widget-implementation` for further information.
|
||||
|
||||
.. confval:: $buttonProvider
|
||||
:type: :php:`\TYPO3\CMS\Dashboard\Widgets\ButtonProviderInterface`
|
||||
:name: bar-chart-widget-buttonProvider
|
||||
|
||||
Optionally you can add a button with a link to some additional data.
|
||||
This button should be provided by a ButtonProvider that implements the interface
|
||||
:php-short:`\TYPO3\CMS\Dashboard\Widgets\ButtonProviderInterface`.
|
||||
|
||||
See :ref:`adding-buttons` for further info and configuration options.
|
||||
@@ -0,0 +1,72 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _cta-button-widget:
|
||||
|
||||
=================
|
||||
CTA Button Widget
|
||||
=================
|
||||
|
||||
.. php:namespace:: TYPO3\CMS\Dashboard\Widgets
|
||||
.. php:class:: TYPO3\CMS\Dashboard\Widgets\CtaWidget
|
||||
|
||||
Widgets using this class will show a CTA (=Call to action) button to easily go to
|
||||
a specific page or do a specific action. You can add a button to the widget by
|
||||
defining a button provider.
|
||||
|
||||
You can use this kind of widget to link to for example a manual or to an important
|
||||
website that is used a lot by the users.
|
||||
|
||||
.. _cta-button-widget-example:
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
.. code-block:: yaml
|
||||
:caption: Excerpt from EXT:dashboard/Configuration/Services.yaml
|
||||
|
||||
services:
|
||||
dashboard.widget.docGettingStarted:
|
||||
class: 'TYPO3\CMS\Dashboard\Widgets\CtaWidget'
|
||||
arguments:
|
||||
$buttonProvider: '@dashboard.buttons.docGettingStarted'
|
||||
$options:
|
||||
text: 'LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.documentation.gettingStarted.text'
|
||||
tags:
|
||||
- name: dashboard.widget
|
||||
identifier: 'docGettingStarted'
|
||||
groupNames: 'documentation'
|
||||
title: 'LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.documentation.gettingStarted.title'
|
||||
description: 'LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.documentation.gettingStarted.description'
|
||||
iconIdentifier: 'content-widget-text'
|
||||
height: 'small'
|
||||
|
||||
.. _cta-button-widget-options:
|
||||
|
||||
Options
|
||||
-------
|
||||
|
||||
.. include:: Options/RefreshAvailable.rst.txt
|
||||
|
||||
.. confval:: text
|
||||
:name: cta-button-text
|
||||
:type: string
|
||||
:Example: `LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.documentation.gettingStarted.text`
|
||||
|
||||
Adds an optional text to the widget to give some more background information
|
||||
about what a user can expect when clicking the button.
|
||||
You can either enter a normal string or a translation string.
|
||||
|
||||
.. _cta-button-widget-dependencies:
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
.. confval:: $buttonProvider
|
||||
:type: :php:`\TYPO3\CMS\Dashboard\Widgets\ButtonProviderInterface`
|
||||
:name: cta-button-buttonProvider
|
||||
|
||||
Provides the actual button to show within the widget.
|
||||
This button should be provided by a ButtonProvider that implements the interface
|
||||
:php-short:`\TYPO3\CMS\Dashboard\Widgets\ButtonProviderInterface`.
|
||||
|
||||
See :ref:`adding-buttons` for further info and configuration options.
|
||||
@@ -0,0 +1,70 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _doughnut-chart-widget:
|
||||
|
||||
=====================
|
||||
Doughnut Chart Widget
|
||||
=====================
|
||||
|
||||
.. php:namespace:: TYPO3\CMS\Dashboard\Widgets
|
||||
.. php:class:: TYPO3\CMS\Dashboard\Widgets\DoughnutChartWidget
|
||||
|
||||
Widgets using this class will show a doughnut chart with the provided data.
|
||||
|
||||
This kind of widgets are useful if you want to show the relational proportions
|
||||
between data.
|
||||
|
||||
.. _doughnut-chart-widget-example:
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
.. code-block:: yaml
|
||||
:caption: Excerpt from EXT:dashboard/Configuration/Services.yaml
|
||||
|
||||
services:
|
||||
dashboard.widget.typeOfUsers:
|
||||
class: 'TYPO3\CMS\Dashboard\Widgets\DoughnutChartWidget'
|
||||
arguments:
|
||||
$dataProvider: '@TYPO3\CMS\Dashboard\Widgets\Provider\TypeOfUsersChartDataProvider'
|
||||
$options:
|
||||
refreshAvailable: true
|
||||
tags:
|
||||
- name: dashboard.widget
|
||||
identifier: 'typeOfUsers'
|
||||
groupNames: 'systemInfo'
|
||||
title: 'LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.typeOfUsers.title'
|
||||
description: 'LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.typeOfUsers.description'
|
||||
iconIdentifier: 'content-widget-chart-pie'
|
||||
height: 'medium'
|
||||
|
||||
.. _doughnut-chart-widget-options:
|
||||
|
||||
Options
|
||||
-------
|
||||
|
||||
.. include:: Options/RefreshAvailable.rst.txt
|
||||
|
||||
.. _doughnut-chart-widget-dependencies:
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
.. confval:: $dataProvider
|
||||
:type: :php:`\TYPO3\CMS\Dashboard\Widgets\ChartDataProviderInterface`
|
||||
:name: doughnut-chart-widget-dataProvider
|
||||
|
||||
To add data to a Bar Chart widget, you need to have a DataProvider that implements
|
||||
the interface :php-short:`\TYPO3\CMS\Dashboard\Widgets\ChartDataProviderInterface`.
|
||||
|
||||
See :ref:`graph-widget-implementation` for further information.
|
||||
|
||||
.. confval:: $buttonProvider
|
||||
:type: :php:`\TYPO3\CMS\Dashboard\Widgets\ButtonProviderInterface`
|
||||
:name: doughnut-chart-widget-buttonProvider
|
||||
|
||||
Optionally you can add a button with a link to some additional data.
|
||||
This button should be provided by a ButtonProvider that implements the interface
|
||||
:php-short:`\TYPO3\CMS\Dashboard\Widgets\ButtonProviderInterface`.
|
||||
|
||||
See :ref:`adding-buttons` for further info and configuration options.
|
||||
@@ -0,0 +1,17 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _widgets:
|
||||
|
||||
=======
|
||||
Widgets
|
||||
=======
|
||||
|
||||
The following section will provide information for all provided widgets.
|
||||
For each widget an example registration will be provided,
|
||||
together with all configuration options.
|
||||
|
||||
.. toctree::
|
||||
:glob:
|
||||
:titlesonly:
|
||||
|
||||
*Widget
|
||||
@@ -0,0 +1,58 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _list-widget:
|
||||
|
||||
===========
|
||||
List Widget
|
||||
===========
|
||||
|
||||
.. php:namespace:: TYPO3\CMS\Dashboard\Widgets
|
||||
.. php:class:: TYPO3\CMS\Dashboard\Widgets\ListWidget
|
||||
|
||||
Widgets using this class will show a simple list of items provided by a data
|
||||
provider.
|
||||
|
||||
.. _list-widget-example:
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
.. code-block:: yaml
|
||||
:caption: Excerpt from EXT:dashboard/Configuration/Services.yaml
|
||||
|
||||
services:
|
||||
dashboard.widget.testList:
|
||||
class: 'TYPO3\CMS\Dashboard\Widgets\ListWidget'
|
||||
arguments:
|
||||
$dataProvider: '@Vendor\Ext\Widgets\Provider\TestListWidgetDataProvider'
|
||||
$options:
|
||||
refreshAvailable: true
|
||||
tags:
|
||||
- name: dashboard.widget
|
||||
identifier: 'testList'
|
||||
groupNames: 'general'
|
||||
title: 'List widget'
|
||||
description: 'Description of widget'
|
||||
iconIdentifier: 'content-widget-list'
|
||||
height: 'large'
|
||||
width: 'large'
|
||||
|
||||
.. _list-widget-options:
|
||||
|
||||
Options
|
||||
-------
|
||||
|
||||
.. include:: Options/RefreshAvailable.rst.txt
|
||||
|
||||
.. _list-widget-dependencies:
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
.. confval:: $dataProvider
|
||||
:type: :php:`\TYPO3\CMS\Dashboard\Widgets\NumberWithIconDataProviderInterface`
|
||||
:name: list-widget-dataProvider
|
||||
|
||||
This class should provide the items to show.
|
||||
This data provider needs to implement the
|
||||
:php-short:`\TYPO3\CMS\Dashboard\Widgets\NumberWithIconDataProviderInterface`.
|
||||
@@ -0,0 +1,84 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _number-widget:
|
||||
|
||||
=======================
|
||||
Number With Icon Widget
|
||||
=======================
|
||||
|
||||
.. php:namespace:: TYPO3\CMS\Dashboard\Widgets
|
||||
.. php:class:: TYPO3\CMS\Dashboard\Widgets\NumberWithIconWidget
|
||||
|
||||
Widgets using this class will show a widget with a number, some additional
|
||||
text and an icon.
|
||||
|
||||
This kind of widgets are useful if you want to show some simple stats.
|
||||
|
||||
.. _number-widget-example:
|
||||
|
||||
Example
|
||||
-------
|
||||
|
||||
.. code-block:: yaml
|
||||
:caption: Excerpt from EXT:dashboard/Configuration/Services.yaml
|
||||
|
||||
services:
|
||||
dashboard.widget.failedLogins:
|
||||
class: 'TYPO3\CMS\Dashboard\Widgets\NumberWithIconWidget'
|
||||
arguments:
|
||||
$dataProvider: '@TYPO3\CMS\Dashboard\Widgets\Provider\NumberOfFailedLoginsDataProvider'
|
||||
$options:
|
||||
title: 'LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.failedLogins.title'
|
||||
subtitle: 'LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.failedLogins.subtitle'
|
||||
icon: 'content-elements-login'
|
||||
refreshAvailable: true
|
||||
tags:
|
||||
- name: dashboard.widget
|
||||
identifier: 'failedLogins'
|
||||
groupNames: 'systemInfo'
|
||||
title: 'LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.failedLogins.title'
|
||||
description: 'LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.failedLogins.description'
|
||||
iconIdentifier: 'content-widget-number'
|
||||
|
||||
.. _number-widget-options:
|
||||
|
||||
Options
|
||||
-------
|
||||
|
||||
.. include:: Options/RefreshAvailable.rst.txt
|
||||
|
||||
.. confval:: title
|
||||
:type: string
|
||||
:name: number-widget-title
|
||||
:Example: `LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.failedLogins.title`
|
||||
|
||||
The main title that will be shown in the widget as an explanation of the shown number.
|
||||
You can either enter a normal string or a translation string.
|
||||
|
||||
.. confval:: subtitle
|
||||
:type: string
|
||||
:name: number-widget-subtitle
|
||||
:Example: `LLL:EXT:dashboard/Resources/Private/Language/locallang.xlf:widgets.failedLogins.subtitle`
|
||||
|
||||
The optional subtitle that will give some additional information about the number and title.
|
||||
You can either enter a normal string or a translation string.
|
||||
|
||||
.. confval:: icon
|
||||
:type: string
|
||||
:name: number-widget-icon
|
||||
|
||||
The icon-identifier of the icon that should be shown in the widget.
|
||||
You should register your icon with the :ref:`t3coreapi:icon`.
|
||||
|
||||
.. _number-widget-dependencies:
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
.. confval:: $dataProvider
|
||||
:type: :php:`\TYPO3\CMS\Dashboard\Widgets\NumberWithIconDataProviderInterface`
|
||||
:name: number-widget-dataProvider
|
||||
|
||||
This class should provide the number to show.
|
||||
This data provider needs to implement the
|
||||
:php-short:`\TYPO3\CMS\Dashboard\Widgets\NumberWithIconDataProviderInterface`.
|
||||
@@ -0,0 +1,9 @@
|
||||
.. confval:: refreshAvailable
|
||||
:type: boolean
|
||||
:default: :yaml:`false`
|
||||
:noindex:
|
||||
|
||||
Boolean value, either :yaml:`false` or :yaml:`true`.
|
||||
|
||||
Provides a refresh button to backend users to refresh the widget.
|
||||
If the option is omitted :yaml:`false` is assumed.
|
||||
@@ -0,0 +1,128 @@
|
||||
.. include:: /Includes.rst.txt
|
||||
|
||||
.. _rss-widget:
|
||||
|
||||
==========
|
||||
RSS Widget
|
||||
==========
|
||||
|
||||
.. versionchanged:: 14.0
|
||||
The RSS widget was extended to support Atom feeds (commonly used by GitHub,
|
||||
GitLab, and other platforms)
|
||||
|
||||
.. php:namespace:: TYPO3\CMS\Dashboard\Widgets
|
||||
.. php:class:: TYPO3\CMS\Dashboard\Widgets\RssWidget
|
||||
|
||||
Widgets using this class will show a list of items of the configured RSS feed
|
||||
or Atom feed.
|
||||
|
||||
The "RSS Widget" supports both RSS and Atom feeds via automatic detection.
|
||||
|
||||
Widget instances are fully configurable with custom labels, feed URLs, and
|
||||
display limits. Each widget can be configured independently, allowing multiple
|
||||
feeds of different formats on the same dashboard
|
||||
|
||||
Automatic caching ensures optimal performance with configurable cache lifetimes.
|
||||
|
||||
.. contents::
|
||||
|
||||
.. _rss-widget-usage:
|
||||
|
||||
Usage of the RSS Widget in the dashboard
|
||||
----------------------------------------
|
||||
|
||||
You can use this kind of widget to show your own RSS feed
|
||||
or Atom feed.
|
||||
|
||||
#. Navigate to the dashboard where you want to add the widget
|
||||
#. Click "Add widget" and select the RSS widget
|
||||
#. Click the settings (cog) icon to customize the widget
|
||||
#. Configure the feed URL (RSS or Atom), limit, and label as needed
|
||||
#. Save the configuration to apply changes
|
||||
|
||||
.. _rss-widget-format:
|
||||
|
||||
Feed format support
|
||||
-------------------
|
||||
|
||||
The RSS widget now supports both feed formats:
|
||||
|
||||
**RSS Feeds:**
|
||||
|
||||
Item titles
|
||||
Displayed as clickable links
|
||||
Publication dates
|
||||
Used for sorting entries (newest first)
|
||||
Descriptions
|
||||
Displayed as entry content (HTML tags stripped)
|
||||
|
||||
**Atom Feeds:**
|
||||
|
||||
Entry titles
|
||||
Displayed as clickable links
|
||||
Publication dates
|
||||
Used for sorting entries (newest first)
|
||||
Content/Summary
|
||||
Displayed as entry description (HTML tags stripped)
|
||||
Author information
|
||||
Name, email, and URL when provided in the feed
|
||||
|
||||
.. _rss-widget-example:
|
||||
|
||||
Example for RSS widget with Atom feed
|
||||
-------------------------------------
|
||||
|
||||
.. literalinclude:: _codesnippets/_rsswidget-services.yaml
|
||||
:caption: EXT:my_extension/Configuration/Services.yaml
|
||||
|
||||
.. _rss-widget-options:
|
||||
|
||||
Options
|
||||
-------
|
||||
|
||||
.. include:: Options/RefreshAvailable.rst.txt
|
||||
|
||||
The following options are available via :yaml:`services.dashboard.widget.t3news.arguments.$options`:
|
||||
|
||||
.. confval:: label
|
||||
:type: string
|
||||
:name: rss-widget-label
|
||||
|
||||
* Custom title for the widget instance
|
||||
* Optional field that defaults to the widget's default title
|
||||
|
||||
.. confval:: feedUrl
|
||||
:type: string
|
||||
:name: rss-widget-feedUrl
|
||||
|
||||
Defines the URL or file providing the RSS Feed.
|
||||
This is read by the widget in order to fetch entries to show.
|
||||
|
||||
.. confval:: lifeTime
|
||||
:type: int
|
||||
:name: rss-widget-lifeTime
|
||||
:Default: `43200`
|
||||
|
||||
Defines how long to wait, in seconds, until fetching RSS Feed again.
|
||||
|
||||
.. confval:: limit
|
||||
:type: int
|
||||
:name: rss-widget-limit
|
||||
:Default: `5`
|
||||
|
||||
Defines how many RSS items should be shown.
|
||||
|
||||
.. _rss-widget-dependencies:
|
||||
|
||||
Dependencies
|
||||
------------
|
||||
|
||||
.. confval:: $buttonProvider
|
||||
:type: :php:`\TYPO3\CMS\Dashboard\Widgets\ButtonProviderInterface`
|
||||
:name: rss-widget-buttonProvider
|
||||
|
||||
Provides an optional button to show which is used to open the source of RSS data.
|
||||
This button should be provided by a ButtonProvider that implements the interface
|
||||
:php-short:`\TYPO3\CMS\Dashboard\Widgets\ButtonProviderInterface`.
|
||||
|
||||
See :ref:`adding-buttons` for further info and configuration options.
|
||||
@@ -0,0 +1,28 @@
|
||||
services:
|
||||
|
||||
# Button provider for external link
|
||||
dashboard.buttons.github_releases:
|
||||
class: 'TYPO3\CMS\Dashboard\Widgets\Provider\ButtonProvider'
|
||||
arguments:
|
||||
$title: 'View all releases'
|
||||
$link: 'https://github.com/TYPO3/typo3/releases'
|
||||
$target: '_blank'
|
||||
|
||||
# RSS widget with Atom feed URL
|
||||
dashboard.widget.github_releases:
|
||||
class: 'TYPO3\CMS\Dashboard\Widgets\RssWidget'
|
||||
arguments:
|
||||
$buttonProvider: '@dashboard.buttons.github_releases'
|
||||
$options:
|
||||
feedUrl: 'https://github.com/TYPO3/typo3/releases.atom'
|
||||
lifeTime: 43200
|
||||
limit: 10
|
||||
tags:
|
||||
- name: dashboard.widget
|
||||
identifier: 'github_releases'
|
||||
groupNames: 'general'
|
||||
title: 'LLL:EXT:my_extension/Resources/Private/Language/locallang.xlf:widgets.github_releases.title'
|
||||
description: 'LLL:EXT:my_extension/Resources/Private/Language/locallang.xlf:widgets.github_releases.description'
|
||||
iconIdentifier: 'content-widget-rss'
|
||||
height: 'large'
|
||||
width: 'medium'
|
||||
Reference in New Issue
Block a user