Osama Sayegh
3a4f4abdc9
DEV: Support category, float, group and tag inputs for objects theme setting ( #26113 )
...
Continue from https://github.com/discourse/discourse/pull/25673 and https://github.com/discourse/discourse/pull/25811 .
This PR adds support for category, float, group and tag types for schema theme settings.
2024-03-13 09:08:50 +08:00
Krzysztof Kotlarek
de00c9a3d3
EXPERIMENTAL: restructure admin sidebar menu ( #26047 )
...
New admin sidebar menu
2024-03-13 10:18:08 +11:00
Alan Guo Xiang Tan
5b8652965a
DEV: Add save button to editing typed objects theme setting route ( #26133 )
...
Why this change?
This is still a work in progress but allows objects type theme setting
to be saved.
2024-03-13 06:52:46 +08:00
Alan Guo Xiang Tan
8d4f405da4
DEV: Allow typed objects theme settings to be saved via settings editor ( #26100 )
...
Why this change?
On the `/admin/customize/themes/<:id>` route, we allow admins to edit
all settings via a settings editor. Prior to this change, trying to edit
and save a typed objects theme settings will result in an error on the
server.
2024-03-11 08:42:12 +08:00
Alan Guo Xiang Tan
7d8dd0d8e3
UX: Show loading spinner while loading dependencies for ace-editor ( #26099 )
...
Why this change?
On a slow network, using the `AceEditor` component will result in a blob
of text being shown first before being swapped out with the `ace.js`
editor after it has completed loading.
There is also a problem when setting the theme for the editor which
would result in a "flash" as reported in
https://github.com/ajaxorg/ace/issues/3286 . To avoid this, we need to
load the theme js file before displaying the editor.
What does this change do?
1. Adds a loading spinner and set the `div.ace` with a `.hidden` class.
2. Once all the relevant scripts and initialization is done, we will
then remove the loading spinner and remove `div.ace`.
2024-03-11 06:56:17 +08:00
dependabot[bot]
d96b7b14ce
Build(deps-dev): Bump ember-cli from 5.6.0 to 5.7.0 ( #26039 )
...
* Build(deps-dev): Bump ember-cli from 5.6.0 to 5.7.0
Bumps [ember-cli](https://github.com/ember-cli/ember-cli ) from 5.6.0 to 5.7.0.
- [Release notes](https://github.com/ember-cli/ember-cli/releases )
- [Changelog](https://github.com/ember-cli/ember-cli/blob/master/CHANGELOG.md )
- [Commits](https://github.com/ember-cli/ember-cli/compare/v5.6.0...v5.7.0 )
---
updated-dependencies:
- dependency-name: ember-cli
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* Enable no-implicit-route-model
See: https://github.com/ember-cli/ember-new-output/compare/v5.6.0...v5.7.0
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jarek Radosz <jradosz@gmail.com>
2024-03-06 21:05:09 +01:00
Jarek Radosz
5d90332cfc
DEV: Use the "new" service import ( #26059 )
2024-03-06 18:05:11 +01:00
Jarek Radosz
11067c73d0
DEV: Use fn+mut instead of action+mut ( #26057 )
...
One step closer to removing all `action` helper usage
2024-03-06 18:05:03 +01:00
Alan Guo Xiang Tan
94b09f3331
DEV: Open theme settings objects editor from admin customize theme page ( #26006 )
...
Why this change?
The `/admin/customize/themes/:id/schema/name` route is a work in
progress but we want to be able to start navigating to it from the
`/admin/customize/themes/:id` route.
What does this change do?
1. Move `adminCustomizeThemes.schema` to a child route of
`adminCustomizeThemes.show`. This is because we need the model
from the parent route and if it isn't a child route we end up
having to load the theme model again from the server.
1. Add the `objects_schema` attribute to `ThemeSettingsSerializer`
1. Refactor `SiteSettingComponent` to be able to render a button
so that we don't have to hardcode the button rendering into the
`SiteSettings::String` component
2024-03-06 08:24:29 +08:00
David Taylor
ccf0b61fe3
DEV: Convert truth-helpers to a v2 addon and simplify imports ( #26029 )
...
No need for a build step here, since the helpers are all simple js.
2024-03-05 15:24:47 +00:00
Jeff Wong
00e76efb7c
FEATURE: site setting to include post in penalty messages ( #26025 )
...
Adds a site setting to include a post's content in penalty message.
When silencing/suspending a user from a post, or a reviewable with
a post, adds an option to include a post's content in the email
message by default.
2024-03-04 18:35:21 -08:00
Jarek Radosz
5dc95eaacc
DEV: Update ExpandingTextArea component ( #25890 )
2024-03-01 17:20:15 +01:00
Jarek Radosz
5c54fbfdb1
DEV: Fix random typos ( #25957 )
...
February 2024 edition
2024-02-29 12:24:37 +01:00
Kris
8c22831672
UX: update appropriate btn-flat
instances to btn-transparent
( #25945 )
...
With the adjustments of `btn-transparent` in https://github.com/discourse/discourse/pull/24666 , there are more buttons that could use this class instead of `btn-flat`. This mostly relates to `x` close buttons, but also includes composer and chat toggles.
The primary difference between these styles is that `btn-transparent` never has a background, where `btn-flat` may have a hover or focus background.
2024-02-29 11:47:07 +01:00
Osama Sayegh
8bec0ca083
FEATURE: Support boolean, enum and integer fields for schema theme settings ( #25933 )
...
Continue from https://github.com/discourse/discourse/pull/25673 and https://github.com/discourse/discourse/pull/25811 .
This commit adds support for boolean, integer and enum types for schema theme settings.
2024-02-29 11:11:32 +03:00
dependabot[bot]
9acb4f55f2
Build(deps): Bump the babel group with 2 updates ( #25939 )
...
* Build(deps): Bump the babel group with 2 updates
Bumps the babel group with 2 updates: [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core ) and [@babel/standalone](https://github.com/babel/babel/tree/HEAD/packages/babel-standalone ).
Updates `@babel/core` from 7.23.9 to 7.24.0
- [Release notes](https://github.com/babel/babel/releases )
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md )
- [Commits](https://github.com/babel/babel/commits/v7.24.0/packages/babel-core )
Updates `@babel/standalone` from 7.23.10 to 7.24.0
- [Release notes](https://github.com/babel/babel/releases )
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md )
- [Commits](https://github.com/babel/babel/commits/v7.24.0/packages/babel-standalone )
---
updated-dependencies:
- dependency-name: "@babel/core"
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: babel
- dependency-name: "@babel/standalone"
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: babel
...
Signed-off-by: dependabot[bot] <support@github.com>
* Clean up accidentally duplicated deps
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jarek Radosz <jradosz@gmail.com>
2024-02-29 00:27:17 +01:00
Jarek Radosz
36a9b5d0fa
DEV: Introduce a helper for handling events ( #25433 )
...
Instead of
```hbs
{{on "input" (action this.foo value="target.value")}}
{{on "input" (action (mut this.bar) value="target.value")}}
```
you can use:
```hbs
{{on "input" (with-event-value this.foo)}}
{{on "input" (with-event-value (fn (mut this.bar)))}}
```
or in gjs:
```gjs
import { fn } from "@ember/helper";
import { on } from "@ember/modifier";
import withEventValue from "discourse/helpers/with-event-value";
…
{{on "input" (withEventValue (fn (mut this.bar)))}}
```
2024-02-28 14:00:53 +01:00
Krzysztof Kotlarek
9e9673fac5
DEV: save/restore the previous sidebar panel state ( #25899 )
...
In this PR, the admin panel remembers the previous state and restores it when the admin panel is deactivated.
https://github.com/discourse/discourse/pull/25781
However, it would be better to have a more generic solution. When the panel is changed, the previous state is saved in the sidebarState. When a user returns to the specific panel, a previously remembered state is restored.
2024-02-28 12:33:59 +11:00
Jarek Radosz
299b323d9a
DEV: Update ember-cli to 5.6.0 ( #25886 )
2024-02-27 10:48:30 +01:00
Osama Sayegh
3f4537eeb5
FEATURE: Schema theme setting input fields ( #25811 )
...
Continue from https://github.com/discourse/discourse/pull/25673 .
This commit starts building the inputs pane of schema theme settings. At the moment only string fields are rendered, but more types will be added in future commits.
2024-02-27 01:07:32 +03:00
Blake Erickson
52d357c1d1
DEV: Add loading spinner to install theme modal ( #25888 )
...
This commit adds a loading spinner when installing a theme as sometimes
installing a theme can take quite a bit of time this way we have some
indication that things are still working as the theme is being
installed.
2024-02-26 14:14:21 -07:00
dependabot[bot]
03af9a796e
Build(deps): Bump ember-resolver from 10.1.1 to 11.0.1 ( #25865 )
...
Bumps [ember-resolver](https://github.com/ember-cli/ember-resolver ) from 10.1.1 to 11.0.1.
- [Release notes](https://github.com/ember-cli/ember-resolver/releases )
- [Changelog](https://github.com/ember-cli/ember-resolver/blob/main/CHANGELOG.md )
- [Commits](https://github.com/ember-cli/ember-resolver/compare/v10.1.1...v11.0.1 )
---
updated-dependencies:
- dependency-name: ember-resolver
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-26 15:15:51 +01:00
dependabot[bot]
a0a18b5b4a
Build(deps-dev): Bump @ember/optional-features from 2.0.0 to 2.1.0 in /app/assets/javascripts ( #25799 )
...
* Build(deps-dev): Bump @ember/optional-features
Bumps [@ember/optional-features](https://github.com/emberjs/ember-optional-features ) from 2.0.0 to 2.1.0.
- [Release notes](https://github.com/emberjs/ember-optional-features/releases )
- [Changelog](https://github.com/emberjs/ember-optional-features/blob/master/CHANGELOG.md )
- [Commits](https://github.com/emberjs/ember-optional-features/commits )
---
updated-dependencies:
- dependency-name: "@ember/optional-features"
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* Update lockfiles for ember version flag
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: discoursebuild <build@discourse.org>
2024-02-21 23:17:02 +01:00
Martin Brennan
ac92cc526d
FIX: Admin sidebar was hiding chat/forum toggle button ( #25781 )
...
We have separated and combined modes for sidebar panels.
Separated means the panels show only their own sections,
combined means sections from all panels are shown.
The admin sidebar only shows its own panels, so it must set
the mode to separated; however when we navigate to chat or
home we must revert to the initial mode setttings.
2024-02-21 14:44:09 +10:00
Osama Sayegh
866193e8f3
FEATURE: Back button for schema theme settings ( #25743 )
...
Continue from https://github.com/discourse/discourse/pull/25673 .
This commit adds a back button to the navigation tree of the schema.
2024-02-20 13:43:18 +03:00
dependabot[bot]
385401d75c
Build(deps-dev): Bump webpack from 5.90.2 to 5.90.3 in /app/assets/javascripts ( #25746 )
...
* Build(deps-dev): Bump webpack in /app/assets/javascripts
Bumps [webpack](https://github.com/webpack/webpack ) from 5.90.2 to 5.90.3.
- [Release notes](https://github.com/webpack/webpack/releases )
- [Commits](https://github.com/webpack/webpack/compare/v5.90.2...v5.90.3 )
---
updated-dependencies:
- dependency-name: webpack
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* Update lockfiles for ember version flag
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: discoursebuild <build@discourse.org>
2024-02-19 23:13:34 +01:00
Krzysztof Kotlarek
fc9648578b
DEV: Make more group-based settings client: false ( #25735 )
...
Affects the following settings:
delete_all_posts_and_topics_allowed_groups
experimental_new_new_view_groups
enable_experimental_admin_ui_groups
custom_summarization_allowed_groups
pm_tags_allowed_for_groups
chat_allowed_groups
direct_message_enabled_groups
chat_message_flag_allowed_groups
This turns off client: true for these group-based settings,
because there is no guarantee that the current user gets all
their group memberships serialized to the client. Better to check
server-side first.
2024-02-19 13:25:59 +11:00
Osama Sayegh
9329a5395a
FEATURE: Groundwork for schema theme settings UI ( #25673 )
...
This commit is the first of a series of commits that will allow themes to define complex settings types by declaring a schema of the setting structure that Discourse core will use to build a UI for the setting automatically. We implement the navigation logic and support for multiple levels of nesting in this commit and we'll continue building this new system gradually in future commits.
Internal topic: t/116870.
2024-02-16 09:31:49 +03:00
dependabot[bot]
fe0a36eee0
Build(deps-dev): Bump webpack from 5.90.1 to 5.90.2 in /app/assets/javascripts ( #25710 )
...
* Build(deps-dev): Bump webpack in /app/assets/javascripts
Bumps [webpack](https://github.com/webpack/webpack ) from 5.90.1 to 5.90.2.
- [Release notes](https://github.com/webpack/webpack/releases )
- [Commits](https://github.com/webpack/webpack/compare/v5.90.1...v5.90.2 )
---
updated-dependencies:
- dependency-name: webpack
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* Update lockfiles for ember version flag
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: discoursebuild <build@discourse.org>
2024-02-15 22:33:45 +01:00
Kris
9374baab93
UX: clean up some label and form inconsistencies, reduce excess bolding ( #25701 )
2024-02-15 11:27:51 -05:00
Daniel Waterworth
250ce25ca3
DEV: Clarify site-setting category-list concurrency protection ( #25614 )
2024-02-09 10:14:00 -06:00
Martin Brennan
3cc73cfd1e
FIX: Always preload admin plugin list for admin in sidebar ( #25606 )
...
When we show the links to installed plugins in the admin
sidebar (for plugins that have custom admin routes) we were
previously only doing this if you opened /admin, not if you
navigated there from the main forum. We should just always
preload this data if the user is admin.
This commit also changes `admin_sidebar_enabled_groups` to
not be sent to the client as part of ongoing efforts to
not check groups on the client, since not all a user's groups
may be serialized.
2024-02-09 12:52:22 +10:00
Daniel Waterworth
3da302716c
DEV: Coalesce category ids to numbers ( #25598 )
...
Otherwise, if you pass in strings, strange things happen.
2024-02-07 17:19:58 -06:00
Daniel Waterworth
67229a7739
DEV: switch to asyncFindByIds in category-list site-setting component ( #25592 )
...
We no longer want to rely on preloading every single category, which
means we need to do http requests for categories when we need them.
2024-02-07 12:07:32 -06:00
Sam
090252bc39
FIX: Visits for TL3 actually means "Posts Read: unique days" ( #25468 )
...
This fixes a quirk in the TL3 report where we were calling the column "visits" but it actually meant "Posts Read: unique days"
2024-02-07 07:46:42 +11:00
dependabot[bot]
fba894d049
Build(deps): Bump ember-template-imports from 4.0.0 to 4.1.0 in /app/assets/javascripts ( #25572 )
...
* Build(deps): Bump ember-template-imports in /app/assets/javascripts
Bumps [ember-template-imports](https://github.com/ember-template-imports/ember-template-imports ) from 4.0.0 to 4.1.0.
- [Release notes](https://github.com/ember-template-imports/ember-template-imports/releases )
- [Changelog](https://github.com/ember-template-imports/ember-template-imports/blob/master/CHANGELOG.md )
- [Commits](https://github.com/ember-template-imports/ember-template-imports/compare/v4.0.0...v4.1.0 )
---
updated-dependencies:
- dependency-name: ember-template-imports
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* Update lockfiles for ember version flag
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: discoursebuild <build@discourse.org>
2024-02-06 00:11:40 +01:00
Daniel Waterworth
8561fd78d8
DEV: Convert site-settings/category-list to glimmer component ( #25571 )
2024-02-05 14:23:08 -06:00
Daniel Waterworth
a20bf843fc
DEV: Switch site-settings category-list component to gjs ( #25569 )
2024-02-05 12:03:35 -06:00
Gerhard Schlager
dd5ca6cc4c
FEATURE: Permalinks for users ( #25552 )
2024-02-05 17:31:31 +01:00
dependabot[bot]
859473aecb
Build(deps-dev): Bump webpack from 5.90.0 to 5.90.1 in /app/assets/javascripts ( #25529 )
...
* Build(deps-dev): Bump webpack in /app/assets/javascripts
Bumps [webpack](https://github.com/webpack/webpack ) from 5.90.0 to 5.90.1.
- [Release notes](https://github.com/webpack/webpack/releases )
- [Commits](https://github.com/webpack/webpack/compare/v5.90.0...v5.90.1 )
---
updated-dependencies:
- dependency-name: webpack
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
* Update lockfiles for ember version flag
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: discoursebuild <build@discourse.org>
2024-02-01 23:08:03 +01:00
Jarek Radosz
58be138e75
FIX: Site-setting integer input type ( #25485 )
...
Regressed in f2e1363f67
2024-01-30 20:25:48 +01:00
Kris
6b185f8655
PERF: eliminate some slow CSS selectors ( #25392 )
2024-01-26 13:10:45 -05:00
Jarek Radosz
f2e1363f67
FIX: Deprecate NumberField, use <input> instead ( #25434 )
...
* Revert "FEATURE: Use native number fields for integer inputs (#24984 )"
This reverts commit 8fce890ead
.
* FIX: Deprecate NumberField, use <input> instead
This reverts #24984 as it introduced regressions (behavioral and visual) and instead it deprecates the NumberField component and replaces its uses in core with native `<input>` elements.
2024-01-26 17:56:07 +01:00
dependabot[bot]
d022b85a52
Build(deps): Bump the babel group in /app/assets/javascripts with 2 updates ( #25428 )
...
* Build(deps): Bump the babel group
Bumps the babel group in /app/assets/javascripts with 2 updates: [@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core ) and [@babel/standalone](https://github.com/babel/babel/tree/HEAD/packages/babel-standalone ).
Updates `@babel/core` from 7.23.7 to 7.23.9
- [Release notes](https://github.com/babel/babel/releases )
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md )
- [Commits](https://github.com/babel/babel/commits/v7.23.9/packages/babel-core )
Updates `@babel/standalone` from 7.23.8 to 7.23.9
- [Release notes](https://github.com/babel/babel/releases )
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md )
- [Commits](https://github.com/babel/babel/commits/v7.23.9/packages/babel-standalone )
---
updated-dependencies:
- dependency-name: "@babel/core"
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: babel
- dependency-name: "@babel/standalone"
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: babel
...
Signed-off-by: dependabot[bot] <support@github.com>
* Update lockfiles for ember version flag
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: discoursebuild <build@discourse.org>
2024-01-25 22:45:19 +01:00
David Taylor
241eaadc26
FIX: Computed property override error for webhook.categories ( #25418 )
2024-01-25 12:25:02 +00:00
Martin Brennan
57ededb770
DEV: Move admin sidebar out of initializer ( #25396 )
...
Having the admin sidebar code in an instance initializer is not
ideal because:
* It runs during app boot which may not even be necessary based on site settings
* It makes it hard for plugins to register additional links in time without resorting
to before/after initializer gymnastics
This PR moves the admin sidebar into a lib and creates the panel
in custom-sections.js, then the sections and links are loaded when
the main sidebar component is rendered, which leaves plugins enough
time to add additional links in an initializer.
---------
Co-authored-by: David Taylor <david@taylorhq.com>
2024-01-25 10:45:14 +10:00
dependabot[bot]
0855804d72
Build(deps-dev): Bump webpack from 5.89.0 to 5.90.0 in /app/assets/javascripts ( #25409 )
...
* Build(deps-dev): Bump webpack in /app/assets/javascripts
Bumps [webpack](https://github.com/webpack/webpack ) from 5.89.0 to 5.90.0.
- [Release notes](https://github.com/webpack/webpack/releases )
- [Commits](https://github.com/webpack/webpack/compare/v5.89.0...v5.90.0 )
---
updated-dependencies:
- dependency-name: webpack
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
* Update lockfiles for ember version flag
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: discoursebuild <build@discourse.org>
2024-01-24 22:35:36 +01:00
Jarek Radosz
57c4b6bd50
DEV: Update js linting setup ( #25365 )
2024-01-24 15:30:03 +01:00
David Taylor
4074763efb
DEV: Switch to bundled Ember types ( #25370 )
...
Since Ember 5.1, types are included in the ember-source package (see https://blog.emberjs.com/stable-typescript-types-in-ember-5-1/ )
2024-01-22 20:32:37 +00:00
dependabot[bot]
76350c9498
Build(deps-dev): Bump the types group in /app/assets/javascripts with 1 update ( #25351 )
...
* Build(deps-dev): Bump the types group
Bumps the types group in /app/assets/javascripts with 1 update: [@types/ember__routing](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ember__routing ).
Updates `@types/ember__routing` from 4.0.20 to 4.0.21
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Changelog](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/ember__routing/history-location.d.ts )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ember__routing )
---
updated-dependencies:
- dependency-name: "@types/ember__routing"
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: types
...
Signed-off-by: dependabot[bot] <support@github.com>
* Update lockfiles for ember version flag
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: discoursebuild <build@discourse.org>
2024-01-22 11:54:06 +01:00