public function getValue($intLanguageId = 0) { $strReturn = ""; if ($intLanguageId == 0) { $intLanguageId = ContentLanguage::getDefault()->getId(); } $objValue = $this->getValueObject($intLanguageId); if (is_object($objValue)) { /* Perform any format conversions before saving the value to * the database. */ $objTemplateField = TemplateField::selectByPK($this->templateFieldId); switch ($objTemplateField->getTypeId()) { case FIELD_TYPE_DATE: //*** Convert the date to the predefined format. $strReturn = Date::fromMysql($objTemplateField->getValueByName("tfv_field_format")->getValue(), $objValue->getValue()); break; case FIELD_TYPE_LARGETEXT: //*** Correct internal anchors. $intElementId = Element::selectByPk($this->getElementId())->getPageId(); $strReturn = str_replace("href=\"#", "href=\"?eid={$intElementId}#", $objValue->getValue()); break; case FIELD_TYPE_FILE: case FIELD_TYPE_IMAGE: //*** Split the current filename from the raw value. $arrReturn = array(); $arrFileTemp = explode("\n", $objValue->getValue()); foreach ($arrFileTemp as $fileValue) { if (!empty($fileValue)) { $arrTemp = explode(":", $fileValue); $objTemp = array(); $objTemp["original"] = $arrTemp[0]; $objTemp["src"] = count($arrTemp) > 1 ? $arrTemp[1] : $arrTemp[0]; $objTemp["media_id"] = count($arrTemp) > 2 ? $arrTemp[2] : 0; $objTemp["alt"] = count($arrTemp) > 3 ? $arrTemp[3] : ""; array_push($arrReturn, $objTemp); } } $strReturn = $arrReturn; break; case FIELD_TYPE_BOOLEAN: //*** Make it a true boolean. if ($objValue->getValue() == "true") { $strReturn = true; } else { $strReturn = false; } break; default: $strReturn = $objValue->getValue(); break; } $this->rawValue = $objValue->getValue(); } return $strReturn; }
public function find($strQuery, $blnExact = false) { global $_CONF; //*** Set query property. $objReturn = new SearchResults(); $objReturn->setQuery($strQuery); $strQuery = str_replace("*", "%", $strQuery); //*** Convert query to stem. $arrWords = array_values($this->stemPhrase($strQuery)); $intWordCount = count($arrWords); //*** Query does not validate. if (!$arrWords) { return $objReturn; } //*** Set query property. $objReturn->setQuery($strQuery); $strSql = sprintf("SELECT DISTINCT pcms_search_index.elementId, COUNT(pcms_search_index.id) as word,\n\t\t\t\t\tSUM(pcms_search_index.count) as count FROM pcms_search_index, pcms_element WHERE\n\t\t\t\t\tpcms_search_index.elementId = pcms_element.id AND\n\t\t\t\t\tpcms_element.accountId = '%s' AND ", quote_smart($_CONF['app']['account']->getId())); $strSql .= '(' . implode(' OR ', array_fill(0, $intWordCount, '?')) . ') GROUP BY pcms_search_index.elementId'; //*** AND query? if ($blnExact) { $strSql .= ' HAVING word = ' . $intWordCount; } $strSql .= ' ORDER BY word DESC, count DESC'; //*** Inject the search words into the query. $arrSql = explode('?', $strSql); $strTempSql = ""; for ($i = 0; $i < $intWordCount; $i++) { $equal = stripos($arrWords[$i], "%") !== false ? "LIKE" : "="; $strTempSql .= $arrSql[$i] . "word {$equal} '" . $arrWords[$i] . "'"; } $strTempSql .= $arrSql[$i]; //*** Query the database. $objSearchIndexes = SearchIndex::select($strTempSql); foreach ($objSearchIndexes as $objSearchIndex) { $objElement = Element::selectByPk($objSearchIndex->getElementId()); if (!isset($intMaxWeight)) { $intMaxWeight = $objSearchIndex->getCount(); } if (!isset($intMaxCount)) { $intMaxCount = $objSearchIndex->getWord(); } $intRatio = round(100 / ($intMaxWeight * $intMaxCount) * $objSearchIndex->getCount() * $objSearchIndex->getWord()); $objSearchResult = new SearchResult(); $objSearchResult->id = $objSearchIndex->getElementId(); $objSearchResult->name = $objElement->getName(); $objSearchResult->value = $objElement->getDescription(); $objSearchResult->ratio = $intRatio; $objReturn->addObject($objSearchResult); } return $objReturn; }
private function prepareValue() { if (empty($this->rawvalue) && !is_array($this->rawvalue) && !empty($this->value)) { $this->rawvalue = $this->value; switch ($this->typeid) { case FIELD_TYPE_DATE: //*** Convert the date to the predefined format. $objTemplateField = TemplateField::selectByPK($this->templatefieldid); $this->value = Date::fromMysql($objTemplateField->getValueByName("tfv_field_format")->getValue(), $this->value); break; case FIELD_TYPE_LARGETEXT: //*** Correct internal anchors. $intElementId = Element::selectByPk($this->elementid)->getPageId(); $this->value = str_replace("href=\"#", "href=\"?eid={$intElementId}#", $this->value); break; case FIELD_TYPE_FILE: case FIELD_TYPE_IMAGE: //*** Split the current filename from the raw value. $arrReturn = array(); $arrFileTemp = explode("\n", $this->value); foreach ($arrFileTemp as $fileValue) { if (!empty($fileValue)) { $arrTemp = explode(":", $fileValue); $objTemp = array(); $objTemp["original"] = $arrTemp[0]; $objTemp["src"] = count($arrTemp) > 1 ? $arrTemp[1] : $arrTemp[0]; $objTemp["media_id"] = count($arrTemp) > 2 ? $arrTemp[2] : 0; $objTemp["alt"] = count($arrTemp) > 3 ? $arrTemp[3] : ""; array_push($arrReturn, $objTemp); } } $this->value = $arrReturn; break; case FIELD_TYPE_BOOLEAN: //*** Make it a true boolean. if ($this->value == "true") { $this->value = TRUE; } else { $this->value = FALSE; } break; case FIELD_TYPE_SIMPLETEXT: $this->value = nl2br($this->value); break; } } if (empty($this->value)) { switch ($this->typeid) { case FIELD_TYPE_FILE: case FIELD_TYPE_IMAGE: $this->value = array(); break; } } }
private static function buildXmlNodes($intElmntId = 0, $strType = "elements", $strAction = "list", $childId = 0, $strChildren = "") { global $objLang, $objLiveUser; $strReturn = ""; switch ($strType) { case "elements-ckeditor": case "elements": $objElements = Elements::getFromParent($intElmntId); foreach ($objElements as $objElement) { if ($objLiveUser->checkRightLevel(PUNCHCMS_ELEMENTS_VIEW, $objElement->getPermissions()->getUserId(), $objElement->getPermissions()->getGroupId())) { $objChildren = $objElement->getElements(); $isPage = $objElement->isPage() ? 'font-weight:bold;' : ''; if (is_object($objChildren) && $objChildren->count() > 0 && $objElement->getTypeId() != ELM_TYPE_FOLDER) { if (!$objElement->getActive()) { $strReturn .= "<item text=\"" . self::escapeForXml($objElement->getName()) . "\" id=\"{$objElement->getId()}\" style=\"{$isPage}color:#999\" im0=\"elementClosedInactive.gif\" im1=\"elementOpenInactive.gif\" im2=\"elementClosedInactive.gif\" child=\"1\">"; } else { $strReturn .= "<item text=\"" . self::escapeForXml($objElement->getName()) . "\" id=\"{$objElement->getId()}\" style=\"{$isPage}\" im0=\"elementClosed.gif\" im1=\"elementOpen.gif\" im2=\"elementClosed.gif\" child=\"1\">"; } if ($childId == $objElement->getId()) { $strReturn .= $strChildren; } $strReturn .= "</item>"; } else { if ($objElement->getTypeId() == ELM_TYPE_FOLDER) { $intChild = is_object($objChildren) && $objChildren->count() > 0 ? 1 : 0; if (!$objElement->getActive()) { $strReturn .= "<item text=\"" . self::escapeForXml($objElement->getName()) . "\" id=\"{$objElement->getId()}\" style=\"{$isPage}color:#999\" im0=\"folderClosedInactive.gif\" im1=\"folderOpenInactive.gif\" im2=\"folderClosedInactive.gif\" child=\"{$intChild}\">"; } else { $strReturn .= "<item text=\"" . self::escapeForXml($objElement->getName()) . "\" id=\"{$objElement->getId()}\" style=\"{$isPage}\" im0=\"folderClosed.gif\" im1=\"folderOpen.gif\" im2=\"folderClosed.gif\" child=\"{$intChild}\">"; } if ($childId == $objElement->getId()) { $strReturn .= $strChildren; } $strReturn .= "</item>"; } else { if (!$objElement->getActive()) { $strReturn .= "<item text=\"" . self::escapeForXml($objElement->getName()) . "\" id=\"{$objElement->getId()}\" style=\"{$isPage}color:#999\" im0=\"leafInactive.gif\" im1=\"leafInactive.gif\" im2=\"leafInactive.gif\" child=\"0\" />"; } else { $strReturn .= "<item text=\"" . self::escapeForXml($objElement->getName()) . "\" id=\"{$objElement->getId()}\" style=\"{$isPage}\" child=\"0\" />"; } } } } } if ($strAction == "init") { $objParent = Element::selectByPk($intElmntId); if (is_object($objParent)) { $intParent = $objParent->getParentId(); $strReturn = self::buildXmlNodes($intParent, $strType, $strAction, $intElmntId, $strReturn); } } break; case "templates": $objTemplates = Templates::getFromParent($intElmntId); foreach ($objTemplates as $objTemplate) { $objChildren = $objTemplate->getTemplates(); if (is_object($objChildren) && $objChildren->count() > 0) { $strReturn .= "<item text=\"" . self::escapeForXml($objTemplate->getName()) . "\" id=\"{$objTemplate->getId()}\" im0=\"templateClosed.gif\" im1=\"templateOpen.gif\" im2=\"templateClosed.gif\" child=\"1\">"; if ($childId == $objTemplate->getId()) { $strReturn .= $strChildren; } $strReturn .= "</item>"; } else { $strReturn .= "<item text=\"" . self::escapeForXml($objTemplate->getName()) . "\" id=\"{$objTemplate->getId()}\" im0=\"template.gif\" im1=\"template.gif\" im2=\"template.gif\" child=\"0\" />"; } } if ($strAction == "init") { $objParent = Template::selectByPk($intElmntId); if (is_object($objParent)) { $intParent = $objParent->getParentId(); $strReturn = self::buildXmlNodes($intParent, $strType, $strAction, $intElmntId, $strReturn); } } break; case "users": $strReturn = "<item text=\"" . self::escapeForXml($objLang->get("users", "usersLabel")) . "\" id=\"" . NAV_MYPUNCH_USERS_USER . "\" im0=\"misc.gif\" im1=\"misc.gif\" im2=\"misc.gif\" child=\"0\" />"; $strReturn .= "<item text=\"" . self::escapeForXml($objLang->get("groups", "usersLabel")) . "\" id=\"" . NAV_MYPUNCH_USERS_GROUP . "\" im0=\"misc.gif\" im1=\"misc.gif\" im2=\"misc.gif\" child=\"0\" />"; $strReturn .= "<item text=\"" . self::escapeForXml($objLang->get("applications", "usersLabel")) . "\" id=\"" . NAV_MYPUNCH_USERS_APPLICATION . "\" im0=\"misc.gif\" im1=\"misc.gif\" im2=\"misc.gif\" child=\"0\" />"; $strReturn .= "<item text=\"" . self::escapeForXml($objLang->get("areas", "usersLabel")) . "\" id=\"" . NAV_MYPUNCH_USERS_AREA . "\" im0=\"misc.gif\" im1=\"misc.gif\" im2=\"misc.gif\" child=\"0\" />"; $strReturn .= "<item text=\"" . self::escapeForXml($objLang->get("rights", "usersLabel")) . "\" id=\"" . NAV_MYPUNCH_USERS_RIGHT . "\" im0=\"misc.gif\" im1=\"misc.gif\" im2=\"misc.gif\" child=\"0\" />"; break; case "forms": $objForms = Form::selectByAccountId(); foreach ($objForms as $objForm) { $strReturn .= "<item text=\"" . self::escapeForXml($objForm->getName()) . "\" id=\"{$objForm->getId()}\" im0=\"template.gif\" im1=\"template.gif\" im2=\"template.gif\" child=\"0\" />"; } break; case "media-ckeditor": case "storage": $objFolders = StorageItems::getFromParent($intElmntId, STORAGE_TYPE_ALL); foreach ($objFolders as $objElement) { $objChildren = $objElement->getItems(STORAGE_TYPE_ALL); if ($objElement->getTypeId() != STORAGE_TYPE_FOLDER) { $strReturn .= "<item text=\"" . self::escapeForXml($objElement->getName()) . "\" id=\"{$objElement->getId()}\" child=\"0\">"; if ($childId == $objElement->getId()) { $strReturn .= $strChildren; } $strReturn .= "</item>"; } else { if ($objElement->getTypeId() == STORAGE_TYPE_FOLDER) { $intChild = is_object($objChildren) && $objChildren->count() > 0 ? 1 : 0; $strReturn .= "<item text=\"" . self::escapeForXml($objElement->getName()) . "\" id=\"{$objElement->getId()}\" style=\"font-weight:bold;\" im0=\"folderClosed.gif\" im1=\"folderOpen.gif\" im2=\"folderClosed.gif\" child=\"{$intChild}\">"; if ($childId == $objElement->getId()) { $strReturn .= $strChildren; } $strReturn .= "</item>"; } else { $strReturn .= "<item text=\"" . self::escapeForXml($objElement->getName()) . "\" id=\"{$objElement->getId()}\" im0=\"elementClosed.gif\" im1=\"elementOpen.gif\" im2=\"elementClosed.gif\" child=\"0\" />"; } } } if ($strAction == "init") { $objParent = StorageItem::selectByPk($intElmntId); if (is_object($objParent)) { $intParent = $objParent->getParentId(); $strReturn = self::buildXmlNodes($intParent, $strType, $strAction, $intElmntId, $strReturn); } } break; } return $strReturn; }
public function clearCache($objFtp = NULL) { if (Setting::getValueByName('caching_enable')) { if (!is_object($objFtp)) { $objFtp = new FTP(Setting::getValueByName('ftp_server')); $objFtp->login(Setting::getValueByName('ftp_username'), Setting::getValueByName('ftp_password')); $objFtp->pasv(TRUE); } $objFtp->delete(Setting::getValueByName('caching_ftp_folder') . "/*_{$this->id}_*"); $objParent = Element::selectByPk($this->getParentId()); if (is_object($objParent)) { $objParent->clearCache($objFtp); } } }
function parseAlias($intAliasId, $strCommand) { global $_PATHS, $_CLEAN_POST, $_CONF, $objLang, $objLiveUser; $objTpl = new HTML_Template_IT($_PATHS['templates']); $objTpl->loadTemplatefile("alias.tpl.htm"); $blnError = false; switch ($strCommand) { case CMD_LIST: case CMD_ADD: case CMD_EDIT: //*** Post the profile form if submitted. if (count($_CLEAN_POST) > 0 && !empty($_CLEAN_POST['dispatch']) && $_CLEAN_POST['dispatch'] == "editAlias") { //*** The element form has been posted. //*** Check sanitized input. if (is_null($_CLEAN_POST["frm_active"])) { $blnError = true; } if (is_null($_CLEAN_POST["frm_alias"])) { $blnError = true; } if (is_null($_CLEAN_POST["frm_language"])) { $blnError = true; } if (is_null($_CLEAN_POST["frm_element"])) { $blnError = true; } if (is_null($_CLEAN_POST["dispatch"])) { $blnError = true; } if ($blnError === true) { //*** Display global error. $objTpl->setVariable("FORM_ACTIVE_VALUE", $_POST["frm_active"] == "on" ? "checked=\"checked\"" : ""); $objTpl->setVariable("FORM_ALIAS_VALUE", $_POST["frm_alias"]); $objTpl->setVariable("ERROR_ALIAS_MAIN", $objLang->get("main", "formerror")); } else { //*** Input is valid. Save the alias. if ($strCommand == CMD_EDIT) { $objAlias = Alias::selectByPK($intAliasId); } else { $objAlias = new Alias(); } $objAlias->setAccountId($_CONF['app']['account']->getId()); $objAlias->setActive($_POST["frm_active"] == "on" ? 1 : 0); $objAlias->setLanguageId(empty($_CLEAN_POST["frm_language"]) ? 0 : $_CLEAN_POST["frm_language"]); $objAlias->setAlias($_CLEAN_POST["frm_alias"]); $objAlias->setUrl($_CLEAN_POST["frm_element"]); $objAlias->save(); header("Location: " . Request::getURI() . "/?cid=" . NAV_PCMS_ALIASES); exit; } } //*** Initiate child element loop. $objAliases = Alias::selectSorted(); $totalCount = 0; $listCount = 0; $intPosition = request("pos"); $intPosition = !empty($intPosition) && is_numeric($intPosition) ? $intPosition : 0; $intPosition = floor($intPosition / $_SESSION["listCount"]) * $_SESSION["listCount"]; //*** Find total count. foreach ($objAliases as $objAlias) { $strAlias = $objAlias->getAlias(); if (!empty($strAlias)) { $totalCount++; } } $objAliases->seek($intPosition); $objLanguages = ContentLanguage::select(); foreach ($objAliases as $objAlias) { $strAlias = $objAlias->getAlias(); if (!empty($strAlias)) { $strUrl = $objAlias->getUrl(); if (is_numeric($strUrl)) { $objElement = Element::selectByPk($strUrl); if (is_object($objElement)) { $strUrlHref = "?eid={$strUrl}&cmd=" . CMD_EDIT . "&cid=" . NAV_PCMS_ELEMENTS; $strUrl = Element::recursivePath($strUrl); } else { $strUrlHref = "?cid=" . NAV_PCMS_ALIASES; $strUrl = "<b>" . $objLang->get("aliasUnavailable", "label") . "</b>"; } } $objTpl->setCurrentBlock("multiview-item"); $objTpl->setVariable("MULTIITEM_VALUE", $objAlias->getId()); $objTpl->setVariable("BUTTON_REMOVE_HREF", "javascript:Alias.remove({$objAlias->getId()});"); $objTpl->setVariable("BUTTON_REMOVE", $objLang->get("delete", "button")); $objTpl->setVariable("MULTIITEM_HREF", "?cid=" . NAV_PCMS_ALIASES . "&eid={$objAlias->getId()}&cmd=" . CMD_EDIT); $objTpl->setVariable("MULTIITEM_TYPE_CLASS", "alias"); $objTpl->setVariable("MULTIITEM_ALIAS", $objAlias->getAlias()); $objTpl->setVariable("MULTIITEM_POINTS_TO", $objLang->get("pointsTo", "label")); $objTpl->setVariable("MULTIITEM_URL", $strUrl); $objTpl->setVariable("MULTIITEM_URL_HREF", $strUrlHref); if ($objLanguages->count() > 1) { if ($objAlias->getLanguageId() > 0) { $strLanguage = ContentLanguage::selectByPK($objAlias->getLanguageId())->getName(); $objTpl->setVariable("MULTIITEM_LANGUAGE", sprintf($objLang->get("forLanguage", "label"), $strLanguage)); } else { $objTpl->setVariable("MULTIITEM_LANGUAGE", $objLang->get("forAllLanguages", "label")); } } else { $objTpl->setVariable("MULTIITEM_LANGUAGE", ""); } if (!$objAlias->getActive()) { $objTpl->setVariable("MULTIITEM_ACTIVE", " class=\"inactive\""); } $objTpl->parseCurrentBlock(); $listCount++; if ($listCount >= $_SESSION["listCount"]) { break; } } } //*** Render page navigation. $pageCount = ceil($totalCount / $_SESSION["listCount"]); if ($pageCount > 0) { $currentPage = ceil(($intPosition + 1) / $_SESSION["listCount"]); $previousPos = $intPosition - $_SESSION["listCount"] > 0 ? $intPosition - $_SESSION["listCount"] : 0; $nextPos = $intPosition + $_SESSION["listCount"] < $totalCount ? $intPosition + $_SESSION["listCount"] : $intPosition; $objTpl->setVariable("PAGENAV_PAGE", sprintf($objLang->get("pageNavigation", "label"), $currentPage, $pageCount)); $objTpl->setVariable("PAGENAV_PREVIOUS", $objLang->get("previous", "button")); $objTpl->setVariable("PAGENAV_PREVIOUS_HREF", "?cid=" . NAV_PCMS_ALIASES . "&pos={$previousPos}"); $objTpl->setVariable("PAGENAV_NEXT", $objLang->get("next", "button")); $objTpl->setVariable("PAGENAV_NEXT_HREF", "?cid=" . NAV_PCMS_ALIASES . "&pos={$nextPos}"); //*** Top page navigation. for ($intCount = 0; $intCount < $pageCount; $intCount++) { $objTpl->setCurrentBlock("multiview-pagenavitem-top"); $position = $intCount * $_SESSION["listCount"]; if ($intCount != $intPosition / $_SESSION["listCount"]) { $objTpl->setVariable("PAGENAV_HREF", "href=\"?cid=" . NAV_PCMS_ALIASES . "&pos={$position}\""); } $objTpl->setVariable("PAGENAV_VALUE", $intCount + 1); $objTpl->parseCurrentBlock(); } //*** Bottom page navigation. for ($intCount = 0; $intCount < $pageCount; $intCount++) { $objTpl->setCurrentBlock("multiview-pagenavitem-bottom"); $position = $intCount * $_SESSION["listCount"]; if ($intCount != $intPosition / $_SESSION["listCount"]) { $objTpl->setVariable("PAGENAV_HREF", "href=\"?cid=" . NAV_PCMS_ALIASES . "&pos={$position}\""); } $objTpl->setVariable("PAGENAV_VALUE", $intCount + 1); $objTpl->parseCurrentBlock(); } } //*** Render list action pulldown. $arrActions[$objLang->get("choose", "button")] = 0; $arrActions[$objLang->get("delete", "button")] = "delete"; foreach ($arrActions as $key => $value) { $objTpl->setCurrentBlock("multiview-listactionitem"); $objTpl->setVariable("LIST_ACTION_TEXT", $key); $objTpl->setVariable("LIST_ACTION_VALUE", $value); $objTpl->parseCurrentBlock(); } $objTpl->setCurrentBlock("multiview"); $objTpl->setVariable("ACTIONS_OPEN", $objLang->get("pcmsOpenActionsMenu", "menu")); $objTpl->setVariable("ACTIONS_CLOSE", $objLang->get("pcmsCloseActionsMenu", "menu")); $objTpl->setVariable("LIST_LENGTH_HREF_10", "href=\"?list=10&cid=" . NAV_PCMS_ALIASES . "\""); $objTpl->setVariable("LIST_LENGTH_HREF_25", "href=\"?list=25&cid=" . NAV_PCMS_ALIASES . "\""); $objTpl->setVariable("LIST_LENGTH_HREF_100", "href=\"?list=100&cid=" . NAV_PCMS_ALIASES . "\""); switch ($_SESSION["listCount"]) { case 10: $objTpl->setVariable("LIST_LENGTH_HREF_10", ""); break; case 25: $objTpl->setVariable("LIST_LENGTH_HREF_25", ""); break; case 100: $objTpl->setVariable("LIST_LENGTH_HREF_100", ""); break; } $objTpl->setVariable("LIST_LENGTH_HREF", "&cid=" . NAV_PCMS_ALIASES); $objTpl->setVariable("LIST_WITH_SELECTED", $objLang->get("withSelected", "label")); $objTpl->setVariable("LIST_ACTION_ONCHANGE", "Alias.multiDo(this, this[this.selectedIndex].value)"); $objTpl->setVariable("LIST_ITEMS_PER_PAGE", $objLang->get("itemsPerPage", "label")); $objTpl->setVariable("BUTTON_LIST_SELECT", $objLang->get("selectAll", "button")); $objTpl->setVariable("BUTTON_LIST_SELECT_HREF", "javascript:Alias.multiSelect()"); $objTpl->parseCurrentBlock(); //*** Form variables. $intActiveLanguage = 0; if ($strCommand == CMD_EDIT) { $objAlias = Alias::selectByPK($intAliasId); $intActiveLanguage = $objAlias->getLanguageId(); $objTpl->setVariable("FORM_ACTIVE_VALUE", $objAlias->getActive() ? "checked=\"checked\"" : ""); $objTpl->setVariable("FORM_ALIAS_VALUE", $objAlias->getAlias()); $objTpl->setVariable("FORM_URL_VALUE", $objAlias->getUrl()); $objTpl->setVariable("FRM_HEADER", $objLang->get("editAlias", "form")); $objTpl->setVariable("FRM_STYLE", ""); $objTpl->setVariable("CMD", CMD_EDIT); $objTpl->touchBlock("alias.edit"); } else { $objTpl->setVariable("FORM_ACTIVE_VALUE", "checked=\"checked\""); $objTpl->setVariable("FRM_HEADER", $objLang->get("addAlias", "form")); if (!$blnError) { $objTpl->setVariable("FRM_STYLE", " style=\"display:none\""); } $objTpl->setVariable("CMD", CMD_ADD); $objTpl->touchBlock("alias.add"); } //*** Languages. $objLanguages = ContentLanguage::select(); foreach ($objLanguages as $objLanguage) { $objTpl->setCurrentBlock("language.item"); $objTpl->setVariable("ID", $objLanguage->getId()); $objTpl->setVariable("LABEL", $objLanguage->getName()); $objTpl->setVariable("SELECTED", $intActiveLanguage == $objLanguage->getId() ? " selected=\"selected\"" : ""); $objTpl->parseCurrentBlock(); } $objTpl->setVariable("ALIASES", $objLang->get("aliases", "label")); $objTpl->setVariable("BUTTON_ADD", $objLang->get("aliasAdd", "button")); $objTpl->setVariable("FRM_LABEL_ACTIVE", $objLang->get("active", "form")); $objTpl->setVariable("FRM_LABEL_ALIAS", $objLang->get("alias", "form")); $objTpl->setVariable("FRM_DESCR_ALIAS", $objLang->get("alias", "tip")); $objTpl->setVariable("FRM_LABEL_LANGUAGE", $objLang->get("language", "form")); $objTpl->setVariable("FRM_DESCR_LANGUAGE", $objLang->get("language", "tip")); $objTpl->setVariable("FRM_LABEL_ALL_LANGUAGES", $objLang->get("allLanguages", "form")); $objTpl->setVariable("FRM_LABEL_URL", $objLang->get("element", "form")); $objTpl->setVariable("FRM_LABEL_SAVE", $objLang->get("save", "button")); $objTpl->setVariable("CID", NAV_PCMS_ALIASES); $objTpl->setVariable("EID", $intAliasId); $objTpl->parseCurrentBlock(); $strReturn = $objTpl->get(); break; case CMD_REMOVE: if (strpos($intAliasId, ',') !== false) { //*** Multiple elements submitted. $arrAliases = explode(',', $intAliasId); $objAliases = Alias::selectByPK($arrAliases); foreach ($objAliases as $objAlias) { $objAlias->delete(); } } else { //*** Single element submitted. $objAlias = Alias::selectByPK($intAliasId); $objAlias->delete(); } //*** Redirect the page. $strReturnTo = request('returnTo'); if (empty($strReturnTo)) { header("Location: " . Request::getUri() . "/?cid=" . request("cid") . "&cmd=" . CMD_LIST); exit; } else { header("Location: " . Request::getURI() . $strReturnTo); exit; } break; } return $strReturn; }