$arg_value) {
$arg_url .= '&args[' . urlencode($arg_name) . ']=' . urlencode($arg_value);
$arg_fields .= '' . "\n";
}
// ----- opener_input_field setzen
$opener_link = rex_request('opener_link', 'string');
$opener_input_field = rex_request('opener_input_field', 'string', '');
$pattern = '/[^a-z0-9_-]/i';
if (preg_match($pattern, $opener_input_field, $match)) {
throw new InvalidArgumentException(sprintf('Invalid character "%s" in opener_input_field.', $match[0]));
}
if ($opener_input_field != '') {
$arg_url .= '&opener_input_field=' . urlencode($opener_input_field);
$arg_fields .= '' . "\n";
}
// -------------- CatId in Session speichern
$file_id = rex_request('file_id', 'int');
$file_name = rex_request('file_name', 'string');
$rex_file_category = rex_request('rex_file_category', 'rex-mediacategory-id', -1);
if ($file_name != '') {
$sql = rex_sql::factory();
$sql->setQuery('select * from ' . $REX['TABLE_PREFIX'] . "file where filename='$file_name'");
if ($sql->getRows() == 1) {
$file_id = $sql->getValue('file_id');
$rex_file_category = $sql->getValue('category_id');
}
}
if ($rex_file_category == -1) {
$rex_file_category = rex_session('media[rex_file_category]', 'int');
}
$gc = rex_sql::factory();
$gc->setQuery('SELECT * FROM ' . $REX['TABLE_PREFIX'] . 'file_category WHERE id=' . $rex_file_category);
if ($gc->getRows() != 1) {
$rex_file_category = 0;
$rex_file_category_name = $I18N->msg('pool_kats_no');
} else {
$rex_file_category_name = $gc->getValue('name');
}
rex_set_session('media[rex_file_category]', $rex_file_category);
// -------------- PERMS
$PERMALL = false;
if ($REX['USER']->isAdmin() || $REX['USER']->hasPerm('media[0]')) {
$PERMALL = true;
}
// -------------- Header
$subline = array(
array('', $I18N->msg('pool_file_list')),
array('add_file', $I18N->msg('pool_file_insert')),
);
if ($REX['USER']->isAdmin() || $REX['USER']->hasPerm('editMediaCategories[]')) {
$subline[] = array('categories', $I18N->msg('pool_cat_list'));
}
if ($REX['USER']->isAdmin()) {
$subline[] = array('sync', $I18N->msg('pool_sync_files'));
}
// Arg Url an Menulinks anhaengen
foreach ($subline as $key => $item) {
$subline[$key][2] = '';
$subline[$key][3] = $arg_url;
}
// ----- EXTENSION POINT
$subline = rex_register_extension_point('PAGE_MEDIAPOOL_MENU', $subline,
array(
'subpage' => $subpage,
)
);
$title = $I18N->msg('pool_media');
rex_title($title, $subline);
// -------------- Messages
if ($info != '') {
echo rex_info_block($info);
$info = '';
}
if ($warning != '') {
echo rex_warning_block($warning);
$warning = '';
}
// -------------- Javascripts
?>
$subpage,
)
);
if ($content != '') {
echo $content;
} else {
switch ($subpage) {
case 'add_file' : $file = 'mediapool.upload.inc.php'; break;
case 'categories': $file = 'mediapool.structure.inc.php'; if ($REX['USER']->isAdmin() || $REX['USER']->hasPerm('editMediaCategories[]')) break;
case 'sync' : $file = 'mediapool.sync.inc.php'; if ($REX['USER']->isAdmin()) break;
default : $file = 'mediapool.media.inc.php'; break;
}
require $REX['INCLUDE_PATH'] . '/pages/' . $file;
}