private function renderSitemap() { $objCms = PCMS_Client::getInstance(); $objCms->setLanguage(ContentLanguage::getDefault()); $strOutput = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; $strOutput .= "<urlset xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\">\n"; //*** Get a collection of Languages. $objLanguages = $objCms->getLanguages(); foreach ($objLanguages as $objLanguage) { //*** Alway show the RootUri of the language $strURL = $objLanguage->default ? Request::getRootURI() : Request::getRootURI() . "/language/" . $objLanguage->getAbbr(); $strOutput .= " <url>\n"; $strOutput .= " <loc>{$strURL}</loc>\n"; $strOutput .= " </url>\n"; //*** Render individual page elements. $objElements = $objCms->getPageElements($objLanguage->getId()); foreach ($objElements as $objElement) { $strURL = Request::getRootURI(); $strURL .= !$objLanguage->default ? $objElement->getLink(TRUE, "", $objLanguage->getAbbr()) : $objElement->getLink(TRUE); $strOutput .= " <url>\n"; $strOutput .= " <loc>" . $strURL . "</loc>\n"; $strOutput .= " <lastmod>" . Date::fromMysql("%Y-%m-%d", $objElement->getElement()->getModified()) . "</lastmod>\n"; $strOutput .= " </url>\n"; } } $strOutput .= "</urlset>\n"; return $strOutput; }
/** * Generate a download link for an exisiting file in the cache. * * @param string $strCachedName The name of the file in the cache * @param string $strFilename File name * @return string The generated download link */ public static function generateDownloadLinkForExisting($strCachedName, $strFilename, $strDownloadUrl = null) { // Save in session $_SESSION["documents"][$strCachedName] = $strFilename; if (is_null($strDownloadUrl)) { $objRewrite = Rewrite::getInstance(); $strDownloadUrl = $objRewrite->getUrl(SECTION_DOCUMENT, CMD_DOWNLOAD, null, null, SUB_SECTION_EMPTY, array("t" => $strCachedName)); } else { $strDownloadUrl .= "/t/" . Rewrite::encode($strCachedName); } $strReturn = Request::getRootURI() . $strDownloadUrl; return $strReturn; }
function exportPage($objPageElement, $objLanguage) { global $objZip; $objCms = PCMS_Client::getInstance(); $strDirname = !$objLanguage->default ? dirname($objPageElement->getLink(true, "", $objLanguage->getAbbr())) : dirname($objPageElement->getLink()); $strBasename = basename($objPageElement->getLink()); if ($strDirname == "/") { $strDirname = ""; } $strFile = file_get_contents(Request::getRootURI() . $objPageElement->getLink()); $objZip->addFile('', $strDirname . "/" . $strBasename . ".html", '', fixLinks($strFile)); logExport($strDirname . "/" . $strBasename); }