diff --git a/src/opnsense/mvc/app/models/OPNsense/CaptivePortal/CaptivePortal.php b/src/opnsense/mvc/app/models/OPNsense/CaptivePortal/CaptivePortal.php index 11cfe3efe..8673f9d08 100644 --- a/src/opnsense/mvc/app/models/OPNsense/CaptivePortal/CaptivePortal.php +++ b/src/opnsense/mvc/app/models/OPNsense/CaptivePortal/CaptivePortal.php @@ -64,4 +64,22 @@ class CaptivePortal extends BaseModel } return false; } + + /** + * find ttemplate by name or return a new object + * @param $name template name + * @return mixed + */ + public function getTemplateByName($name) + { + foreach ($this->templates->template->__items as $template) { + if ((string)$template->name === $name) { + return $template; + } + } + $newItem = $this->templates->template->Add(); + $newItem->name = $name; + $newItem->fileid = uniqid(); + return $newItem; + } } diff --git a/src/opnsense/mvc/app/models/OPNsense/CaptivePortal/CaptivePortal.xml b/src/opnsense/mvc/app/models/OPNsense/CaptivePortal/CaptivePortal.xml index a4a3f4bca..51a0e6b21 100644 --- a/src/opnsense/mvc/app/models/OPNsense/CaptivePortal/CaptivePortal.xml +++ b/src/opnsense/mvc/app/models/OPNsense/CaptivePortal/CaptivePortal.xml @@ -74,5 +74,24 @@ + + +