function updateLanguageFiles($ini)
{
    $c = new manageconfig();
    $codes = array();
    $keys = array('language', 'language_de');
    $codes = getLangCodesByKeys($keys);
    $langcodes = getLangCodes();
    foreach ($langcodes as $code => $lid) {
        $ldat = explode('_', $code);
        if (isset($codes[$ldat[0]])) {
            $count = count($codes[$ldat[0]]);
            if (in_array('', $codes[$ldat[0]])) {
                $count--;
            }
        } else {
            $count = -1;
        }
        if (isset($codes[$ldat[0]]) && !empty($ldat[1]) && in_array($ldat[1], $codes[$ldat[0]])) {
            // Nehme Original
            $src = 'language_' . $code;
        } elseif (isset($codes[$ldat[0]]) && in_array('', $codes[$ldat[0]])) {
            // Nehme gleichen Langcode, aber ohne Countrycode
            $src = 'language_' . $ldat[0];
        } elseif (isset($codes[$ldat[0]]) && $count > 0) {
            // Nehme gleichen Langcode, aber falchen Countrycode
            $src = 'language_' . $ldat[0] . '_' . reset($codes[$ldat[0]]);
        } else {
            // Nehme Standard
            $src = 'language';
        }
        foreach ($ini as $file => $data) {
            if (!isset($data[$src])) {
                continue;
            }
            $c->getdata("language/{$lid}/{$file}.lng.php", 'lang');
            foreach ($data[$src] as $varname => $text) {
                if ($text === null) {
                    $c->delete($varname);
                } else {
                    $c->updateconfig($varname, str, $text);
                }
            }
            $c->savedata();
        }
    }
}
function pluginSettingGroupUninstall($pluginid)
{
    global $db;
    $result = $db->query("SELECT id, name FROM {$db->pre}settings_groups WHERE name = 'module_{$pluginid}' LIMIT 1");
    $row = $db->fetch_assoc($result);
    $c = new manageconfig();
    $c->getdata();
    $result = $db->query("SELECT name FROM {$db->pre}settings WHERE sgroup = '{$row['id']}'");
    while ($row2 = $db->fetch_assoc($result)) {
        $c->delete(array($row['name'], $row2['name']));
    }
    $c->savedata();
    $db->query("DELETE FROM {$db->pre}settings WHERE sgroup = '{$row['id']}'", __LINE__, __FILE__);
    $db->query("DELETE FROM {$db->pre}settings_groups WHERE id = '{$row['id']}'", __LINE__, __FILE__);
}
            ?>
"><?php 
            echo $lang->phrase('admin_packages_browser_details');
            ?>
</a>
		  	</td>
		  </tr>
		  <?php 
        }
        ?>
		 </table>
		<?php 
        $c = new manageconfig();
        $c->getdata('admin/data/config.inc.php', 'admconfig');
        $c->updateconfig('checked_package_updates', int, 1);
        $c->savedata();
        echo foot();
    }
} elseif ($job == 'browser') {
    $pb = $scache->load('package_browser');
    $types = $pb->types();
    $type = $gpc->get('type', int, IMPTYPE_PACKAGE);
    $cats = $pb->categories($type);
    if (count($cats) > 0) {
        // Calculate random entry
        unset($cat);
        $i = 0;
        do {
            $keys = array_keys($cats);
            shuffle($keys);
            $rid = current($keys);