diff --git a/README.md b/README.md
index b857711f..3c738025 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,3 @@
-[](https://scrutinizer-ci.com/g/Part-DB/Part-DB-symfony/?branch=master)


[](https://codecov.io/gh/Part-DB/Part-DB-server)
@@ -62,7 +61,8 @@ for the first time.
* Automatic thumbnail generation for pictures
* Use cloud providers (like Octopart, Digikey, Farnell, LCSC or TME) to automatically get part information, datasheets, and
prices for parts
-* Retrieve part information from arbitrary shop websites, using either conventional data extraction from structured metadata, or AI based data extraction
+* Retrieve part information from arbitrary shop websites, using either conventional data extraction from structured metadata, or AI based data extraction.
+A browser plugin allows to quickly submit parts from any website to your Part-DB instance, and even allows to circumvent anti-bot measures on shop websites.
* API to access Part-DB from other applications/scripts
* [Integration with KiCad](https://docs.part-db.de/usage/eda_integration.html): Use Part-DB as the central datasource for your
KiCad and see available parts from Part-DB directly inside KiCad.
diff --git a/VERSION b/VERSION
index 6ceb272e..d8b69897 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.11.1
+2.12.0
diff --git a/assets/controllers/common/dirty_form_controller.js b/assets/controllers/common/dirty_form_controller.js
new file mode 100644
index 00000000..aad2e6b0
--- /dev/null
+++ b/assets/controllers/common/dirty_form_controller.js
@@ -0,0 +1,274 @@
+/*
+ * This file is part of Part-DB (https://github.com/Part-DB/Part-DB-symfony).
+ *
+ * Copyright (C) 2019 - 2025 Jan Böhmer (https://github.com/jbtronics)
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published
+ * by the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see