/** * Returns a link to a page * @param Page $cObj * @return string $link */ public function getLinkToCollection(&$cObj, $appendBaseURL = false, $ignoreUrlRewriting = false) { // basically returns a link to a collection, based on whether or we have // mod_rewrite enabled, and the collection has a path $dispatcher = ''; if (!defined('URL_REWRITING_ALL') || URL_REWRITING_ALL == false) { if (!URL_REWRITING || $ignoreUrlRewriting) { $dispatcher = '/' . DISPATCHER_FILENAME; } } if ($cObj->isExternalLink() && $appendBaseURL == false) { $link = $cObj->getCollectionPointerExternalLink(); return $link; } if ($cObj->getCollectionPath() != null) { $link = DIR_REL . $dispatcher . $cObj->getCollectionPath() . '/'; } else { $_cID = $cObj->getCollectionPointerID() > 0 ? $cObj->getCollectionPointerOriginalID() : $cObj->getCollectionID(); if ($_cID > 1) { $link = DIR_REL . $dispatcher . '?cID=' . $_cID; } else { $link = DIR_REL . '/'; } } if ($appendBaseURL) { $link = BASE_URL . $link; } return $link; }
/** * Test if the current path is within the dashboard. * Optionally, a Page or path can be passed to test. * * @param Page | string $page (optional) * @return [boolean] */ public function inDashboard($page = false) { if ($page instanceof Page && !$page->isError()) { $path = $page->getCollectionPath(); } elseif (is_string($page)) { $path = $page; } else { $request = Request::get(); $path = $request->getRequestCollectionPath(); } return strpos($path, '/dashboard') === 0; }