diff --git a/.github/ISSUE_TEMPLATE/Bug_report.md b/.github/ISSUE_TEMPLATE/Bug_report.md
index f234699b23618..59e49415aeac8 100644
--- a/.github/ISSUE_TEMPLATE/Bug_report.md
+++ b/.github/ISSUE_TEMPLATE/Bug_report.md
@@ -1,23 +1,23 @@
----
-name: Bug report
-about: Create a report to help us improve
-
----
-
-### Steps to reproduce the issue
-
-
-
-### Expected result
-
-
-
-### Actual result
-
-
-
-### System information (as much as possible)
-
-
-
-### Additional comments
+---
+name: Bug report
+about: Create a report to help us improve
+
+---
+
+### Steps to reproduce the issue
+
+
+
+### Expected result
+
+
+
+### Actual result
+
+
+
+### System information (as much as possible)
+
+
+
+### Additional comments
diff --git a/.github/ISSUE_TEMPLATE/Custom.md b/.github/ISSUE_TEMPLATE/Custom.md
index 1c32a221edc25..32d197b79b619 100644
--- a/.github/ISSUE_TEMPLATE/Custom.md
+++ b/.github/ISSUE_TEMPLATE/Custom.md
@@ -1,16 +1,16 @@
----
-name: Fix this template
-about: Suggest a fix it
-
----
-
-### What needs to be fixed
-
-
-### Why this should be fixed
-
-
-### How would you fix it
-
-
-### Side Effects expected
+---
+name: Fix this template
+about: Suggest a fix it
+
+---
+
+### What needs to be fixed
+
+
+### Why this should be fixed
+
+
+### How would you fix it
+
+
+### Side Effects expected
diff --git a/.github/ISSUE_TEMPLATE/Feature_request.md b/.github/ISSUE_TEMPLATE/Feature_request.md
index e853c4610a791..3b341c4a49479 100644
--- a/.github/ISSUE_TEMPLATE/Feature_request.md
+++ b/.github/ISSUE_TEMPLATE/Feature_request.md
@@ -1,15 +1,15 @@
----
-name: Feature request
-about: Suggest an idea for this project
-
----
-
-### Is your feature request related to a problem? Please describe.
-
-
-
-### Describe the solution you'd like
-
-
-
-### Additional context
+---
+name: Feature request
+about: Suggest an idea for this project
+
+---
+
+### Is your feature request related to a problem? Please describe.
+
+
+
+### Describe the solution you'd like
+
+
+
+### Additional context
diff --git a/.github/ISSUE_TEMPLATE/Security.md b/.github/ISSUE_TEMPLATE/Security.md
index d7ff7ea26e670..0097c6f03ad1a 100644
--- a/.github/ISSUE_TEMPLATE/Security.md
+++ b/.github/ISSUE_TEMPLATE/Security.md
@@ -1,11 +1,11 @@
----
-name: Security
-about: Report a security issue
-
----
-
-Security issues should **NOT** be reported on this repository.
-
-If you believe you have found a security issue, please contact the Joomla Security Strike Team via email at security@joomla.org or through the contact form at https://developer.joomla.org/security/contact-the-team.html.
-
-Please see https://developer.joomla.org/security.html for more information on how the Joomla project responds to security issues.
+---
+name: Security
+about: Report a security issue
+
+---
+
+Security issues should **NOT** be reported on this repository.
+
+If you believe you have found a security issue, please contact the Joomla Security Strike Team via email at security@joomla.org or through the contact form at https://developer.joomla.org/security/contact-the-team.html.
+
+Please see https://developer.joomla.org/security.html for more information on how the Joomla project responds to security issues.
diff --git a/administrator/components/com_admin/sql/updates/mysql/5.0.0-2023-07-25.sql b/administrator/components/com_admin/sql/updates/mysql/5.0.0-2023-07-25.sql
index 897a721bfd927..5ab366fc8a873 100644
--- a/administrator/components/com_admin/sql/updates/mysql/5.0.0-2023-07-25.sql
+++ b/administrator/components/com_admin/sql/updates/mysql/5.0.0-2023-07-25.sql
@@ -1,28 +1,28 @@
---
--- Table structure for table `#__schemaorg`
---
-
-CREATE TABLE IF NOT EXISTS `#__schemaorg` (
- `id` int unsigned NOT NULL AUTO_INCREMENT,
- `itemId` int unsigned,
- `context` varchar(100),
- `schemaType` varchar(100),
- `schema` text,
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 DEFAULT COLLATE=utf8mb4_unicode_ci;
-
--- Add plugins to `#__extensions`
--- --------------------------------------------------------
--- The following INSERT statement has been modified to insert
--- core plugins with locked=1.
--- See https://github.com/joomla/joomla-cms/pull/45821 for details.
---
-INSERT INTO `#__extensions` (`package_id`, `name`, `type`, `element`, `folder`, `client_id`, `enabled`, `access`, `protected`, `locked`, `manifest_cache`, `params`, `custom_data`, `ordering`, `state`) VALUES
-(0, 'plg_schemaorg_blogposting', 'plugin', 'blogposting', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 1, 0),
-(0, 'plg_schemaorg_book', 'plugin', 'book', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 2, 0),
-(0, 'plg_schemaorg_event', 'plugin', 'event', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 3, 0),
-(0, 'plg_schemaorg_organization', 'plugin', 'organization', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 4, 0),
-(0, 'plg_schemaorg_person', 'plugin', 'person', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 5, 0),
-(0, 'plg_schemaorg_recipe', 'plugin', 'recipe', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 6, 0),
-(0, 'plg_schemaorg_jobposting', 'plugin', 'jobposting', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 7, 0),
-(0, 'plg_system_schemaorg', 'plugin', 'schemaorg', 'system', 0, 1, 1, 0, 1, '', '{}', '', 0, 0);
+--
+-- Table structure for table `#__schemaorg`
+--
+
+CREATE TABLE IF NOT EXISTS `#__schemaorg` (
+ `id` int unsigned NOT NULL AUTO_INCREMENT,
+ `itemId` int unsigned,
+ `context` varchar(100),
+ `schemaType` varchar(100),
+ `schema` text,
+ PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 DEFAULT COLLATE=utf8mb4_unicode_ci;
+
+-- Add plugins to `#__extensions`
+-- --------------------------------------------------------
+-- The following INSERT statement has been modified to insert
+-- core plugins with locked=1.
+-- See https://github.com/joomla/joomla-cms/pull/45821 for details.
+--
+INSERT INTO `#__extensions` (`package_id`, `name`, `type`, `element`, `folder`, `client_id`, `enabled`, `access`, `protected`, `locked`, `manifest_cache`, `params`, `custom_data`, `ordering`, `state`) VALUES
+(0, 'plg_schemaorg_blogposting', 'plugin', 'blogposting', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 1, 0),
+(0, 'plg_schemaorg_book', 'plugin', 'book', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 2, 0),
+(0, 'plg_schemaorg_event', 'plugin', 'event', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 3, 0),
+(0, 'plg_schemaorg_organization', 'plugin', 'organization', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 4, 0),
+(0, 'plg_schemaorg_person', 'plugin', 'person', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 5, 0),
+(0, 'plg_schemaorg_recipe', 'plugin', 'recipe', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 6, 0),
+(0, 'plg_schemaorg_jobposting', 'plugin', 'jobposting', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 7, 0),
+(0, 'plg_system_schemaorg', 'plugin', 'schemaorg', 'system', 0, 1, 1, 0, 1, '', '{}', '', 0, 0);
diff --git a/administrator/components/com_admin/sql/updates/mysql/5.0.0-2023-08-26.sql b/administrator/components/com_admin/sql/updates/mysql/5.0.0-2023-08-26.sql
index 61c645749148f..7434a1ad57c34 100644
--- a/administrator/components/com_admin/sql/updates/mysql/5.0.0-2023-08-26.sql
+++ b/administrator/components/com_admin/sql/updates/mysql/5.0.0-2023-08-26.sql
@@ -1,7 +1,7 @@
--- --------------------------------------------------------
--- The following INSERT statement has been modified to insert
--- this core plugin with locked=1.
--- See https://github.com/joomla/joomla-cms/pull/45821 for details.
---
-INSERT INTO `#__extensions` (`package_id`, `name`, `type`, `element`, `folder`, `client_id`, `enabled`, `access`, `protected`, `locked`, `manifest_cache`, `params`, `custom_data`, `ordering`, `state`) VALUES
-(0, 'plg_task_globalcheckin', 'plugin', 'globalcheckin', 'task', 0, 1, 1, 0, 1, '', '{}', '', 5, 0);
+-- --------------------------------------------------------
+-- The following INSERT statement has been modified to insert
+-- this core plugin with locked=1.
+-- See https://github.com/joomla/joomla-cms/pull/45821 for details.
+--
+INSERT INTO `#__extensions` (`package_id`, `name`, `type`, `element`, `folder`, `client_id`, `enabled`, `access`, `protected`, `locked`, `manifest_cache`, `params`, `custom_data`, `ordering`, `state`) VALUES
+(0, 'plg_task_globalcheckin', 'plugin', 'globalcheckin', 'task', 0, 1, 1, 0, 1, '', '{}', '', 5, 0);
diff --git a/administrator/components/com_admin/sql/updates/mysql/5.2.2-2024-09-24.sql b/administrator/components/com_admin/sql/updates/mysql/5.2.2-2024-09-24.sql
index 1592aba38893f..cccde814502b3 100644
--- a/administrator/components/com_admin/sql/updates/mysql/5.2.2-2024-09-24.sql
+++ b/administrator/components/com_admin/sql/updates/mysql/5.2.2-2024-09-24.sql
@@ -1,7 +1,7 @@
-UPDATE `#__assets` SET `title` = 'PUBLISH' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Publish';
-UPDATE `#__assets` SET `title` = 'UNPUBLISH' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Unpublish';
-UPDATE `#__assets` SET `title` = 'TRASH' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Trash';
-UPDATE `#__assets` SET `title` = 'ARCHIVE' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Archive';
-UPDATE `#__assets` SET `title` = 'FEATURE' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Feature';
-UPDATE `#__assets` SET `title` = 'UNFEATURE' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Unfeature';
-UPDATE `#__assets` SET `title` = 'PUBLISH_AND_FEATURE' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Publish & Feature';
+UPDATE `#__assets` SET `title` = 'PUBLISH' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Publish';
+UPDATE `#__assets` SET `title` = 'UNPUBLISH' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Unpublish';
+UPDATE `#__assets` SET `title` = 'TRASH' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Trash';
+UPDATE `#__assets` SET `title` = 'ARCHIVE' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Archive';
+UPDATE `#__assets` SET `title` = 'FEATURE' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Feature';
+UPDATE `#__assets` SET `title` = 'UNFEATURE' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Unfeature';
+UPDATE `#__assets` SET `title` = 'PUBLISH_AND_FEATURE' WHERE `name` LIKE 'com_content.transition.%' AND `title` = 'Publish & Feature';
diff --git a/administrator/components/com_admin/sql/updates/mysql/5.3.0-2024-12-19.sql b/administrator/components/com_admin/sql/updates/mysql/5.3.0-2024-12-19.sql
index ff569052be73d..c71f1f9b018f3 100644
--- a/administrator/components/com_admin/sql/updates/mysql/5.3.0-2024-12-19.sql
+++ b/administrator/components/com_admin/sql/updates/mysql/5.3.0-2024-12-19.sql
@@ -1,6 +1,6 @@
--- --------------------------------------------------------
--- The following statement which was introduced with 5.3.0-alpha3
--- has been disabled as it was reverted with 5.3.0-beta1.
--- See https://github.com/joomla/joomla-cms/pull/44845 for details.
---
--- ALTER TABLE `#__action_logs_users` ADD COLUMN `exclude_self` tinyint NOT NULL DEFAULT 0;
+-- --------------------------------------------------------
+-- The following statement which was introduced with 5.3.0-alpha3
+-- has been disabled as it was reverted with 5.3.0-beta1.
+-- See https://github.com/joomla/joomla-cms/pull/44845 for details.
+--
+-- ALTER TABLE `#__action_logs_users` ADD COLUMN `exclude_self` tinyint NOT NULL DEFAULT 0;
diff --git a/administrator/components/com_admin/sql/updates/mysql/5.3.0-2025-02-09.sql b/administrator/components/com_admin/sql/updates/mysql/5.3.0-2025-02-09.sql
index 55ae2550444fe..5df6e2606f65d 100644
--- a/administrator/components/com_admin/sql/updates/mysql/5.3.0-2025-02-09.sql
+++ b/administrator/components/com_admin/sql/updates/mysql/5.3.0-2025-02-09.sql
@@ -1 +1 @@
-ALTER TABLE `#__action_logs_users` DROP COLUMN `exclude_self` /** CAN FAIL **/;
+ALTER TABLE `#__action_logs_users` DROP COLUMN `exclude_self` /** CAN FAIL **/;
diff --git a/administrator/components/com_admin/sql/updates/postgresql/5.0.0-2023-07-25.sql b/administrator/components/com_admin/sql/updates/postgresql/5.0.0-2023-07-25.sql
index 851076bf0110d..5ebc1acea5a29 100644
--- a/administrator/components/com_admin/sql/updates/postgresql/5.0.0-2023-07-25.sql
+++ b/administrator/components/com_admin/sql/updates/postgresql/5.0.0-2023-07-25.sql
@@ -1,28 +1,28 @@
---
--- Table structure for table "#__schemaorg"
---
-
-CREATE TABLE IF NOT EXISTS "#__schemaorg" (
- "id" serial NOT NULL,
- "itemId" bigint,
- "context" varchar(100),
- "schemaType" varchar(100),
- "schema" text,
- PRIMARY KEY ("id")
-);
-
--- Add plugins to "#__extensions"
--- --------------------------------------------------------
--- The following INSERT statement has been modified to insert
--- core plugins with locked=1.
--- See https://github.com/joomla/joomla-cms/pull/45821 for details.
---
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state") VALUES
-(0, 'plg_schemaorg_blogposting', 'plugin', 'blogposting', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 1, 0),
-(0, 'plg_schemaorg_book', 'plugin', 'book', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 2, 0),
-(0, 'plg_schemaorg_event', 'plugin', 'event', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 3, 0),
-(0, 'plg_schemaorg_organization', 'plugin', 'organization', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 4, 0),
-(0, 'plg_schemaorg_person', 'plugin', 'person', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 5, 0),
-(0, 'plg_schemaorg_recipe', 'plugin', 'recipe', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 6, 0),
-(0, 'plg_schemaorg_jobposting', 'plugin', 'jobposting', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 7, 0),
-(0, 'plg_system_schemaorg', 'plugin', 'schemaorg', 'system', 0, 1, 1, 0, 1, '', '{}', '', 0, 0);
+--
+-- Table structure for table "#__schemaorg"
+--
+
+CREATE TABLE IF NOT EXISTS "#__schemaorg" (
+ "id" serial NOT NULL,
+ "itemId" bigint,
+ "context" varchar(100),
+ "schemaType" varchar(100),
+ "schema" text,
+ PRIMARY KEY ("id")
+);
+
+-- Add plugins to "#__extensions"
+-- --------------------------------------------------------
+-- The following INSERT statement has been modified to insert
+-- core plugins with locked=1.
+-- See https://github.com/joomla/joomla-cms/pull/45821 for details.
+--
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state") VALUES
+(0, 'plg_schemaorg_blogposting', 'plugin', 'blogposting', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 1, 0),
+(0, 'plg_schemaorg_book', 'plugin', 'book', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 2, 0),
+(0, 'plg_schemaorg_event', 'plugin', 'event', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 3, 0),
+(0, 'plg_schemaorg_organization', 'plugin', 'organization', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 4, 0),
+(0, 'plg_schemaorg_person', 'plugin', 'person', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 5, 0),
+(0, 'plg_schemaorg_recipe', 'plugin', 'recipe', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 6, 0),
+(0, 'plg_schemaorg_jobposting', 'plugin', 'jobposting', 'schemaorg', 0, 1, 1, 0, 1, '', '{}', '', 7, 0),
+(0, 'plg_system_schemaorg', 'plugin', 'schemaorg', 'system', 0, 1, 1, 0, 1, '', '{}', '', 0, 0);
diff --git a/administrator/components/com_admin/sql/updates/postgresql/5.0.0-2023-08-26.sql b/administrator/components/com_admin/sql/updates/postgresql/5.0.0-2023-08-26.sql
index 8ac88dde34fc5..d8cf81c2b2b04 100644
--- a/administrator/components/com_admin/sql/updates/postgresql/5.0.0-2023-08-26.sql
+++ b/administrator/components/com_admin/sql/updates/postgresql/5.0.0-2023-08-26.sql
@@ -1,7 +1,7 @@
--- --------------------------------------------------------
--- The following INSERT statement has been modified to insert
--- this core plugin with locked=1.
--- See https://github.com/joomla/joomla-cms/pull/45821 for details.
---
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state") VALUES
-(0, 'plg_task_globalcheckin', 'plugin', 'globalcheckin', 'task', 0, 1, 1, 0, 1, '', '{}', '', 5, 0);
+-- --------------------------------------------------------
+-- The following INSERT statement has been modified to insert
+-- this core plugin with locked=1.
+-- See https://github.com/joomla/joomla-cms/pull/45821 for details.
+--
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state") VALUES
+(0, 'plg_task_globalcheckin', 'plugin', 'globalcheckin', 'task', 0, 1, 1, 0, 1, '', '{}', '', 5, 0);
diff --git a/administrator/components/com_admin/sql/updates/postgresql/5.2.2-2024-09-24.sql b/administrator/components/com_admin/sql/updates/postgresql/5.2.2-2024-09-24.sql
index 8da7f706d58f6..d26bb993837f4 100644
--- a/administrator/components/com_admin/sql/updates/postgresql/5.2.2-2024-09-24.sql
+++ b/administrator/components/com_admin/sql/updates/postgresql/5.2.2-2024-09-24.sql
@@ -1,7 +1,7 @@
-UPDATE "#__assets" SET "title" = 'PUBLISH' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Publish';
-UPDATE "#__assets" SET "title" = 'UNPUBLISH' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Unpublish';
-UPDATE "#__assets" SET "title" = 'TRASH' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Trash';
-UPDATE "#__assets" SET "title" = 'ARCHIVE' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Archive';
-UPDATE "#__assets" SET "title" = 'FEATURE' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Feature';
-UPDATE "#__assets" SET "title" = 'UNFEATURE' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Unfeature';
-UPDATE "#__assets" SET "title" = 'PUBLISH_AND_FEATURE' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Publish & Feature';
+UPDATE "#__assets" SET "title" = 'PUBLISH' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Publish';
+UPDATE "#__assets" SET "title" = 'UNPUBLISH' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Unpublish';
+UPDATE "#__assets" SET "title" = 'TRASH' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Trash';
+UPDATE "#__assets" SET "title" = 'ARCHIVE' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Archive';
+UPDATE "#__assets" SET "title" = 'FEATURE' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Feature';
+UPDATE "#__assets" SET "title" = 'UNFEATURE' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Unfeature';
+UPDATE "#__assets" SET "title" = 'PUBLISH_AND_FEATURE' WHERE "name" LIKE 'com_content.transition.%' AND "title" = 'Publish & Feature';
diff --git a/administrator/components/com_admin/sql/updates/postgresql/5.3.0-2024-12-19.sql b/administrator/components/com_admin/sql/updates/postgresql/5.3.0-2024-12-19.sql
index 4e9852fa36751..01d0cfba7c262 100644
--- a/administrator/components/com_admin/sql/updates/postgresql/5.3.0-2024-12-19.sql
+++ b/administrator/components/com_admin/sql/updates/postgresql/5.3.0-2024-12-19.sql
@@ -1,6 +1,6 @@
--- --------------------------------------------------------
--- The following statement which was introduced with 5.3.0-alpha3
--- has been disabled as it was reverted with 5.3.0-beta1.
--- See https://github.com/joomla/joomla-cms/pull/44845 for details.
---
--- ALTER TABLE "#__action_logs_users" ADD COLUMN "exclude_self" integer DEFAULT 0 NOT NULL;
+-- --------------------------------------------------------
+-- The following statement which was introduced with 5.3.0-alpha3
+-- has been disabled as it was reverted with 5.3.0-beta1.
+-- See https://github.com/joomla/joomla-cms/pull/44845 for details.
+--
+-- ALTER TABLE "#__action_logs_users" ADD COLUMN "exclude_self" integer DEFAULT 0 NOT NULL;
diff --git a/administrator/components/com_admin/sql/updates/postgresql/5.3.0-2025-02-09.sql b/administrator/components/com_admin/sql/updates/postgresql/5.3.0-2025-02-09.sql
index b169f6a493fc2..833b3f1377059 100644
--- a/administrator/components/com_admin/sql/updates/postgresql/5.3.0-2025-02-09.sql
+++ b/administrator/components/com_admin/sql/updates/postgresql/5.3.0-2025-02-09.sql
@@ -1 +1 @@
-ALTER TABLE "#__action_logs_users" DROP COLUMN "exclude_self" /** CAN FAIL **/;
+ALTER TABLE "#__action_logs_users" DROP COLUMN "exclude_self" /** CAN FAIL **/;
diff --git a/administrator/components/com_admin/sql/updates/postgresql/5.3.4-2025-09-19.sql b/administrator/components/com_admin/sql/updates/postgresql/5.3.4-2025-09-19.sql
index 505eff0640add..2e05d806cf52f 100644
--- a/administrator/components/com_admin/sql/updates/postgresql/5.3.4-2025-09-19.sql
+++ b/administrator/components/com_admin/sql/updates/postgresql/5.3.4-2025-09-19.sql
@@ -1,8 +1,8 @@
-UPDATE "#__content_types"
-SET "field_mappings" = jsonb_set("field_mappings"::jsonb, '{common, core_created_user_id}' , '"created_by"', true)
-WHERE "type_alias" = 'com_content.article';
-
-UPDATE "#__content_types"
-SET "field_mappings" = jsonb_set("field_mappings"::jsonb, '{common, core_created_by_alias}' , '"created_by_alias"', true)
-WHERE "type_alias" = 'com_content.article';
-
+UPDATE "#__content_types"
+SET "field_mappings" = jsonb_set("field_mappings"::jsonb, '{common, core_created_user_id}' , '"created_by"', true)
+WHERE "type_alias" = 'com_content.article';
+
+UPDATE "#__content_types"
+SET "field_mappings" = jsonb_set("field_mappings"::jsonb, '{common, core_created_by_alias}' , '"created_by_alias"', true)
+WHERE "type_alias" = 'com_content.article';
+
diff --git a/administrator/components/com_admin/sql/updates/postgresql/5.4.0-2025-08-02.sql b/administrator/components/com_admin/sql/updates/postgresql/5.4.0-2025-08-02.sql
index 6dece2e9aaae0..8d8b84bc055ba 100644
--- a/administrator/components/com_admin/sql/updates/postgresql/5.4.0-2025-08-02.sql
+++ b/administrator/components/com_admin/sql/updates/postgresql/5.4.0-2025-08-02.sql
@@ -1,62 +1,62 @@
---
--- Insert back previously unlocked schemaorg and task core plugins if they have been uninstalled
---
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
-SELECT 0, 'plg_schemaorg_article', 'plugin', 'article', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
-WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'article' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
-
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
-SELECT 0, 'plg_schemaorg_blogposting', 'plugin', 'blogposting', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
-WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'blogposting' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
-
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
-SELECT 0, 'plg_schemaorg_book', 'plugin', 'book', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
-WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'book' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
-
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
-SELECT 0, 'plg_schemaorg_event', 'plugin', 'event', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
-WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'event' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
-
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
-SELECT 0, 'plg_schemaorg_jobposting', 'plugin', 'jobposting', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
-WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'jobposting' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
-
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
-SELECT 0, 'plg_schemaorg_organization', 'plugin', 'organization', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
-WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'organization' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
-
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
-SELECT 0, 'plg_schemaorg_person', 'plugin', 'person', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
-WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'person' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
-
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
-SELECT 0, 'plg_schemaorg_recipe', 'plugin', 'recipe', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
-WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'recipe' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
-
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
-SELECT 0, 'plg_schemaorg_custom', 'plugin', 'custom', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
-WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'custom' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
-
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
-SELECT 0, 'plg_system_schemaorg', 'plugin', 'schemaorg', 'system', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
-WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'schemaorg' AND e."folder" = 'system' AND e."client_id" = 0);
-
-INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
-SELECT 0, 'plg_task_globalcheckin', 'plugin', 'globalcheckin', 'task', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
-WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'globalcheckin' AND e."folder" = 'task' AND e."client_id" = 0);
-
---
--- Update present unlocked schemaorg and task core plugins
---
-UPDATE "#__extensions" SET "locked" = 1
- WHERE "type" = 'plugin' AND "folder" = 'schemaorg'
- AND "element" IN ('article', 'blogposting', 'book', 'event', 'jobposting', 'organization', 'person', 'recipe', 'custom')
- AND "locked" <> 1;
-
-UPDATE "#__extensions" SET "locked" = 1
- WHERE "type" = 'plugin' AND "element" = 'schemaorg' AND "folder" = 'system'
- AND "locked" <> 1;
-
-UPDATE "#__extensions" SET "locked" = 1
- WHERE "type" = 'plugin' AND "element" = 'globalcheckin' AND "folder" = 'task'
- AND "locked" <> 1;
+--
+-- Insert back previously unlocked schemaorg and task core plugins if they have been uninstalled
+--
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
+SELECT 0, 'plg_schemaorg_article', 'plugin', 'article', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
+WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'article' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
+
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
+SELECT 0, 'plg_schemaorg_blogposting', 'plugin', 'blogposting', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
+WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'blogposting' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
+
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
+SELECT 0, 'plg_schemaorg_book', 'plugin', 'book', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
+WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'book' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
+
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
+SELECT 0, 'plg_schemaorg_event', 'plugin', 'event', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
+WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'event' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
+
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
+SELECT 0, 'plg_schemaorg_jobposting', 'plugin', 'jobposting', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
+WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'jobposting' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
+
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
+SELECT 0, 'plg_schemaorg_organization', 'plugin', 'organization', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
+WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'organization' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
+
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
+SELECT 0, 'plg_schemaorg_person', 'plugin', 'person', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
+WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'person' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
+
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
+SELECT 0, 'plg_schemaorg_recipe', 'plugin', 'recipe', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
+WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'recipe' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
+
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
+SELECT 0, 'plg_schemaorg_custom', 'plugin', 'custom', 'schemaorg', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
+WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'custom' AND e."folder" = 'schemaorg' AND e."client_id" = 0);
+
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
+SELECT 0, 'plg_system_schemaorg', 'plugin', 'schemaorg', 'system', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
+WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'schemaorg' AND e."folder" = 'system' AND e."client_id" = 0);
+
+INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "locked", "manifest_cache", "params", "custom_data", "ordering", "state")
+SELECT 0, 'plg_task_globalcheckin', 'plugin', 'globalcheckin', 'task', 0, 0, 1, 0, 1, '', '{}', '', -1, 0
+WHERE NOT EXISTS (SELECT * FROM "#__extensions" e WHERE e."type" = 'plugin' AND e."element" = 'globalcheckin' AND e."folder" = 'task' AND e."client_id" = 0);
+
+--
+-- Update present unlocked schemaorg and task core plugins
+--
+UPDATE "#__extensions" SET "locked" = 1
+ WHERE "type" = 'plugin' AND "folder" = 'schemaorg'
+ AND "element" IN ('article', 'blogposting', 'book', 'event', 'jobposting', 'organization', 'person', 'recipe', 'custom')
+ AND "locked" <> 1;
+
+UPDATE "#__extensions" SET "locked" = 1
+ WHERE "type" = 'plugin' AND "element" = 'schemaorg' AND "folder" = 'system'
+ AND "locked" <> 1;
+
+UPDATE "#__extensions" SET "locked" = 1
+ WHERE "type" = 'plugin' AND "element" = 'globalcheckin' AND "folder" = 'task'
+ AND "locked" <> 1;
diff --git a/administrator/components/com_admin/sql/updates/postgresql/5.4.0-2025-10-07.sql b/administrator/components/com_admin/sql/updates/postgresql/5.4.0-2025-10-07.sql
index 23407ee5a6a5a..c416183248cde 100644
--- a/administrator/components/com_admin/sql/updates/postgresql/5.4.0-2025-10-07.sql
+++ b/administrator/components/com_admin/sql/updates/postgresql/5.4.0-2025-10-07.sql
@@ -1,2 +1,2 @@
--- Remove wrong unique constraint from "#__ucm_content" table
-ALTER TABLE "#__ucm_content" DROP CONSTRAINT "#__ucm_content_idx_type_alias_item_id" /** CAN FAIL **/;
+-- Remove wrong unique constraint from "#__ucm_content" table
+ALTER TABLE "#__ucm_content" DROP CONSTRAINT "#__ucm_content_idx_type_alias_item_id" /** CAN FAIL **/;
diff --git a/administrator/components/com_config/access.xml b/administrator/components/com_config/access.xml
index 0a12848edb398..0a4fcffc3f0ce 100644
--- a/administrator/components/com_config/access.xml
+++ b/administrator/components/com_config/access.xml
@@ -1,6 +1,6 @@
-
-
-
-
+
+
+
+
diff --git a/administrator/language/en-GB/plg_schemaorg_blogposting.sys.ini b/administrator/language/en-GB/plg_schemaorg_blogposting.sys.ini
index 726e91e09b2cf..3428abed1b4bd 100644
--- a/administrator/language/en-GB/plg_schemaorg_blogposting.sys.ini
+++ b/administrator/language/en-GB/plg_schemaorg_blogposting.sys.ini
@@ -1,7 +1,7 @@
-; Joomla! Project
-; (C) 2023 Open Source Matters, Inc.
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-PLG_SCHEMAORG_BLOGPOSTING="Schema.org - BlogPosting"
-PLG_SCHEMAORG_BLOGPOSTING_XML_DESCRIPTION="Adds Blog as a new schema type in existing schemas."
+; Joomla! Project
+; (C) 2023 Open Source Matters, Inc.
+; License GNU General Public License version 2 or later; see LICENSE.txt
+; Note : All ini files need to be saved as UTF-8
+
+PLG_SCHEMAORG_BLOGPOSTING="Schema.org - BlogPosting"
+PLG_SCHEMAORG_BLOGPOSTING_XML_DESCRIPTION="Adds Blog as a new schema type in existing schemas."
diff --git a/administrator/language/en-GB/plg_schemaorg_book.sys.ini b/administrator/language/en-GB/plg_schemaorg_book.sys.ini
index e20dd6144b9d7..b396b066aa729 100644
--- a/administrator/language/en-GB/plg_schemaorg_book.sys.ini
+++ b/administrator/language/en-GB/plg_schemaorg_book.sys.ini
@@ -1,7 +1,7 @@
-; Joomla! Project
-; (C) 2023 Open Source Matters, Inc.
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-PLG_SCHEMAORG_BOOK="Schema.org - Book"
-PLG_SCHEMAORG_BOOK_XML_DESCRIPTION="Adds Book as a new schema type in existing schemas."
+; Joomla! Project
+; (C) 2023 Open Source Matters, Inc.
+; License GNU General Public License version 2 or later; see LICENSE.txt
+; Note : All ini files need to be saved as UTF-8
+
+PLG_SCHEMAORG_BOOK="Schema.org - Book"
+PLG_SCHEMAORG_BOOK_XML_DESCRIPTION="Adds Book as a new schema type in existing schemas."
diff --git a/administrator/language/en-GB/plg_schemaorg_custom.sys.ini b/administrator/language/en-GB/plg_schemaorg_custom.sys.ini
index 69568f944c3ef..039a58228b56a 100644
--- a/administrator/language/en-GB/plg_schemaorg_custom.sys.ini
+++ b/administrator/language/en-GB/plg_schemaorg_custom.sys.ini
@@ -1,8 +1,8 @@
-; Joomla! Project
-; (C) 2024 Open Source Matters, Inc.
-
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-PLG_SCHEMAORG_CUSTOM="Schema.org - Custom"
-PLG_SCHEMAORG_CUSTOM_XML_DESCRIPTION="Adds a custom field to add any schema type."
+; Joomla! Project
+; (C) 2024 Open Source Matters, Inc.
+
+; License GNU General Public License version 2 or later; see LICENSE.txt
+; Note : All ini files need to be saved as UTF-8
+
+PLG_SCHEMAORG_CUSTOM="Schema.org - Custom"
+PLG_SCHEMAORG_CUSTOM_XML_DESCRIPTION="Adds a custom field to add any schema type."
diff --git a/administrator/language/en-GB/plg_schemaorg_event.sys.ini b/administrator/language/en-GB/plg_schemaorg_event.sys.ini
index 22e1fb9e318e7..7912e33d44eb2 100644
--- a/administrator/language/en-GB/plg_schemaorg_event.sys.ini
+++ b/administrator/language/en-GB/plg_schemaorg_event.sys.ini
@@ -1,7 +1,7 @@
-; Joomla! Project
-; (C) 2023 Open Source Matters, Inc.
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-PLG_SCHEMAORG_EVENT="Schema.org - Event"
-PLG_SCHEMAORG_EVENT_XML_DESCRIPTION="Adds Event as a new schema type in existing schemas."
+; Joomla! Project
+; (C) 2023 Open Source Matters, Inc.
+; License GNU General Public License version 2 or later; see LICENSE.txt
+; Note : All ini files need to be saved as UTF-8
+
+PLG_SCHEMAORG_EVENT="Schema.org - Event"
+PLG_SCHEMAORG_EVENT_XML_DESCRIPTION="Adds Event as a new schema type in existing schemas."
diff --git a/administrator/language/en-GB/plg_schemaorg_jobposting.sys.ini b/administrator/language/en-GB/plg_schemaorg_jobposting.sys.ini
index 38667b694fdcf..19ff526b0a91d 100644
--- a/administrator/language/en-GB/plg_schemaorg_jobposting.sys.ini
+++ b/administrator/language/en-GB/plg_schemaorg_jobposting.sys.ini
@@ -1,7 +1,7 @@
-; Joomla! Project
-; (C) 2023 Open Source Matters, Inc.
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-PLG_SCHEMAORG_JOBPOSTING="Schema.org - JobPosting"
-PLG_SCHEMAORG_JOBPOSTING_XML_DESCRIPTION="Adds JobPosting as a new schema type in existing schemas."
+; Joomla! Project
+; (C) 2023 Open Source Matters, Inc.
+; License GNU General Public License version 2 or later; see LICENSE.txt
+; Note : All ini files need to be saved as UTF-8
+
+PLG_SCHEMAORG_JOBPOSTING="Schema.org - JobPosting"
+PLG_SCHEMAORG_JOBPOSTING_XML_DESCRIPTION="Adds JobPosting as a new schema type in existing schemas."
diff --git a/administrator/language/en-GB/plg_schemaorg_organization.sys.ini b/administrator/language/en-GB/plg_schemaorg_organization.sys.ini
index 58e04cf03884f..81ab2d2fe95d3 100644
--- a/administrator/language/en-GB/plg_schemaorg_organization.sys.ini
+++ b/administrator/language/en-GB/plg_schemaorg_organization.sys.ini
@@ -1,7 +1,7 @@
-; Joomla! Project
-; (C) 2023 Open Source Matters, Inc.
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-PLG_SCHEMAORG_ORGANIZATION="Schema.org - Organization"
-PLG_SCHEMAORG_ORGANIZATION_XML_DESCRIPTION="Adds Organization as a new schema type in existing schemas"
+; Joomla! Project
+; (C) 2023 Open Source Matters, Inc.
+; License GNU General Public License version 2 or later; see LICENSE.txt
+; Note : All ini files need to be saved as UTF-8
+
+PLG_SCHEMAORG_ORGANIZATION="Schema.org - Organization"
+PLG_SCHEMAORG_ORGANIZATION_XML_DESCRIPTION="Adds Organization as a new schema type in existing schemas"
diff --git a/administrator/language/en-GB/plg_schemaorg_person.sys.ini b/administrator/language/en-GB/plg_schemaorg_person.sys.ini
index cae501dd38b9f..40ecc82eeb2e4 100644
--- a/administrator/language/en-GB/plg_schemaorg_person.sys.ini
+++ b/administrator/language/en-GB/plg_schemaorg_person.sys.ini
@@ -1,7 +1,7 @@
-; Joomla! Project
-; (C) 2023 Open Source Matters, Inc.
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-PLG_SCHEMAORG_PERSON="Schema.org - Person"
-PLG_SCHEMAORG_PERSON_XML_DESCRIPTION="Adds Person as a new schema type in existing schemas."
+; Joomla! Project
+; (C) 2023 Open Source Matters, Inc.
+; License GNU General Public License version 2 or later; see LICENSE.txt
+; Note : All ini files need to be saved as UTF-8
+
+PLG_SCHEMAORG_PERSON="Schema.org - Person"
+PLG_SCHEMAORG_PERSON_XML_DESCRIPTION="Adds Person as a new schema type in existing schemas."
diff --git a/administrator/language/en-GB/plg_schemaorg_recipe.sys.ini b/administrator/language/en-GB/plg_schemaorg_recipe.sys.ini
index afc6bf3960614..44390962eeb03 100644
--- a/administrator/language/en-GB/plg_schemaorg_recipe.sys.ini
+++ b/administrator/language/en-GB/plg_schemaorg_recipe.sys.ini
@@ -1,7 +1,7 @@
-; Joomla! Project
-; (C) 2023 Open Source Matters, Inc.
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-PLG_SCHEMAORG_RECIPE="Schema.org - Recipe"
-PLG_SCHEMAORG_RECIPE_XML_DESCRIPTION="Adds Recipe as a new schema type in existing schemas."
+; Joomla! Project
+; (C) 2023 Open Source Matters, Inc.
+; License GNU General Public License version 2 or later; see LICENSE.txt
+; Note : All ini files need to be saved as UTF-8
+
+PLG_SCHEMAORG_RECIPE="Schema.org - Recipe"
+PLG_SCHEMAORG_RECIPE_XML_DESCRIPTION="Adds Recipe as a new schema type in existing schemas."
diff --git a/administrator/language/en-GB/plg_system_schemaorg.sys.ini b/administrator/language/en-GB/plg_system_schemaorg.sys.ini
index 2c08ee3667e6f..040c27668e170 100644
--- a/administrator/language/en-GB/plg_system_schemaorg.sys.ini
+++ b/administrator/language/en-GB/plg_system_schemaorg.sys.ini
@@ -1,7 +1,7 @@
-; Joomla! Project
-; (C) 2023 Open Source Matters, Inc.
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-PLG_SYSTEM_SCHEMAORG="System - Schema.org"
-PLG_SYSTEM_SCHEMAORG_XML_DESCRIPTION="Adds custom form field in article view and then injects that data in JSON+LD format in the head tag of that particular article."
+; Joomla! Project
+; (C) 2023 Open Source Matters, Inc.
+; License GNU General Public License version 2 or later; see LICENSE.txt
+; Note : All ini files need to be saved as UTF-8
+
+PLG_SYSTEM_SCHEMAORG="System - Schema.org"
+PLG_SYSTEM_SCHEMAORG_XML_DESCRIPTION="Adds custom form field in article view and then injects that data in JSON+LD format in the head tag of that particular article."
diff --git a/build/media_source/system/images/template_thumb.svg b/build/media_source/system/images/template_thumb.svg
index 80f936b80b87c..f2e0ebc7a2471 100644
--- a/build/media_source/system/images/template_thumb.svg
+++ b/build/media_source/system/images/template_thumb.svg
@@ -1,5 +1,5 @@
-
-
-
+
+
+
diff --git a/build/media_source/templates/administrator/atum/scss/vendor/bootstrap/_collapse.scss b/build/media_source/templates/administrator/atum/scss/vendor/bootstrap/_collapse.scss
index 516e1f748f696..e450e76107902 100644
--- a/build/media_source/templates/administrator/atum/scss/vendor/bootstrap/_collapse.scss
+++ b/build/media_source/templates/administrator/atum/scss/vendor/bootstrap/_collapse.scss
@@ -1,28 +1,28 @@
-// Collapse
-
-.accordion {
-
- .card-header {
- display: block;
- font-size: $h5-font-size;
- font-weight: $font-weight-bold;
- line-height: $headings-line-height;
- }
-
- /**
- * TODO: This seems fairly specifically built for the menu types view and might be better scoped to
- * that view rather than just being overridden for everything.
- */
- .list-group-item {
- --list-group-color: var(--link-color);
- --list-group-bg: var(--white-offset);
- }
-
- @if $enable-dark-mode {
- @include color-mode(dark) {
- .list-group-item {
- --list-group-bg: var(--gray-800);
- }
- }
- }
-}
+// Collapse
+
+.accordion {
+
+ .card-header {
+ display: block;
+ font-size: $h5-font-size;
+ font-weight: $font-weight-bold;
+ line-height: $headings-line-height;
+ }
+
+ /**
+ * TODO: This seems fairly specifically built for the menu types view and might be better scoped to
+ * that view rather than just being overridden for everything.
+ */
+ .list-group-item {
+ --list-group-color: var(--link-color);
+ --list-group-bg: var(--white-offset);
+ }
+
+ @if $enable-dark-mode {
+ @include color-mode(dark) {
+ .list-group-item {
+ --list-group-bg: var(--gray-800);
+ }
+ }
+ }
+}
diff --git a/language/en-GB/tpl_cassiopeia.sys.ini b/language/en-GB/tpl_cassiopeia.sys.ini
index 42e58e4a3bd90..bb88a99ae06ab 100644
--- a/language/en-GB/tpl_cassiopeia.sys.ini
+++ b/language/en-GB/tpl_cassiopeia.sys.ini
@@ -1,28 +1,28 @@
-; Joomla! Project
-; (C) 2017 Open Source Matters, Inc.
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-CASSIOPEIA="Cassiopeia Site template"
-TPL_CASSIOPEIA_MOD_CUSTOM_LAYOUT_BANNER="Banner"
-TPL_CASSIOPEIA_MOD_MENU_LAYOUT_COLLAPSE-METISMENU="Collapsible Dropdown"
-TPL_CASSIOPEIA_MOD_MENU_LAYOUT_DROPDOWN-METISMENU="Dropdown"
-TPL_CASSIOPEIA_POSITION_BANNER="Banner"
-TPL_CASSIOPEIA_POSITION_BELOW-TOP="Below Top"
-TPL_CASSIOPEIA_POSITION_BOTTOM-A="Bottom-a"
-TPL_CASSIOPEIA_POSITION_BOTTOM-B="Bottom-b"
-TPL_CASSIOPEIA_POSITION_BREADCRUMBS="Breadcrumbs"
-TPL_CASSIOPEIA_POSITION_DEBUG="Debug"
-TPL_CASSIOPEIA_POSITION_ERROR-403="Error 403"
-TPL_CASSIOPEIA_POSITION_ERROR-404="Error 404"
-TPL_CASSIOPEIA_POSITION_FOOTER="Footer"
-TPL_CASSIOPEIA_POSITION_MAIN-BOTTOM="Main-bottom"
-TPL_CASSIOPEIA_POSITION_MAIN-TOP="Main-top"
-TPL_CASSIOPEIA_POSITION_MENU="Menu"
-TPL_CASSIOPEIA_POSITION_SEARCH="Search"
-TPL_CASSIOPEIA_POSITION_SIDEBAR-LEFT="Sidebar-left"
-TPL_CASSIOPEIA_POSITION_SIDEBAR-RIGHT="Sidebar-right"
-TPL_CASSIOPEIA_POSITION_TOP-A="Top-a"
-TPL_CASSIOPEIA_POSITION_TOP-B="Top-b"
-TPL_CASSIOPEIA_POSITION_TOPBAR="Top Bar"
-TPL_CASSIOPEIA_XML_DESCRIPTION="Continuing the space theme (Solarflare from 1.0, Milkyway from 1.5 and Protostar from 3.0), Cassiopeia is the Joomla 4 and Joomla 5 site template based on Bootstrap 5."
+; Joomla! Project
+; (C) 2017 Open Source Matters, Inc.
+; License GNU General Public License version 2 or later; see LICENSE.txt
+; Note : All ini files need to be saved as UTF-8
+
+CASSIOPEIA="Cassiopeia Site template"
+TPL_CASSIOPEIA_MOD_CUSTOM_LAYOUT_BANNER="Banner"
+TPL_CASSIOPEIA_MOD_MENU_LAYOUT_COLLAPSE-METISMENU="Collapsible Dropdown"
+TPL_CASSIOPEIA_MOD_MENU_LAYOUT_DROPDOWN-METISMENU="Dropdown"
+TPL_CASSIOPEIA_POSITION_BANNER="Banner"
+TPL_CASSIOPEIA_POSITION_BELOW-TOP="Below Top"
+TPL_CASSIOPEIA_POSITION_BOTTOM-A="Bottom-a"
+TPL_CASSIOPEIA_POSITION_BOTTOM-B="Bottom-b"
+TPL_CASSIOPEIA_POSITION_BREADCRUMBS="Breadcrumbs"
+TPL_CASSIOPEIA_POSITION_DEBUG="Debug"
+TPL_CASSIOPEIA_POSITION_ERROR-403="Error 403"
+TPL_CASSIOPEIA_POSITION_ERROR-404="Error 404"
+TPL_CASSIOPEIA_POSITION_FOOTER="Footer"
+TPL_CASSIOPEIA_POSITION_MAIN-BOTTOM="Main-bottom"
+TPL_CASSIOPEIA_POSITION_MAIN-TOP="Main-top"
+TPL_CASSIOPEIA_POSITION_MENU="Menu"
+TPL_CASSIOPEIA_POSITION_SEARCH="Search"
+TPL_CASSIOPEIA_POSITION_SIDEBAR-LEFT="Sidebar-left"
+TPL_CASSIOPEIA_POSITION_SIDEBAR-RIGHT="Sidebar-right"
+TPL_CASSIOPEIA_POSITION_TOP-A="Top-a"
+TPL_CASSIOPEIA_POSITION_TOP-B="Top-b"
+TPL_CASSIOPEIA_POSITION_TOPBAR="Top Bar"
+TPL_CASSIOPEIA_XML_DESCRIPTION="Continuing the space theme (Solarflare from 1.0, Milkyway from 1.5 and Protostar from 3.0), Cassiopeia is the Joomla 4 and Joomla 5 site template based on Bootstrap 5."
diff --git a/libraries/src/Form/CachingFormFactory.php b/libraries/src/Form/CachingFormFactory.php
new file mode 100644
index 0000000000000..1a4ca6e95356c
--- /dev/null
+++ b/libraries/src/Form/CachingFormFactory.php
@@ -0,0 +1,92 @@
+cache[$name]))
+ {
+ return $this->cache[$name];
+ }
+
+ $form = parent::createForm($name, $options);
+
+ if ($data)
+ {
+ if (str_starts_with($data, '<'))
+ {
+ if (!$form->load($data, $replace, $xpath))
+ {
+ throw new RuntimeException(sprintf('%s() could not load XML form data', __METHOD__));
+ }
+ }
+ else
+ {
+ if (!$form->loadFile($data, $replace, $xpath))
+ {
+ throw new RuntimeException(sprintf('%s() could not load form file: %s', __METHOD__, $data));
+ }
+ }
+ }
+
+ $this->cache[$name] = $form;
+
+ return $form;
+ }
+
+ /**
+ * Clears the cached forms.
+ *
+ * @return void
+ */
+ public function clearCache(): void
+ {
+ $this->cache = [];
+ }
+}
diff --git a/libraries/src/Form/FormFactory.php b/libraries/src/Form/FormFactory.php
index d2494736a3539..4fc6b11c5ce93 100644
--- a/libraries/src/Form/FormFactory.php
+++ b/libraries/src/Form/FormFactory.php
@@ -22,24 +22,24 @@
*/
class FormFactory implements FormFactoryInterface
{
- use DatabaseAwareTrait;
-
- /**
- * Method to get an instance of a form.
- *
- * @param string $name The name of the form.
- * @param array $options An array of form options.
- *
- * @return Form
- *
- * @since 4.0.0
- */
- public function createForm(string $name, array $options = []): Form
- {
- $form = new Form($name, $options);
-
- $form->setDatabase($this->getDatabase());
-
- return $form;
- }
+ use DatabaseAwareTrait;
+
+ /**
+ * Method to get an instance of a form.
+ *
+ * @param string $name The name of the form.
+ * @param array $options An array of form options.
+ *
+ * @return Form
+ *
+ * @since 4.0.0
+ */
+ public function createForm(string $name, array $options = []): Form
+ {
+ $form = new Form($name, $options);
+
+ $form->setDatabase($this->getDatabase());
+
+ return $form;
+ }
}
diff --git a/libraries/src/User/CachingUserFactory.php b/libraries/src/User/CachingUserFactory.php
new file mode 100644
index 0000000000000..9df056bb2e60a
--- /dev/null
+++ b/libraries/src/User/CachingUserFactory.php
@@ -0,0 +1,82 @@
+cache[$id]))
+ {
+ return $this->cache[$id];
+ }
+
+ $user = parent::loadUserById($id);
+ $this->cache[$id] = $user;
+
+ return $user;
+ }
+
+ /**
+ * Get a cached instance of a user by username.
+ *
+ * @param string $username The username
+ *
+ * @return User
+ *
+ * @since 6.0.0
+ */
+ public function loadUserByUsername(string $username): User
+ {
+ foreach ($this->cache as $user)
+ {
+ if ($user->username === $username)
+ {
+ return $user;
+ }
+ }
+
+ return parent::loadUserByUsername($username);
+ }
+
+ /**
+ * Clear the cached users.
+ *
+ * @return void
+ */
+ public function clearCache(): void
+ {
+ $this->cache = [];
+ }
+}
diff --git a/libraries/src/User/UserFactory.php b/libraries/src/User/UserFactory.php
index 5669d560f3e38..ad4c0b5553967 100644
--- a/libraries/src/User/UserFactory.php
+++ b/libraries/src/User/UserFactory.php
@@ -22,57 +22,57 @@
*/
class UserFactory implements UserFactoryInterface
{
- /**
- * The database.
- *
- * @var DatabaseInterface
- */
- private $db;
+ /**
+ * The database.
+ *
+ * @var DatabaseInterface
+ */
+ private $db;
- /**
- * UserFactory constructor.
- *
- * @param DatabaseInterface $db The database
- */
- public function __construct(DatabaseInterface $db)
- {
- $this->db = $db;
- }
+ /**
+ * UserFactory constructor.
+ *
+ * @param DatabaseInterface $db The database
+ */
+ public function __construct(DatabaseInterface $db)
+ {
+ $this->db = $db;
+ }
- /**
- * Method to get an instance of a user for the given id.
- *
- * @param int $id The id
- *
- * @return User
- *
- * @since 4.0.0
- */
- public function loadUserById(int $id): User
- {
- return new User($id);
- }
+ /**
+ * Method to get an instance of a user for the given id.
+ *
+ * @param int $id The id
+ *
+ * @return User
+ *
+ * @since 4.0.0
+ */
+ public function loadUserById(int $id): User
+ {
+ return new User($id);
+ }
- /**
- * Method to get an instance of a user for the given username.
- *
- * @param string $username The username
- *
- * @return User
- *
- * @since 4.0.0
- */
- public function loadUserByUsername(string $username): User
- {
- // Initialise some variables
- $query = $this->db->getQuery(true)
- ->select($this->db->quoteName('id'))
- ->from($this->db->quoteName('#__users'))
- ->where($this->db->quoteName('username') . ' = :username')
- ->bind(':username', $username)
- ->setLimit(1);
- $this->db->setQuery($query);
+ /**
+ * Method to get an instance of a user for the given username.
+ *
+ * @param string $username The username
+ *
+ * @return User
+ *
+ * @since 4.0.0
+ */
+ public function loadUserByUsername(string $username): User
+ {
+ // Initialise some variables
+ $query = $this->db->getQuery(true)
+ ->select($this->db->quoteName('id'))
+ ->from($this->db->quoteName('#__users'))
+ ->where($this->db->quoteName('username') . ' = :username')
+ ->bind(':username', $username)
+ ->setLimit(1);
+ $this->db->setQuery($query);
- return $this->loadUserById((int) $this->db->loadResult());
- }
+ return $this->loadUserById((int) $this->db->loadResult());
+ }
}
diff --git a/plugins/schemaorg/blogposting/blogposting.xml b/plugins/schemaorg/blogposting/blogposting.xml
index 036227ab4fc42..8b9d3fb7f638f 100644
--- a/plugins/schemaorg/blogposting/blogposting.xml
+++ b/plugins/schemaorg/blogposting/blogposting.xml
@@ -1,43 +1,43 @@
-
-
- plg_schemaorg_blogposting
- Joomla! Project
- 2023-07
- (C) 2023 Open Source Matters, Inc.
- GNU General Public License version 2 or later; see LICENSE.txt
- admin@joomla.org
- www.joomla.org
- 5.0.0
- PLG_SCHEMAORG_BLOGPOSTING_XML_DESCRIPTION
- Joomla\Plugin\Schemaorg\BlogPosting
-
- services
- src
-
-
- language/en-GB/plg_schemaorg_blogposting.ini
- language/en-GB/plg_schemaorg_blogposting.sys.ini
-
-
-
-
-
-
-
+
+
+ plg_schemaorg_blogposting
+ Joomla! Project
+ 2023-07
+ (C) 2023 Open Source Matters, Inc.
+ GNU General Public License version 2 or later; see LICENSE.txt
+ admin@joomla.org
+ www.joomla.org
+ 5.0.0
+ PLG_SCHEMAORG_BLOGPOSTING_XML_DESCRIPTION
+ Joomla\Plugin\Schemaorg\BlogPosting
+
+ services
+ src
+
+
+ language/en-GB/plg_schemaorg_blogposting.ini
+ language/en-GB/plg_schemaorg_blogposting.sys.ini
+
+
+
+
+
+
+
diff --git a/plugins/schemaorg/book/book.xml b/plugins/schemaorg/book/book.xml
index f519b7b4040c1..b6e949fb70d06 100644
--- a/plugins/schemaorg/book/book.xml
+++ b/plugins/schemaorg/book/book.xml
@@ -1,43 +1,43 @@
-
-
- plg_schemaorg_book
- Joomla! Project
- 2023-07
- (C) 2023 Open Source Matters, Inc.
- GNU General Public License version 2 or later; see LICENSE.txt
- admin@joomla.org
- www.joomla.org
- 5.0.0
- PLG_SCHEMAORG_BOOK_XML_DESCRIPTION
- Joomla\Plugin\Schemaorg\Book
-
- services
- src
-
-
- language/en-GB/plg_schemaorg_book.ini
- language/en-GB/plg_schemaorg_book.sys.ini
-
-
-
-
-
-
-
+
+
+ plg_schemaorg_book
+ Joomla! Project
+ 2023-07
+ (C) 2023 Open Source Matters, Inc.
+ GNU General Public License version 2 or later; see LICENSE.txt
+ admin@joomla.org
+ www.joomla.org
+ 5.0.0
+ PLG_SCHEMAORG_BOOK_XML_DESCRIPTION
+ Joomla\Plugin\Schemaorg\Book
+
+ services
+ src
+
+
+ language/en-GB/plg_schemaorg_book.ini
+ language/en-GB/plg_schemaorg_book.sys.ini
+
+
+
+
+
+
+
diff --git a/plugins/system/schemaorg/forms/schemaorg.xml b/plugins/system/schemaorg/forms/schemaorg.xml
index 332f2970a1547..0afac8ae0319d 100644
--- a/plugins/system/schemaorg/forms/schemaorg.xml
+++ b/plugins/system/schemaorg/forms/schemaorg.xml
@@ -1,34 +1,34 @@
-
-
+
+