/**
 * Fügt einen rex_select Objekt die hierarchische Medienkategorien struktur
 * hinzu
 *
 * @param $select
 * @param $mediacat
 * @param $mediacat_ids
 * @param $groupName
 */
function rex_mediapool_addMediacatOptions(&$select, &$mediacat, &$mediacat_ids, $groupName = '')
{
    global $REX;
    if (empty($mediacat)) {
        return;
    }
    $mname = $mediacat->getName();
    if ($REX['USER']->hasPerm('advancedMode[]')) {
        $mname .= ' [' . $mediacat->getId() . ']';
    }
    $mediacat_ids[] = $mediacat->getId();
    $select->addOption($mname, $mediacat->getId(), $mediacat->getId(), $mediacat->getParentId());
    $childs = $mediacat->getChildren();
    if (is_array($childs)) {
        foreach ($childs as $child) {
            rex_mediapool_addMediacatOptions($select, $child, $mediacat_ids, $mname);
        }
    }
}
// ***** kategorie auswahl
$db = new rex_sql();
$file_cat = $db->getArray('SELECT * FROM ' . $REX['TABLE_PREFIX'] . 'file_category ORDER BY name ASC');
// ***** select bauen
$sel_media = new rex_select();
$sel_media->setId("rex_file_category");
$sel_media->setName("rex_file_category");
$sel_media->setSize(1);
$sel_media->setStyle('class="rex-form-select"');
$sel_media->setSelected($rex_file_category);
$sel_media->setAttribute('onchange', 'this.form.submit();');
$sel_media->addOption($I18N->msg('pool_kats_no'), "0");
$mediacat_ids = array();
if ($rootCats = OOMediaCategory::getRootCategories()) {
    foreach ($rootCats as $rootCat) {
        rex_mediapool_addMediacatOptions($sel_media, $rootCat, $mediacat_ids);
    }
}
// ----- EXTENSION POINT
echo rex_register_extension_point('PAGE_MEDIAPOOL_HEADER', '', array('subpage' => $subpage, 'category_id' => $rex_file_category));
// ***** formular
$cat_out = '<div class="rex-form" id="rex-form-mediapool-selectcategory">
              <form action="index.php" method="post">
                <fieldset class="rex-form-col-1">
                  <legend>' . $I18N->msg('pool_select_cat') . '</legend>
                  
                  <div class="rex-form-wrapper">
                    <input type="hidden" name="page" value="mediapool" />
                    ' . $arg_fields . '
                    
                    <div class="rex-form-row">
function rex_medienpool_addMediacatOptions(&$select, &$mediacat, &$mediacat_ids, $groupName = '')
{
    return rex_mediapool_addMediacatOptions($select, $mediacat, $mediacat_ids, $groupName);
}