private function SaveType() { $type = PageType::ByValue($this->Value('Type')); $this->page->SetType((string) $type); $target = $this->page->GetRedirectTarget(); switch ($type) { case PageType::Normal(): case PageType::NotFound(): if ($target) { $this->page->SetRedirectTarget(null); $target->Delete(); } break; case PageType::RedirectPermanent(): case PageType::RedirectTemporary(): $this->page->SetRedirectTarget($this->selector->Save($target)); } }