/** * Creates a new page url selector * @param string $prefix The prefix * @param string $label The selector label * @param Page $page The pre-selected page */ function __construct($prefix, $label = '', Page $page = null) { $this->disabledPageIDs = array(); $this->prefix = $prefix; $this->label = $label; $this->site = null; $this->pageField = Input::Hidden($prefix . 'Page'); if ($page && $page->Exists()) { $this->name = $page->GetName(); $this->pageField->SetValue($page->GetID()); } }
/** * Creates a new page url selector * @param string $prefix The prefix * @param string $label The selector label * @param PageUrl $pageUrl The pre-selected page url */ function __construct($prefix, $label = '', PageUrl $pageUrl = null) { $this->disabledPageIDs = array(); $this->prefix = $prefix; $this->label = $label; $this->site = null; $this->pageField = Input::Hidden($prefix . 'Page'); $this->paramsField = Input::Hidden($prefix . 'Params'); $this->fragmentField = Input::Hidden($prefix . 'Fragment'); $this->serializer = new ArrayLinesSerializer(); if ($pageUrl && $pageUrl->Exists()) { $this->url = FrontendRouter::Url($pageUrl); $this->pageField->SetValue($pageUrl->GetPage()->GetID()); $list = new PageParamListProvider($pageUrl); $this->paramsField->SetValue($this->serializer->ArrayToLines($list->ToArray())); $this->fragmentField->SetValue($pageUrl->GetFragment()); } }