/** * {inheritdoc} */ public function language($file = [], $lang = '') { if (is_array($file)) { foreach ($file as $langfile) { $this->language($langfile, $lang); } return; } // Detect module if (list($module, $class) = $this->module->detect($file)) { // Module already loaded if (!$this->module->loaded($module)) { // Add module $this->module->add($this, $module); } // Let parent do the heavy work $void = parent::language($class, $lang); // Remove module $this->module->remove($this); return $void; } return parent::language($file, $lang); }
/** * Loads a language file * * @param array * @param string * @return void */ public function language($file = array(), $lang = '') { if (is_array($file)) { foreach ($file as $langfile) { $this->language($langfile, $lang); } return; } // Detect module if (list($module, $class) = $this->detect_module($file)) { // Module already loaded if (in_array($module, $this->_ci_modules)) { return parent::language($class, $lang); } // Add module $this->add_module($module); // Let parent do the heavy work $void = parent::language($class, $lang); // Remove module $this->remove_module(); return $void; } else { return parent::language($file, $lang); } }
/** Load a module language file **/ public function language($langfile, $lang = '') { $deft_lang = $this->config->item('language'); $idiom = $lang == '' ? $deft_lang : $lang; if (in_array($langfile . '_lang' . EXT, $this->lang->is_loaded, TRUE)) { return $this->lang; } list($path, $_langfile) = Modules::find($langfile . '_lang', $this->_module, 'language/', $idiom); if ($path === FALSE) { parent::language($langfile, $lang); } else { if ($lang = Modules::load_file($_langfile, $path, 'lang')) { $this->lang->language = array_merge($this->lang->language, $lang); $this->lang->is_loaded[] = $langfile . '_lang' . EXT; unset($lang); } } return $this->lang; }