public function getMetadataForColumn($sColumnIdentifier) { $aResult = array('is_sortable' => true); switch ($sColumnIdentifier) { case 'id': $aResult['heading'] = false; $aResult['field_name'] = 'string_key'; $aResult['display_type'] = ListWidgetModule::DISPLAY_TYPE_DATA; break; case 'string_key': $aResult['heading'] = TranslationPeer::getString('wns.string.string_key'); break; case 'text_truncated_current': $aResult['heading'] = TranslationPeer::getString('wns.string.string_text.heading', null, 'Text', array('language_id' => AdminManager::getContentLanguage())); break; case 'languages_available': $aResult['heading'] = TranslationPeer::getString('wns.languages_filled'); $aResult['is_sortable'] = false; break; case 'delete': $aResult['heading'] = ' '; $aResult['display_type'] = ListWidgetModule::DISPLAY_TYPE_ICON; $aResult['field_name'] = 'trash'; $aResult['is_sortable'] = false; break; } return $aResult; }
public function deleteRow($aRowData, $oCriteria) { $oLanguage = LanguagePeer::doSelectOne($oCriteria); if ($oLanguage->getIsDefault()) { throw new LocalizedException('wns.language.delete_default.denied'); } if ($oLanguage->getIsDefaultEdit()) { throw new LocalizedException('wns.language.delete_default.denied'); } if (LanguagePeer::doCount(new Criteria()) < 2) { throw new LocalizedException('wns.language.delete_last.denied'); } $sLanguageId = $oLanguage->getId(); foreach (LanguageObjectQuery::create()->filterByLanguageId($sLanguageId)->find() as $oLanguageObject) { $oHistory = $oLanguageObject->newHistory(); $oHistory->save(); $oLanguageObject->delete(); } $iResult = $oLanguage->delete(); $oReplacementLanguage = LanguageQuery::create()->findOne(); if (AdminManager::getContentLanguage() === $sLanguageId) { AdminManager::setContentLanguage(Settings::getSetting("session_default", AdminManager::CONTENT_LANGUAGE_SESSION_KEY, $oReplacementLanguage->getId())); } if (Session::language() === $sLanguageId) { Session::getSession()->setLanguage(Settings::getSetting("session_default", Session::SESSION_LANGUAGE_KEY, $oReplacementLanguage->getId())); } }
public function languageData() { $oLanguage = LanguageQuery::create()->findPk($this->sLanguageId); $aResult = $oLanguage->toArray(); $aResult['LanguageName'] = $oLanguage->getLanguageName(); $aResult['CreatedInfo'] = Util::formatCreatedInfo($oLanguage); $aResult['UpdatedInfo'] = Util::formatUpdatedInfo($oLanguage); $sLanguageKey = LanguagePeer::STATIC_STRING_NAMESPACE . '.' . $this->sLanguageId; // check existence of translation string in its own language if (TranslationPeer::getString($sLanguageKey, $this->sLanguageId, '') === '') { $sMessage = TranslationPeer::getString('wns.check_static_strings', AdminManager::getContentLanguage(), 'Please check strings', $aParameters = array('string_key' => $sLanguageKey)); $aResult['LanguageStringMissing'] = $sMessage; } return $aResult; }
protected function initLanguage() { $this->sOldSessionLanguage = Session::language(); if (isset($_REQUEST[AdminManager::CONTENT_LANGUAGE_SESSION_KEY]) && LanguageQuery::languageExists($_REQUEST[AdminManager::CONTENT_LANGUAGE_SESSION_KEY])) { AdminManager::setContentLanguage($_REQUEST[AdminManager::CONTENT_LANGUAGE_SESSION_KEY]); unset($_REQUEST[AdminManager::CONTENT_LANGUAGE_SESSION_KEY]); LinkUtil::redirect(LinkUtil::link(Manager::getRequestedPath(), get_class())); } else { if (!LanguageQuery::languageExists(AdminManager::getContentLanguage())) { AdminManager::setContentLanguage($this->sOldSessionLanguage); } if (!LanguageQuery::languageExists(AdminManager::getContentLanguage())) { LinkUtil::redirectToManager('', "AdminManager"); } } Session::getSession()->setLanguage(AdminManager::getContentLanguage()); }
public function exclude($mExclude = false) { if (!$mExclude) { return $this; } if ($mExclude === 'default') { $mExclude = Settings::getSetting("session_default", Session::SESSION_LANGUAGE_KEY, 'de'); } else { if ($mExclude === 'current') { $mExclude = Session::language(); } else { if ($mExclude === 'edit') { $mExclude = AdminManager::getContentLanguage(); } else { if ($mExclude instanceof Language) { $mExclude = $mExclude->getId(); } } } } return $this->filterById($mExclude, Criteria::NOT_EQUAL); }
public function getLanguage($bObject = false) { $sResult = $this->getAttribute(self::SESSION_LANGUAGE_KEY); if ($bObject) { $sResult = LanguageQuery::create()->findPk($sResult); if (!$sResult) { //If an object was explicitly requested, most likely, it’s supposed to be a content language $sResult = LanguageQuery::create()->findPk(AdminManager::getContentLanguage()); } } return $sResult; }
public function getContentLanguage() { return AdminManager::getContentLanguage(); }
public function createPage($iParentId, $sPageName) { $oParentPage = PageQuery::create()->findPk($iParentId); if ($oParentPage == null) { $oParentPage = PagePeer::getRootPage(); } $sPageTitle = $sPageName; $sPageName = StringUtil::normalizeToASCII($sPageName); if (!$sPageName) { // If all we have are special chars, leave the page name as is and only normalize minimally $sPageName = $sPageTitle; } $sPageName = StringUtil::normalizePath($sPageName); if (PagePeer::pageIsNotUnique($sPageName, $oParentPage)) { $oFlash = Flash::getFlash(); $oFlash->addMessage('page.name_unique_required'); $oFlash->finishReporting(); throw new ValidationException($oFlash); } $oPage = new Page(); $oPage->setName($sPageName); $oPageString = new PageString(); $oPageString->setLanguageId(AdminManager::getContentLanguage()); $oPageString->setIsInactive(false); $oPageString->setLinkText(null); $oPageString->setPageTitle($sPageTitle); $oPage->addPageString($oPageString); $oPage->setPageType('default'); $oPage->setTemplateName($oParentPage->getTemplateName()); $oPage->setIsInactive(true); $oPage->insertAsLastChildOf($oParentPage); return $oPage->save(); }
public function adminRemoveObject($iObjectId, $bForce = false) { $oCurrentContentObject = $this->contentObjectById($iObjectId); if (!Session::getSession()->getUser()->mayEditPageStructure($oCurrentContentObject->getPage())) { return false; } if ($bForce) { $oCurrentContentObject->sortIntoNew(); $oCurrentContentObject->delete(); return true; } if ($this->sLanguageId === null) { $this->sLanguageId = AdminManager::getContentLanguage(); } $oCurrentLanguageObject = $oCurrentContentObject->getLanguageObject($this->sLanguageId); if ($oCurrentLanguageObject === null) { return true; } $oCurrentLanguageObject->newHistory(false)->save(); $oCurrentLanguageObject->delete(); return true; }