本文整理匯總了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);
}
}