For example if you install an extension and then add a new language, things can break. Sometimes with no easy way to recover.
Simply replace the load() function in library\language\language.php with the following. Please excuse the layout as displayed. The code contains a mixture of tabs and spaces. As always, backing up the original file beforehand is a good idea

Code: Select all
function load($filename, $directory = DIR_LANGUAGE)
{
$file = $directory . $this->languages[$this->code]['directory'] . '/' . $filename;
if (file_exists($file))
{
$_ = array();
include($file);
$this->data = array_merge($this->data, $_);
}
else
{
// fall back to english language files... if they exist.
$file = $directory . $this->languages['en']['directory'] . '/' . $filename;
if (file_exists($file)) {
$_ = array();
include($file);
$this->data = array_merge($this->data, $_);
}
else
{
exit('Error: Language file ' . $file . ' not found!');
}
}
}