本文整理汇总了PHP中rex_be_controller::pageObject方法的典型用法代码示例。如果您正苦于以下问题:PHP rex_be_controller::pageObject方法的具体用法?PHP rex_be_controller::pageObject怎么用?PHP rex_be_controller::pageObject使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类rex_be_controller
的用法示例。
在下文中一共展示了rex_be_controller::pageObject方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getCurrentPageObject
/**
* @return rex_be_page
*/
public static function getCurrentPageObject()
{
if (!self::$pageObject) {
self::$pageObject = self::getPageObject(self::getCurrentPage());
}
return self::$pageObject;
}
示例2: checkPagePermissions
public static function checkPagePermissions(rex_user $user)
{
$check = function (rex_be_page $page) use(&$check, $user) {
if (!$page->checkPermission($user)) {
return false;
}
$subpages = $page->getSubpages();
foreach ($subpages as $key => $subpage) {
if (!$check($subpage)) {
unset($subpages[$key]);
}
}
$page->setSubpages($subpages);
return true;
};
foreach (self::$pages as $key => $page) {
if (!$check($page)) {
unset(self::$pages[$key]);
}
}
self::$pageObject = null;
$page = self::getCurrentPageObject();
// --- page pruefen und benoetigte rechte checken
if (!$page) {
// --- fallback zur user startpage -> rechte checken
$page = self::getPageObject($user->getStartPage());
if (!$page) {
// --- fallback zur system startpage -> rechte checken
$page = self::getPageObject(rex::getProperty('start_page'));
if (!$page) {
// --- fallback zur profile page
$page = self::getPageObject('profile');
}
}
rex_response::setStatus(rex_response::HTTP_NOT_FOUND);
rex_response::sendRedirect($page->getHref());
}
if ($page !== ($leaf = $page->getFirstSubpagesLeaf())) {
rex_response::setStatus(rex_response::HTTP_MOVED_PERMANENTLY);
$url = $leaf->hasHref() ? $leaf->getHref() : rex_context::restore()->getUrl(['page' => $leaf->getFullKey()], false);
rex_response::sendRedirect($url);
}
}