/** * Set language as default and unset another default language * * @service language write * @param Gpf_Rpc_Params $params * @return Gpf_Rpc_Action */ public function setLanguageAsDefault(Gpf_Rpc_Params $params) { $action = new Gpf_Rpc_Action($params); try { Gpf_Db_Table_Languages::getInstance()->unsetDefaultLanguage($action->getParam(Gpf_Db_Table_Languages::ID)); $lang = new Gpf_Db_Language(); $lang->setId($action->getParam(Gpf_Db_Table_Languages::ID)); $lang->load(); $lang->setIsDefault(true); $lang->save(); } catch (Exception $e) { $action->addError(); $action->setErrorMessage($this->_('Failed to set default language with error: %s', $e->getMessage())); return $action; } $action->setInfoMessage($this->_('Language %s set as default.', $lang->getEnglishName())); $action->addOk(); return $action; }
/** * Copy metadata from database object representing language in db * * @param Gpf_Db_Language $lang */ public function copyMetadataFromDbLanguage(Gpf_Db_Language $lang) { $this->setMetaData(self::LANG_AUTHOR, $lang->getAuthor()); $this->setMetaData(self::LANG_CODE, $lang->getCode()); $this->setMetaData(self::LANG_DATE_FORMAT, $lang->getDateFormat()); $this->setMetaData(self::LANG_ENG_NAME, $lang->getEnglishName()); $this->setMetaData(self::LANG_NAME, $lang->getName()); $this->setMetaData(self::LANG_TIME_FORMAT, $lang->getTimeFormat()); $this->setMetaData(self::LANG_THOUSANDS_SEPARATOR, $lang->getThousandsSeparator()); $this->setMetaData(self::LANG_DECIMAL_SEPARATOR, $lang->getDecimalSeparator()); }