Exemple #1
0
 /** 
  * Sets the translated value to the specified key
  *
  * @param string
  * @param string
  * @return this
  */
 public function translate($key, $value)
 {
     Eden_Language_Error::i()->argument(1, 'string')->argument(2, 'string');
     $this->_language[$key] = $value;
     return $this;
 }
Exemple #2
0
if(!class_exists('Eden_Language')){class Eden_Language extends Eden_Class implements ArrayAccess,Iterator{protected $_language=array();protected $_file=NULL;public static function i(){return self::_getMultiple(__CLASS__);}public function __construct($language=array()){Eden_Language_Error::i()->argument(1,'file','array');if(is_string($language)){$this->_file=$language;$language=include($language);}$this->_language=$language;}public function current(){return current($this->_language);}public function get($key){Eden_Language_Error::i()->argument(1,'string');if(!isset($this->_language[$key])){$this->_language[$key]=$key;}return $this->_language[$key];}public function getLanguage(){return $this->_language;}public function key(){return key($this->_language);}public function next(){next($this->_language);}public function offsetExists($offset){return isset($this->_language[$offset]);}public function offsetGet($offset){return $this->get($offset);}public function offsetSet($offset,$value){$this->translate($offset,$value);}public function offsetUnset($offset){unset($this->_language[$offset]);}public function rewind(){reset($this->_language);}public function save($file=NULL){Eden_Language_Error::i()->argument(1,'file','null');if(is_null($file)){$file=$this->_file;}if(is_null($file)){Eden_Language_Error::i()->setMessage(Eden_Language_Error::INVALID_ARGUMENT)->addVariable(1)->addVariable(__CLASS__.'->'.__FUNCTION__)->addVariable('file or null')->addVariable($file)->setTypeLogic()->trigger();}Eden_File::i($file)->setData($this->_language);return $this;}public function translate($key,$value){Eden_Language_Error::i()->argument(1,'string')->argument(2,'string');$this->_language[$key]=$value;return $this;}public function valid(){return isset($this->_language[key($this->_language)]);}}class Eden_Language_Error extends Eden_Error{public static function i($message=NULL,$code=0){$class=__CLASS__;return new $class($message,$code);}}}