function keys_expand($mid, $sep = "-")
{
    global $xoopsDB, $keywords;
    if (empty($keywords)) {
        require_once dirname(__FILE__) . "/functions.php";
        $keywords = new Keywords();
    }
    $kres = $xoopsDB->query("SELECT keyref FROM " . RELAY . " WHERE midref=" . $mid);
    $keys = array();
    foreach ($keywords->getTree() as $key) {
        // roots order
        $keys[$key['keyid']] = array();
    }
    while (list($keyid) = $xoopsDB->fetchRow($kres)) {
        $root = find_root_id($keyid);
        $depth = find_root_id($keyid, true);
        $key = $keywords->get($keyid);
        if (!empty($key['keyid'])) {
            $keys[$root][$depth] = $key['name'];
        }
    }
    foreach ($keys as $id => $vals) {
        if ($vals) {
            $keys[$id] = join($sep, $vals);
        } else {
            unset($keys[$id]);
        }
    }
    return $keys;
}