diff --git a/net/haproxy/Makefile b/net/haproxy/Makefile
index d8b80dd3f..5054e0397 100644
--- a/net/haproxy/Makefile
+++ b/net/haproxy/Makefile
@@ -1,5 +1,5 @@
PLUGIN_NAME= haproxy
-PLUGIN_VERSION= 2.14
+PLUGIN_VERSION= 2.15
PLUGIN_COMMENT= Reliable, high performance TCP/HTTP load balancer
PLUGIN_DEPENDS= haproxy
PLUGIN_MAINTAINER= opnsense@moov.de
diff --git a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/Api/SettingsController.php b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/Api/SettingsController.php
index 6ac701921..716d3d5a8 100644
--- a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/Api/SettingsController.php
+++ b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/Api/SettingsController.php
@@ -123,9 +123,14 @@ class SettingsController extends ApiMutableModelControllerBase
return $this->delBase('servers.server', $uuid);
}
+ public function toggleServerAction($uuid, $enabled = null)
+ {
+ return $this->toggleBase('servers.server', $uuid);
+ }
+
public function searchServersAction()
{
- return $this->searchBase('servers.server', array('name', 'address', 'port', 'description'), 'name');
+ return $this->searchBase('servers.server', array('enabled', 'name', 'address', 'port', 'description'), 'name');
}
public function getHealthcheckAction($uuid = null)
diff --git a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogAction.xml b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogAction.xml
index 67b7c8919..56f12a5cd 100644
--- a/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogAction.xml
+++ b/net/haproxy/src/opnsense/mvc/app/controllers/OPNsense/HAProxy/forms/dialogAction.xml
@@ -332,6 +332,17 @@