Add utility function to Page cms object

This commit is contained in:
Sam Georges 2014-07-11 18:50:29 +10:00
parent 223f3025f0
commit acce6eb902
1 changed files with 26 additions and 1 deletions

View File

@ -15,7 +15,7 @@ class Page extends CmsCompoundObject
{
protected $settingsValidationRules = [
'title' => 'required',
'url' => ['required', 'regex:/^\/[a-z0-9\/\:_\-\*\[\]\+\?\|]*$/i']
'url' => ['required', 'regex:/^\/[a-z0-9\/\:_\-\*\[\]\+\?\|]*$/i']
];
/**
@ -72,4 +72,29 @@ class Page extends CmsCompoundObject
return $result;
}
/**
* Helper that returns a nicer list of pages for use in dropdowns.
* @return array
*/
public static function getNameList()
{
$result = [];
$pages = self::sortBy('baseFileName')->all();
foreach ($pages as $page) {
$result[$page->baseFileName] = $page->title.' ('.$page->baseFileName.')';
}
return $result;
}
/**
* Helper that makes a URL for a page in the active theme.
* @return string
*/
public static function url($page, $params = [])
{
$controller = new Controller;
return $controller->pageUrl($page, $params);
}
}