diff --git a/scripts/pi-hole/php/savesettings.php b/scripts/pi-hole/php/savesettings.php
index 3599b92c..c1226fd5 100644
--- a/scripts/pi-hole/php/savesettings.php
+++ b/scripts/pi-hole/php/savesettings.php
@@ -452,6 +452,19 @@ function readAdlists()
{
exec('sudo pihole -a -c');
}
+ $adminemail = trim($_POST["adminemail"]);
+ if(strlen($adminemail) == 0 || !isset($adminemail))
+ {
+ $adminemail = 'noadminemail';
+ }
+ elseif(!filter_var($adminemail, FILTER_VALIDATE_EMAIL))
+ {
+ $error .= "Administrator email address (".htmlspecialchars($adminemail).") is invalid!
";
+ }
+ else
+ {
+ exec('sudo pihole -a -e '.$adminemail);
+ }
if(isset($_POST["boxedlayout"]))
{
exec('sudo pihole -a layout boxed');
diff --git a/settings.php b/settings.php
index 85aa9dfa..3e64ec79 100644
--- a/settings.php
+++ b/settings.php
@@ -880,6 +880,13 @@ if (isset($_GET['tab']) && in_array($_GET['tab'], array("sysadmin", "blocklists"
} else {
$temperatureunit = "C";
}
+
+ // Administrator email address
+ if (isset($setupVars["ADMIN_EMAIL"])) {
+ $adminemail = $setupVars["ADMIN_EMAIL"];
+ } else {
+ $adminemail = "";
+ }
?>