/** * Compare a particular language's keys with the default language set. * * @param string $p_prefix - * The prefix of the language files. * * @param array $p_data - * A set of keys. * * @param boolean $p_findExistingKeys - * Set this to true to return the set of keys (of the keys given) that already exist, * set this to false to return the set of keys (of the keys given) that do not exist. * * @return array */ public static function CompareKeys($p_prefix, $p_data, $p_findExistingKeys = true) { global $g_localizerConfig; $localData = new LocalizerLanguage($p_prefix, $g_localizerConfig['DEFAULT_LANGUAGE']); $localData->loadFile(Localizer::GetMode()); $globaldata = new LocalizerLanguage($g_localizerConfig['FILENAME_PREFIX_GLOBAL'], $g_localizerConfig['DEFAULT_LANGUAGE']); $globaldata->loadFile(Localizer::GetMode()); $returnValue = array(); foreach ($p_data as $key) { $globalKeyExists = $globaldata->keyExists($key); $localKeyExists = $localData->keyExists($key); if ($p_findExistingKeys && ($globalKeyExists || $localKeyExists)) { $returnValue[$key] = $key; } elseif (!$p_findExistingKeys && !$globalKeyExists && !$localKeyExists) { $returnValue[$key] = $key; } } return $returnValue; } // fn CompareKeys