diff --git a/application/RaspberryDisplay/RaspberryDisplayController.php b/application/RaspberryDisplay/RaspberryDisplayController.php index fbdfaff0d..0d39046f7 100644 --- a/application/RaspberryDisplay/RaspberryDisplayController.php +++ b/application/RaspberryDisplay/RaspberryDisplayController.php @@ -101,12 +101,22 @@ class RaspberryDisplayController extends mfBaseController { $display = RaspberryDisplayModel::get((int)$this->request->id); if (!$display) return false; + $oldUrl = $display->display_url; + $oldHdmiPort = (int)$display->hdmi_port; + foreach (['display_label', 'hostname', 'ip_address', 'display_url', 'group_name', 'group_order', 'monitor_size', 'hdmi_port', 'agent_port', 'custom_style'] as $field) { if (isset($this->request->$field)) $display->$field = $this->request->$field; } $display->edit_by = $this->me->id; $display->edit = time(); RaspberryDisplayModel::save($display); + + $newUrl = $display->display_url; + if ($newUrl !== $oldUrl && !empty($newUrl)) { + NocDisplayAgent::fromDisplay(['ip_address' => $display->ip_address, 'agent_port' => $display->agent_port]) + ->setUrl((int)$display->hdmi_port, $newUrl); + } + return true; }