* @package redaxo\yrewrite * * @var rex_addon $this */ $func = rex_request('func', 'string'); if ($func != '') { if ($func == 'htaccess') { rex_yrewrite::copyHtaccess(); echo rex_view::success($this->i18n('htaccess_hasbeenset')); } } $content = ' <h3>' . $this->i18n('htaccess_set') . '</h3> <p>' . rex_i18n::rawMsg('yrewrite_htaccess_info') . '</p> <p><a class="btn btn-primary" href="' . rex_url::currentBackendPage(['func' => 'htaccess']) . '">' . $this->i18n('yrewrite_htaccess_set') . '</a></p> <h3>' . $this->i18n('info_headline') . '</h3> <p>' . rex_i18n::rawMsg('yrewrite_info_text') . '</p> <h3>' . $this->i18n('info_seo') . '</h3> <p>' . rex_i18n::rawMsg('yrewrite_info_seo_text') . ' <br /><br />' . highlight_string('<?php $seo = new rex_yrewrite_seo(); echo $seo->getTitleTag(); echo $seo->getDescriptionTag(); echo $seo->getRobotsTag(); echo $seo->getHreflangTags(); ?>', true) . '
$activeTab = rex_request('template_tab', 'string', 'rex-form-template-default'); $optionTabs = ['rex-form-template-default' => rex_i18n::msg('header_template'), 'rex-form-template-ctype' => rex_i18n::msg('content_types'), 'rex-form-template-categories' => rex_i18n::msg('template_categories')]; $options = '<ul class="nav nav-tabs" id="rex-js-form-template-tabs">'; foreach ($optionTabs as $optionTabId => $optionTabTitle) { $options .= '<li><a href="#' . $optionTabId . '" data-toggle="tab">' . $optionTabTitle . '</a></li>'; } $options .= '</ul>'; $fragment = new rex_fragment(); $fragment->setVar('class', 'edit', false); $fragment->setVar('title', $legend, false); $fragment->setVar('options', $options, false); $fragment->setVar('body', $panel, false); $fragment->setVar('buttons', $buttons, false); $content = $fragment->parse('core/page/section.php'); $content = ' <form id="rex-form-template" action="' . rex_url::currentBackendPage() . '" method="post"> ' . $content . ' </form> <script type="text/javascript"> <!-- jQuery(function($) { // store the currently selected tab in the hidden input#rex-js-form-template-tab $("#rex-js-form-template-tabs > li > a").on("shown.bs.tab", function(e) { var id = $(e.target).attr("href").substr(1); $("#rex-js-form-template-tab").val(id); }); $("#rex-js-form-template-tabs a[href=\\"#' . $activeTab . '\\"]").tab("show"); $("#rex-js-active").click(function() { $("#rex-js-form-template-tabs a[href=\\"#rex-form-template-ctype\\"]").toggle("slow");
//echo '<h2>' . rex_i18n::msg('backup_files') . '</h2>'; $content = '<fieldset> <input type="hidden" name="function" value="fileimport" />'; $formElements = []; $n = []; $n['label'] = '<label for="rex-form-importtarfile">' . rex_i18n::msg('backup_file') . '</label>'; $n['field'] = '<input type="file" id="rex-form-importtarfile" name="FORM[importfile]" size="18" />'; $formElements[] = $n; $fragment = new rex_fragment(); $fragment->setVar('flush', true); $fragment->setVar('elements', $formElements, false); $content .= $fragment->parse('core/form/form.php'); $formElements = []; $n = []; $n['field'] = '<button class="btn btn-send rex-form-aligned" type="submit" value="' . rex_i18n::msg('backup_to_import') . '"><i class="rex-icon rex-icon-import"></i> ' . rex_i18n::msg('backup_to_import') . '</button>'; $formElements[] = $n; $fragment = new rex_fragment(); $fragment->setVar('flush', true); $fragment->setVar('elements', $formElements, false); $buttons = $fragment->parse('core/form/submit.php'); $content .= '</fieldset>'; $fragment = new rex_fragment(); $fragment->setVar('title', rex_i18n::msg('backup_file_export'), false); $fragment->setVar('body', $content, false); $fragment->setVar('buttons', $buttons, false); $content = $fragment->parse('core/page/section.php'); $content = ' <form action="' . rex_url::currentBackendPage() . '" enctype="multipart/form-data" method="post" data-confirm="' . rex_i18n::msg('backup_proceed_file_import') . '" > ' . $content . ' </form>'; echo $content;
<?php $plugin = rex_plugin::get('out5', 'wartungsarbeiten'); $content = ''; if (rex_post('config-submit', 'boolean')) { $plugin->setConfig(rex_post('config', [['url', 'string']])); $content .= rex_view::info('Änderung gespeichert'); } $content .= ' <div class="rex-form"> <form action="' . rex_url::currentBackendPage() . '" method="post"> <fieldset>'; $formElements = []; $n = []; $n['label'] = '<label for="rex-out5-wartungsarbeiten-url">URL</label>'; $n['field'] = '<input class="form-control" type="text" id="rex-out5-wartungsarbeiten-url" name="config[url]" value="' . $plugin->getConfig('url') . '"/>'; $formElements[] = $n; $fragment = new rex_fragment(); $fragment->setVar('elements', $formElements, false); $content .= $fragment->parse('core/form/form.php'); $content .= ' </fieldset> <fieldset class="rex-form-action">'; $formElements = []; $n = []; $n['field'] = '<div class="btn-toolbar"><button id="rex-out5-wartungsarbeiten-save" type="submit" name="config-submit" class="btn btn-save rex-form-aligned" value="1">Einstellungen speichern</button></div>'; $formElements[] = $n; $fragment = new rex_fragment(); $fragment->setVar('elements', $formElements, false); $content .= $fragment->parse('core/form/submit.php');
<?php if (rex_request('func', 'string') == 'clearall') { rex_article_slice_history::clearAllHistory(); echo rex_view::success($this->i18n('deleted')); } $content = rex_i18n::rawMsg('structure_history_info_content'); $content .= '<p><a href="' . rex_url::currentBackendPage(['func' => 'clearall']) . '" class="btn btn-setup">' . $this->i18n('button_delete_history') . '</a></p>'; $fragment = new rex_fragment(); $fragment->setVar('title', $this->i18n('title_info')); $fragment->setVar('body', $content, false); echo $fragment->parse('core/page/section.php'); $fragment = new rex_fragment(); $fragment->setVar('title', $this->i18n('todos')); $fragment->setVar('body', rex_i18n::rawMsg('structure_history_todos_content', true), false); echo $fragment->parse('core/page/section.php');
} foreach (encode_items($qryArray) as $line) { if (empty($firstLineKeys)) { $firstLineKeys = array_keys($line); fputcsv($file, $firstLineKeys); $firstLineKeys = array_flip($firstLineKeys); } fputcsv($file, array_merge($firstLineKeys, $line)); } fclose($file); exit; // -----/CSV EXPORT } } $content = '<div id="aufgaben">'; $content .= '<form action="' . rex_url::currentBackendPage() . '" data-pjax="false" method="post">'; $content .= '<fieldset>'; $content .= '<dl class="rex-form-group form-group"> <dt>Dateityp wählen</dt> <dd> <dl class="rex-form-group form-group"> <dd> <div class="radio"> <input id="export-csv" type="radio" value="csv" name="type" checked/> <label for="export-csv">' . $this->i18n('aufgaben_exim_dateityp_csv') . '</label> </div> </dd> </dl> <dl class="rex-form-group form-group"> <dd> <div class="radio">
} foreach ([1 => 'ADD', 2 => 'EDIT', 4 => 'DELETE'] as $var => $value) { if (($sql->getValue('postsavemode') & $var) == $var) { $postsavemode[] = $value; } } $content .= ' <tr> <td class="rex-table-icon"><a href="' . rex_url::currentBackendPage(['action_id' => $sql->getValue('id'), 'function' => 'edit']) . '" title="' . htmlspecialchars($sql->getValue('name')) . '"><i class="rex-icon rex-icon-action"></i></a></td> <td class="rex-table-id" data-title="' . rex_i18n::msg('id') . '">' . $sql->getValue('id') . '</td> <td data-title="' . rex_i18n::msg('action_name') . '"><a href="' . rex_url::currentBackendPage(['action_id' => $sql->getValue('id'), 'function' => 'edit']) . '">' . htmlspecialchars($sql->getValue('name')) . '</a></td> <td data-title="' . rex_i18n::msg('action_header_preview') . '">' . implode('/', $previewmode) . '</td> <td data-title="' . rex_i18n::msg('action_header_presave') . '">' . implode('/', $presavemode) . '</td> <td data-title="' . rex_i18n::msg('action_header_postsave') . '">' . implode('/', $postsavemode) . '</td> <td class="rex-table-action"><a href="' . rex_url::currentBackendPage(['action_id' => $sql->getValue('id'), 'function' => 'edit']) . '"><i class="rex-icon rex-icon-edit"></i> ' . rex_i18n::msg('change') . '</a></td> <td class="rex-table-action"><a href="' . rex_url::currentBackendPage(['action_id' => $sql->getValue('id'), 'function' => 'delete']) . '" data-confirm="' . rex_i18n::msg('action_delete') . ' ?"><i class="rex-icon rex-icon-delete"></i> ' . rex_i18n::msg('delete') . '</a></td> </tr> '; $sql->next(); } $content .= '</tbody>' . "\n"; } $content .= ' </table>'; if ($rows < 1) { $content .= rex_view::info(rex_i18n::msg('actions_not_found')); } echo $message; $fragment = new rex_fragment(); $fragment->setVar('title', rex_i18n::msg('action_caption'), false); $fragment->setVar('content', $content, false);
$list->setColumnLayout('priority', ['<th class="rex-table-priority">###VALUE###</th>', '<td class="rex-table-priority">###VALUE###</td>']); // icon column $thIcon = '<a href="' . $list->getUrl(['type_id' => $type_id, 'func' => 'add']) . '" title="' . rex_i18n::msg('media_manager_effect_create') . '"><i class="rex-icon rex-icon-add-mediatype-effect"></i></a>'; $tdIcon = '<i class="rex-icon rex-icon-mediatype-effect"></i>'; $list->addColumn($thIcon, $tdIcon, 0, ['<th class="rex-table-icon">###VALUE###</th>', '<td class="rex-table-icon">###VALUE###</td>']); $list->setColumnParams($thIcon, ['func' => 'edit', 'type_id' => $type_id, 'effect_id' => '###id###']); // functions column spans 2 data-columns $funcs = rex_i18n::msg('media_manager_effect_functions'); $list->addColumn($funcs, '<i class="rex-icon rex-icon-edit"></i> ' . rex_i18n::msg('media_manager_effect_edit'), -1, ['<th class="rex-table-action" colspan="2">###VALUE###</th>', '<td class="rex-table-action">###VALUE###</td>']); $list->setColumnParams($funcs, ['func' => 'edit', 'type_id' => $type_id, 'effect_id' => '###id###']); $delete = 'deleteCol'; $list->addColumn($delete, '<i class="rex-icon rex-icon-delete"></i> ' . rex_i18n::msg('media_manager_effect_delete'), -1, ['', '<td class="rex-table-action">###VALUE###</td>']); $list->setColumnParams($delete, ['type_id' => $type_id, 'effect_id' => '###id###', 'func' => 'delete']); $list->addLinkAttribute($delete, 'data-confirm', rex_i18n::msg('delete') . ' ?'); $content = $list->get(); $footer = '<a class="btn btn-back" href="' . rex_url::currentBackendPage() . '">' . rex_i18n::msg('media_manager_back') . '</a>'; $fragment = new rex_fragment(); $fragment->setVar('title', rex_i18n::RawMsg('media_manager_effect_caption', $typeName), false); $fragment->setVar('content', $content, false); $fragment->setVar('footer', $footer, false); $content = $fragment->parse('core/page/section.php'); echo $content; } elseif ($func == 'add' && $type_id > 0 || $func == 'edit' && $effect_id > 0 && $type_id > 0) { $effectNames = rex_media_manager::getSupportedEffectNames(); if ($func == 'edit') { $formLabel = rex_i18n::RawMsg('media_manager_effect_edit_header', htmlspecialchars($typeName)); } elseif ($func == 'add') { $formLabel = rex_i18n::RawMsg('media_manager_effect_create_header', htmlspecialchars($typeName)); } $form = rex_form::factory(rex::getTablePrefix() . 'media_manager_type_effect', '', 'id=' . $effect_id); // image_type_id for reference to save into the db
<th class="rex-table-action">' . $this->i18n('header_function') . '</th> </tr> </thead> <tbody>'; foreach ($addons as $key => $addon) { if (rex_addon::exists($key)) { $content .= ' <tr> <td class="rex-table-icon"><i class="rex-icon rex-icon-package"></i></td> <td data-title="' . $this->i18n('key') . '">' . $key . '</td> <td data-title="' . $this->i18n('name') . '"><b>' . $addon['name'] . '</b><br /><span class="text-muted">' . $addon['author'] . '</span></td> <td data-title="' . $this->i18n('shortdescription') . '">' . nl2br($addon['shortdescription']) . '</td> <td class="rex-table-action"><span class="text-nowrap"><i class="rex-icon rex-icon-package-exists"></i> ' . $this->i18n('addon_already_exists') . '</span></td> </tr>'; } else { $url = rex_url::currentBackendPage(['addonkey' => $key]); $content .= ' <tr> <td class="rex-table-icon"><a href="' . $url . '"><i class="rex-icon rex-icon-package"></i></a></td> <td data-title="' . $this->i18n('key') . '"><a href="' . $url . '">' . $key . '</a></td> <td data-title="' . $this->i18n('name') . '"><b>' . $addon['name'] . '</b><br /><span class="text-muted">' . $addon['author'] . '</span></td> <td data-title="' . $this->i18n('shortdescription') . '">' . nl2br($addon['shortdescription']) . '</td> <td class="rex-table-action"><a href="' . $url . '"><i class="rex-icon rex-icon-view"></i> ' . rex_i18n::msg('view') . '</a></td> </tr>'; } } $content .= '</tbody></table>'; $content .= ' <script type="text/javascript"> <!-- jQuery(function($) {
/** * @param rex_context $context * * @return string * * @package redaxo\structure */ function rex_structure_searchbar(rex_context $context) { $message = ''; $search_result = ''; // ------------ Parameter $clang = $context->getParam('clang', 1); $category_id = $context->getParam('category_id', 0); $article_id = $context->getParam('article_id', 0); $search_article_name = rex_request('search_article_name', 'string'); // ------------ Suche via ArtikelId if (preg_match('/^[0-9]+$/', $search_article_name, $matches)) { if ($OOArt = rex_article::get($matches[0], $clang)) { rex_response::sendRedirect($context->getUrl(['page' => 'content/edit', 'article_id' => $OOArt->getId()], false)); } } // Auswahl eines normalen Artikels => category holen if ($article_id != 0) { $OOArt = rex_article::get($article_id, $clang); // Falls Artikel gerade geloescht wird, gibts keinen rex_article if ($OOArt) { $category_id = $OOArt->getCategoryId(); } } // ------------ Suche via ArtikelName if (rex_request('search_start', 'bool')) { // replace LIKE wildcards $search_article_name_like = str_replace(['_', '%'], ['\\_', '\\%'], $search_article_name); $qry = ' SELECT id FROM ' . rex::getTablePrefix() . 'article WHERE clang_id = ' . $clang . ' AND ( name LIKE "%' . $search_article_name_like . '%" OR catname LIKE "%' . $search_article_name_like . '%" )'; if (rex_addon::get('structure')->getConfig('searchmode', 'local') != 'global') { // Suche auf aktuellen Kontext eingrenzen if ($category_id != 0) { $qry .= ' AND path LIKE "%|' . $category_id . '|%"'; } } $search = rex_sql::factory(); // $search->setDebug(); $search->setQuery($qry); $foundRows = $search->getRows(); // Suche ergab nur einen Treffer => Direkt auf den Treffer weiterleiten if ($foundRows == 1) { $OOArt = rex_article::get($search->getValue('id'), $clang); if (rex::getUser()->getComplexPerm('structure')->hasCategoryPerm($OOArt->getCategoryId())) { rex_response::sendRedirect($context->getUrl(['page' => 'content/edit', 'article_id' => $search->getValue('id')], false)); } } elseif ($foundRows > 0) { $needle = htmlspecialchars($search_article_name); $search_result .= '<div class="list-group">'; for ($i = 0; $i < $foundRows; ++$i) { $breadcrumb = []; $OOArt = rex_article::get($search->getValue('id'), $clang); $label = $OOArt->getName(); if (rex::getUser()->getComplexPerm('structure')->hasCategoryPerm($OOArt->getCategoryId())) { $label .= ' [' . $search->getValue('id') . ']'; $highlightHit = function ($string, $needle) { return preg_replace('/(.*)(' . preg_quote($needle, '/') . ')(.*)/i', '\\1<mark>\\2</mark>\\3', $string); }; foreach ($OOArt->getParentTree() as $treeItem) { $treeLabel = $treeItem->getName(); if (rex::getUser()->hasPerm('advancedMode[]')) { $treeLabel .= ' [' . $treeItem->getId() . ']'; } $treeLabel = htmlspecialchars($treeLabel); $treeLabel = $highlightHit($treeLabel, $needle); $e = []; $e['title'] = $treeLabel; $e['href'] = $context->getUrl(['page' => 'structure', 'category_id' => $treeItem->getId()]); $breadcrumb[] = $e; } $label = htmlspecialchars($label); $label = $highlightHit($label, $needle); $e = []; $e['title'] = $label; $e['href'] = $context->getUrl(['page' => 'content/edit', 'article_id' => $treeItem->getId()]); $breadcrumb[] = $e; $fragment = new rex_fragment(); $fragment->setVar('items', $breadcrumb, false); $search_result .= '<div class="list-group-item">' . $fragment->parse('core/navigations/breadcrumb.php') . '</div>'; } $search->next(); } $search_result .= '</div>'; $fragment = new rex_fragment(); $fragment->setVar('title', rex_i18n::msg('be_search_result'), false); $fragment->setVar('content', $search_result, false); $search_result = $fragment->parse('core/page/section.php'); } else { $message = rex_view::info(rex_i18n::msg('be_search_no_results')); } } $select_name = 'category_id'; $add_homepage = true; if (rex_be_controller::getCurrentPagePart(1) == 'content') { $select_name = 'article_id'; $add_homepage = false; } $category_select = new rex_category_select(false, false, true, $add_homepage); $category_select->setName($select_name); $category_select->setSize('1'); $category_select->setAttribute('onchange', 'this.form.submit();'); $category_select->setSelected($category_id); $select = $category_select->get(); $doc = new DOMDocument(); $doc->loadHTML('<?xml encoding="UTF-8">' . $select); $options = $doc->getElementsByTagName('option'); $droplistContext = new rex_context(['page' => 'structure', 'category_id' => 0]); $button_label = ''; $items = []; foreach ($options as $option) { $value = ''; $item = []; if ($option->hasAttributes()) { foreach ($option->attributes as $attribute) { if ($attribute->name == 'value') { $value = $attribute->value; $droplistContext->setParam('category_id', $value); if ($attribute->value == $category_id) { $button_label = str_replace(" ", '', $option->nodeValue); $item['active'] = true; } } } } $item['title'] = preg_replace('/\\[([0-9]+)\\]$/', '<small class="rex-primary-id">$1</small>', $option->nodeValue); $item['href'] = $droplistContext->getUrl(); $items[] = $item; } $fragment = new rex_fragment(); $fragment->setVar('button_prefix', rex_i18n::msg('be_search_quick_navi')); $fragment->setVar('button_label', $button_label); $fragment->setVar('items', $items, false); $droplist = '<div class="navbar-btn navbar-right">' . $fragment->parse('core/dropdowns/dropdown.php'); $formElements = []; $n = []; $n['field'] = '<input class="form-control" type="text" name="search_article_name" value="' . htmlspecialchars($search_article_name) . '" placeholder="' . htmlspecialchars(rex_i18n::msg('be_search_article_name') . '/' . rex_i18n::msg('be_search_article_id')) . '" />'; $n['right'] = '<button class="btn btn-search" type="submit" name="search_start" value="1">' . rex_i18n::msg('be_search_start') . '</button>'; $formElements[] = $n; $fragment = new rex_fragment(); $fragment->setVar('elements', $formElements, false); $toolbar = $fragment->parse('core/form/input_group.php'); $toolbar = ' <form action="' . rex_url::currentBackendPage() . '" method="post"> ' . $context->getHiddenInputFields() . ' <div class="navbar-form navbar-left"> <div class="form-group"> ' . $toolbar . ' </div> </div> </form>'; $toolbar = rex_view::toolbar($toolbar . $droplist, rex_i18n::msg('be_search_search')); return $toolbar . $search_result; }
public static function getMissingWildcardsAsTable() { $missingWildcards = self::getMissingWildcards(); if (count($missingWildcards)) { $content = ''; $content .= ' <table class="table table-striped table-hover"> <thead> <tr> <th class="rex-table-icon"></th> <th>' . \rex_addon::get('sprog')->i18n('wildcard') . '</th> <th class="rex-table-action" colspan="2">' . \rex_addon::get('sprog')->i18n('function') . '</th> </tr> </thead> <tbody> '; foreach ($missingWildcards as $name => $params) { $content .= ' <tr> <td class="rex-table-icon"><i class="rex-icon rex-icon-refresh"></i></td> <td data-title="' . \rex_addon::get('sprog')->i18n('wildcard') . '">' . $name . '</td> <td class="rex-table-action"><a href="' . \rex_url::currentBackendPage(['func' => 'add', 'wildcard_name' => $params['wildcard']]) . '"><i class="rex-icon rex-icon-edit"></i> ' . \rex_addon::get('sprog')->i18n('function_add') . '</a></td> <td class="rex-table-action"><a href="' . $params['url'] . '"><i class="rex-icon rex-icon-article"></i> ' . \rex_addon::get('sprog')->i18n('wildcard_go_to_the_article') . '</a></td> </tr>'; } $content .= ' </tbody> </table>'; $fragment = new \rex_fragment(); $fragment->setVar('title', \rex_addon::get('sprog')->i18n('wildcard_caption_missing', \rex_addon::get('structure')->i18n('title_structure')), false); $fragment->setVar('content', $content, false); $content = $fragment->parse('core/page/section.php'); return $content; } }
if ($package->getPackageId() == rex_get('package', 'string') && rex_api_function::hasMessage()) { $message = ' <tr class="rex-package-message"> <td colspan="8"> ' . rex_api_function::getMessage() . ' </td> </tr>'; $class = ' mark'; } $version = trim($package->getVersion()) != '' ? ' <span class="rex-' . $type . '-version">' . trim($package->getVersion()) . '</span>' : ''; return $message . ' <tr class="rex-package-is-' . $type . $class . '"> <td class="rex-table-icon"><i class="rex-icon rex-icon-package-' . $type . '"></i></td> <td data-title="' . rex_i18n::msg('package_hname') . '">' . $name . '</td> <td data-title="' . rex_i18n::msg('package_hversion') . '">' . $version . '</td> <td class="rex-table-slim" data-title="' . rex_i18n::msg('package_hhelp') . '"><a href="' . rex_url::currentBackendPage(['subpage' => 'help', 'package' => $packageId]) . '" title="' . rex_i18n::msg('package_help') . ' ' . htmlspecialchars($package->getName()) . '"><i class="rex-icon rex-icon-help"></i> <span class="sr-only">' . rex_i18n::msg('package_help') . ' ' . htmlspecialchars($package->getName()) . '</span></a></td> <td class="rex-table-action" data-pjax-container="#rex-js-page-container">' . $install . '</td> <td class="rex-table-action" data-pjax-container="#rex-js-page-container">' . $status . '</td> <td class="rex-table-action" data-pjax-container="#rex-js-page-container">' . $uninstall . '</td> <td class="rex-table-action" data-pjax-container="#rex-js-page-container">' . $delete . '</td> </tr>' . "\n "; }; foreach (rex_addon::getRegisteredAddons() as $addonName => $addon) { $content .= $getTableRow($addon); if ($addon->isActivated()) { foreach ($addon->getRegisteredPlugins() as $pluginName => $plugin) { $content .= $getTableRow($plugin); } } } $content .= '</tbody>
$formElements[] = $n; $n = []; $n['label'] = '<label>' . rex_i18n::msg('yform_manager_import_file') . '</label>'; $n['field'] = '<input class="form-control" type="file" name="file_new" />'; $formElements[] = $n; $fragment = new rex_fragment(); $fragment->setVar('elements', $formElements, false); $content .= $fragment->parse('core/form/form.php'); $content .= '</fieldset>'; $formElements = []; $n = []; $n['field'] = '<a class="btn btn-abort" href="' . rex_url::currentBackendPage($this->getLinkVars()) . '">' . rex_i18n::msg('form_abort') . '</a>'; $formElements[] = $n; $n = []; $n['field'] = '<button class="btn btn-save rex-form-aligned" type="submit" name="save" value="' . rex_i18n::msg('yform_manager_import_start') . '">' . rex_i18n::msg('yform_manager_import_start') . '</button>'; $formElements[] = $n; $fragment = new rex_fragment(); $fragment->setVar('elements', $formElements, false); $buttons = $fragment->parse('core/form/submit.php'); $fragment = new rex_fragment(); $fragment->setVar('class', 'edit', false); $fragment->setVar('title', rex_i18n::msg('yform_manager_import_csv'), false); $fragment->setVar('body', $content, false); $fragment->setVar('buttons', $buttons, false); $content = $fragment->parse('core/page/section.php'); $content = ' <form action="' . rex_url::currentBackendPage() . '" data-pjax="false" method="post" enctype="multipart/form-data"> ' . $content . ' </form>'; echo $content; }
$list->setColumnParams('name', ['func' => 'edit', 'field_id' => '###id###']); $list->addColumn(rex_i18n::msg('minfo_field_label_functions'), '<i class="rex-icon rex-icon-edit"></i> ' . rex_i18n::msg('edit')); $list->setColumnLayout(rex_i18n::msg('minfo_field_label_functions'), ['<th class="rex-table-action" colspan="2">###VALUE###</th>', '<td class="rex-table-action">###VALUE###</td>']); $list->setColumnParams(rex_i18n::msg('minfo_field_label_functions'), ['func' => 'edit', 'field_id' => '###id###']); $list->addLinkAttribute(rex_i18n::msg('minfo_field_label_functions'), 'class', 'rex-edit'); $list->addColumn('delete', '<i class="rex-icon rex-icon-delete"></i> ' . rex_i18n::msg('delete')); $list->setColumnLayout('delete', ['', '<td class="rex-table-action">###VALUE###</td>']); $list->setColumnParams('delete', ['func' => 'delete', 'field_id' => '###id###']); $list->addLinkAttribute('delete', 'data-confirm', rex_i18n::msg('delete') . ' ?'); $list->addLinkAttribute('delete', 'class', 'rex-delete'); $list->setNoRowsMessage(rex_i18n::msg('minfo_metainfos_not_found')); $content .= $list->get(); $fragment = new rex_fragment(); $fragment->setVar('title', $title); if (in_array($prefix, ['art_', 'med_'])) { $defaultFields = sprintf('<div class="btn-group btn-group-xs"><a href="%s" class="btn btn-default">%s</a></div>', rex_url::currentBackendPage(['rex-api-call' => 'metainfo_default_fields_create', 'type' => $subpage]), rex_i18n::msg('minfo_default_fields_create')); $fragment->setVar('options', $defaultFields, false); } $fragment->setVar('content', $content, false); $content = $fragment->parse('core/page/section.php'); } elseif ($func == 'edit' || $func == 'add') { $title = rex_i18n::msg('minfo_field_fieldset'); $form = new rex_metainfo_table_expander($prefix, $metaTable, rex::getTablePrefix() . 'metainfo_field', 'id=' . $field_id); if ($func == 'edit') { $form->addParam('field_id', $field_id); } $content .= $form->get(); $fragment = new rex_fragment(); $fragment->setVar('class', 'edit', false); $fragment->setVar('title', $title); $fragment->setVar('body', $content, false);
/** * Ausgabe des Medienpool Formulars. */ function rex_mediapool_Mediaform($form_title, $button_title, $rex_file_category, $file_chooser, $close_form) { global $ftitle, $warning, $info; $s = ''; $cats_sel = new rex_media_category_select(); $cats_sel->setStyle('class="form-control"'); $cats_sel->setSize(1); $cats_sel->setName('rex_file_category'); $cats_sel->setId('rex-mediapool-category'); $cats_sel->addOption(rex_i18n::msg('pool_kats_no'), '0'); $cats_sel->setAttribute('onchange', 'this.form.submit()'); $cats_sel->setSelected($rex_file_category); if (isset($warning)) { if (is_array($warning)) { if (count($warning) > 0) { $s .= rex_view::error(implode('<br />', $warning)); } } elseif ($warning != '') { $s .= rex_view::error($warning); } $warning = ''; } if (isset($info)) { if (is_array($info)) { if (count($info) > 0) { $s .= rex_view::success(implode('<br />', $info)); } } elseif ($info != '') { $s .= rex_view::success($info); } $info = ''; } if (!isset($ftitle)) { $ftitle = ''; } $arg_fields = ''; foreach (rex_request('args', 'array') as $arg_name => $arg_value) { $arg_fields .= '<input type="hidden" name="args[' . $arg_name . ']" value="' . $arg_value . '" />' . "\n"; } $opener_input_field = rex_request('opener_input_field', 'string'); if ($opener_input_field != '') { $arg_fields .= '<input type="hidden" name="opener_input_field" value="' . htmlspecialchars($opener_input_field) . '" />' . "\n"; } $add_submit = ''; if ($close_form && $opener_input_field != '') { $add_submit = '<button class="btn btn-save" type="submit" name="saveandexit" value="' . rex_i18n::msg('pool_file_upload_get') . '"' . rex::getAccesskey(rex_i18n::msg('pool_file_upload_get'), 'save') . '>' . rex_i18n::msg('pool_file_upload_get') . '</button>'; } $panel = ''; $formElements = []; $e = []; $e['label'] = '<label for="rex-mediapool-title">' . rex_i18n::msg('pool_file_title') . '</label>'; $e['field'] = '<input class="form-control" type="text" id="rex-mediapool-title" name="ftitle" value="' . htmlspecialchars($ftitle) . '" />'; $formElements[] = $e; $e = []; $e['label'] = '<label for="rex-mediapool-category">' . rex_i18n::msg('pool_file_category') . '</label>'; $e['field'] = $cats_sel->get(); $formElements[] = $e; $fragment = new rex_fragment(); $fragment->setVar('elements', $formElements, false); $panel .= $fragment->parse('core/form/form.php'); $panel .= rex_extension::registerPoint(new rex_extension_point('MEDIA_FORM_ADD', '')); if ($file_chooser) { $e = []; $e['label'] = '<label for="rex-mediapool-choose-file">' . rex_i18n::msg('pool_file_file') . '</label>'; $e['field'] = '<input id="rex-mediapool-choose-file" type="file" name="file_new" />'; $e['note'] = '<h3>' . rex_i18n::msg('phpini_settings') . '</h3> <dl class="dl-horizontal"> ' . (rex_ini_get('file_uploads') == 0 ? '<dt><span class="text-warning">' . rex_i18n::msg('pool_upload') . '</span></dt><dd><span class="text-warning">' . rex_i18n::msg('pool_upload_disabled') . '</span></dd>' : '') . ' <dt>' . rex_i18n::msg('pool_max_uploadsize') . ':</dt><dd>' . rex_formatter::bytes(rex_ini_get('upload_max_filesize')) . '</dd> <dt>' . rex_i18n::msg('pool_max_uploadtime') . ':</dt><dd>' . rex_ini_get('max_input_time') . 's</dd> </dl>'; $fragment = new rex_fragment(); $fragment->setVar('elements', [$e], false); $panel .= $fragment->parse('core/form/form.php'); } $formElements = []; $e = []; $e['field'] = '<button class="btn btn-save" type="submit" name="save" value="' . $button_title . '"' . rex::getAccesskey($button_title, 'save') . '>' . $button_title . '</button>'; $formElements[] = $e; $e = []; $e['field'] = $add_submit; $formElements[] = $e; $fragment = new rex_fragment(); $fragment->setVar('elements', $formElements, false); $buttons = $fragment->parse('core/form/submit.php'); $fragment = new rex_fragment(); $fragment->setVar('title', $form_title, false); $fragment->setVar('body', $panel, false); $fragment->setVar('buttons', $buttons, false); $content = $fragment->parse('core/page/section.php'); $s .= ' <form action="' . rex_url::currentBackendPage() . '" method="post" enctype="multipart/form-data"> <fieldset> <input type="hidden" name="media_method" value="add_file" /> ' . $arg_fields . ' ' . $content . ' </fieldset> '; if ($close_form) { $s .= '</form>' . "\n"; } return $s; }
$fragment->setVar('title', $this->i18n('template_headline') . ' ' . $template['name']); $fragment->setVar('body', $content, false); $sections .= $fragment->parse('core/page/section.php'); } } $content = ''; $formElements = []; $n = []; $n['field'] = '<button class="btn btn-save rex-form-aligned" type="submit" name="btn_save" value="' . $this->i18n('save') . '">' . $this->i18n('save') . '</button>'; $formElements[] = $n; $n = []; $n['field'] = '<button class="btn btn-reset" type="reset" name="btn_reset" value="' . $this->i18n('reset') . '" data-confirm="' . $this->i18n('reset_info') . '">' . $this->i18n('reset') . '</button>'; $formElements[] = $n; $fragment = new rex_fragment(); $fragment->setVar('flush', true); $fragment->setVar('elements', $formElements, false); $buttons = $fragment->parse('core/form/submit.php'); $fragment = new rex_fragment(); $fragment->setVar('class', 'edit', false); $fragment->setVar('body', $content, false); $fragment->setVar('buttons', $buttons, false); $sections .= $fragment->parse('core/page/section.php'); ?> <form action="<?php echo rex_url::currentBackendPage(); ?> " method="post"> <?php echo $sections; ?> </form>
$file_title .= ' [' . $file_id . ']'; // ----- opener $opener_link = ''; if ($opener_input_field == 'TINYIMG') { if (rex_media::isImageType(rex_file::extension($file_name))) { $opener_link .= '<a class="btn btn-select" href="javascript:insertImage(\'$file_name\',\'' . $files->getValue('title') . '\')">' . rex_i18n::msg('pool_image_get') . '</a>'; } } elseif ($opener_input_field == 'TINY') { $opener_link .= '<a class="btn btn-select" href="javascript:insertLink(\'' . $file_name . '\');"">' . rex_i18n::msg('pool_link_get') . '</a>'; } elseif ($opener_input_field != '') { $opener_link = '<a class="btn btn-xs btn-select" href="javascript:selectMedia(\'' . $file_name . '\', \'' . addslashes(htmlspecialchars($files->getValue('title'))) . '\');">' . rex_i18n::msg('pool_file_get') . '</a>'; if (substr($opener_input_field, 0, 14) == 'REX_MEDIALIST_') { $opener_link = '<a class="btn btn-xs btn-select" href="javascript:selectMedialist(\'' . $file_name . '\');">' . rex_i18n::msg('pool_file_get') . '</a>'; } } $ilink = rex_url::currentBackendPage(array_merge(['file_id' => $file_id, 'rex_file_category' => $rex_file_category], $arg_url)); $add_td = '<td></td>'; if ($PERMALL) { $add_td = '<td><input type="checkbox" name="selectedmedia[]" value="' . $file_name . '" /></td>'; } $panel .= '<tr> ' . $add_td . ' <td data-title="' . rex_i18n::msg('pool_file_thumbnail') . '"><a href="' . $ilink . '">' . $thumbnail . '</a></td> <td data-title="' . rex_i18n::msg('pool_file_info') . '"> <h3><a href="' . $ilink . '">' . htmlspecialchars($file_title) . '</a></h3> ' . $desc . ' <p>' . htmlspecialchars($file_name) . ' <span class="rex-filesize">' . $file_size . '</span></p> </td> <td data-title="' . rex_i18n::msg('pool_last_update') . '"><p class="rex-date">' . $file_stamp . '</p><p class="rex-author">' . htmlspecialchars($file_updateuser) . '</p></td> <td class="rex-table-action"><a href="' . $ilink . '">' . rex_i18n::msg('edit') . '</a></td> <td class="rex-table-action">';
$list->setColumnParams('edit', ['func' => 'edit', 'id' => '###id###']); $list->addColumn('funcs', '<i class="rex-icon rex-icon-delete"></i> ' . rex_i18n::msg('user_role_delete')); $list->setColumnLabel('funcs', rex_i18n::msg('user_functions')); $list->setColumnLayout('funcs', ['', '<td>###VALUE###</td>']); $list->setColumnParams('funcs', ['func' => 'delete', 'id' => '###id###']); $list->addLinkAttribute('funcs', 'data-confirm', rex_i18n::msg('delete') . ' ?'); $content .= $list->get(); $fragment = new rex_fragment(); $fragment->setVar('title', $title); $fragment->setVar('content', $content, false); $content = $fragment->parse('core/page/section.php'); } else { $title = $func == 'edit' ? rex_i18n::msg('edit_user_role') : rex_i18n::msg('add_user_role'); $form = rex_form::factory(rex::getTablePrefix() . 'user_role', $title, 'id = ' . $id); $form->addParam('id', $id); $form->setApplyUrl(rex_url::currentBackendPage()); $form->setEditMode($func == 'edit'); $field = $form->addTextField('name'); $field->setLabel(rex_i18n::msg('name')); $field = $form->addTextAreaField('description'); $field->setLabel(rex_i18n::msg('description')); $fieldContainer = $form->addContainerField('perms'); $fieldContainer->setMultiple(false); $group = 'all'; $fieldContainer->setActive($group); // Check all page permissions and add them to rex_perm if not already registered $registerImplicitePagePermissions = function ($pages) use(&$registerImplicitePagePermissions) { foreach ($pages as $page) { foreach ($page->getRequiredPermissions() as $perm) { // ignore admin perm and complex perms (with "/") if ($perm && !in_array($perm, ['isAdmin', 'admin', 'admin[]']) && strpos($perm, '/') === false && !rex_perm::has($perm)) {
foreach (rex_system_setting::getAll() as $setting) { $field = $setting->getField(); if (!$field instanceof rex_form_element) { throw new rex_exception(get_class($setting) . '::getField() must return a rex_form_element!'); } $field->setAttribute('name', 'settings[' . $setting->getKey() . ']'); $elements .= $field->get(); } $content[] = $elements; $fragment = new rex_fragment(); $fragment->setVar('content', $content, false); $content = $fragment->parse('core/page/grid.php'); $formElements = []; $n = []; $n['field'] = '<button class="btn btn-save rex-form-aligned" type="submit" name="sendit"' . rex::getAccesskey(rex_i18n::msg('system_update'), 'save') . '>' . rex_i18n::msg('system_update') . '</button>'; $formElements[] = $n; $fragment = new rex_fragment(); $fragment->setVar('elements', $formElements, false); $buttons = $fragment->parse('core/form/submit.php'); $fragment = new rex_fragment(); $fragment->setVar('class', 'edit', false); $fragment->setVar('title', rex_i18n::msg('system_settings')); $fragment->setVar('body', $content, false); $fragment->setVar('buttons', $buttons, false); $content = $fragment->parse('core/page/section.php'); $content = ' <form id="rex-form-system-setup" action="' . rex_url::currentBackendPage() . '" method="post"> <input type="hidden" name="func" value="updateinfos" /> ' . $content . ' </form>'; echo $content;
protected function editSlice($RE_CONTS, $RE_MODUL_IN, $RE_CTYPE, $RE_MODUL_ID, $artDataSql) { $formElements = []; $n = []; $n['field'] = '<a class="btn btn-abort" href="' . rex_url::currentBackendPage(['article_id' => $this->article_id, 'slice_id' => $RE_CONTS, 'ctype' => $RE_CTYPE, 'clang' => $this->clang]) . '#slice' . $RE_CONTS . '">' . rex_i18n::msg('form_abort') . '</a>'; $formElements[] = $n; $n = []; $n['field'] = '<button class="btn btn-save" type="submit" name="btn_save" value="1"' . rex::getAccesskey(rex_i18n::msg('save_block'), 'save') . '>' . rex_i18n::msg('save_block') . '</button>'; $formElements[] = $n; $n = []; $n['field'] = '<button class="btn btn-apply" type="submit" name="btn_update" value="1"' . rex::getAccesskey(rex_i18n::msg('update_block'), 'apply') . '>' . rex_i18n::msg('update_block') . '</button>'; $formElements[] = $n; $fragment = new rex_fragment(); $fragment->setVar('elements', $formElements, false); $slice_footer = $fragment->parse('core/form/submit.php'); $panel = ' <fieldset> <legend>' . rex_i18n::msg('edit_block') . '</legend> <input type="hidden" name="module_id" value="' . $RE_MODUL_ID . '" /> <input type="hidden" name="function" value="edit" /> <input type="hidden" name="save" value="1" /> <input type="hidden" name="update" value="0" /> <div class="rex-slice-input"> ' . $this->getStreamOutput('module/' . $RE_MODUL_ID . '/input', $RE_MODUL_IN) . ' </div> </fieldset> </form>'; $fragment = new rex_fragment(); $fragment->setVar('class', 'edit', false); $fragment->setVar('title', $this->getSliceHeading($artDataSql), false); $fragment->setVar('options', $this->getSliceMenu($artDataSql), false); $fragment->setVar('body', $panel, false); $fragment->setVar('footer', $slice_footer, false); $slice_content = $fragment->parse('core/page/section.php'); $slice_content = ' <li class="rex-slice rex-slice-edit" id="slice' . $RE_CONTS . '"> <form enctype="multipart/form-data" action="' . rex_url::currentBackendPage(['article_id' => $this->article_id, 'slice_id' => $RE_CONTS, 'ctype' => $RE_CTYPE, 'clang' => $this->clang]) . '#slice' . $RE_CONTS . '" method="post" id="REX_FORM"> ' . $slice_content . ' </form> <script type="text/javascript"> <!-- jQuery(function($) { $(":input:visible:enabled:not([readonly]):first", $("#REX_FORM")).focus(); }); //--> </script> </li> '; return $slice_content; }
if ($cronjob instanceof rex_cronjob) { $cronjobs[$class] = $cronjob; $select->addOption($cronjob->getTypeName(), $class); } } if ($func == 'add') { $select->setSelected('rex_cronjob_phpcode'); } $activeType = $field->getValue(); if ($func != 'add' && !in_array($activeType, $types)) { if (!$activeType && !$field->getValue()) { $warning = rex_i18n::rawMsg('cronjob_not_found'); } else { $warning = rex_i18n::rawMsg('cronjob_type_not_found', $field->getValue(), $activeType); } rex_response::sendRedirect(rex_url::currentBackendPage([rex_request('list', 'string') . '_warning' => $warning], false)); } $form->addFieldset($this->i18n('type_parameters')); $fieldContainer = $form->addContainerField('parameters'); $fieldContainer->setAttribute('style', 'display: none'); $fieldContainer->setMultiple(false); $fieldContainer->setActive($activeType); $env_js = ''; $visible = []; foreach ($cronjobs as $group => $cronjob) { $disabled = []; $envs = (array) $cronjob->getEnvironments(); if (!in_array('frontend', $envs)) { $disabled[] = 0; } if (!in_array('backend', $envs)) {
$content .= '</fieldset>'; $formElements = []; $n = []; $n['field'] = '<button class="btn btn-save rex-form-aligned" type="submit" value="1" name="upd_psw_button" ' . rex::getAccesskey(rex_i18n::msg('profile_save_psw'), 'save') . '>' . rex_i18n::msg('profile_save_psw') . '</button>'; $formElements[] = $n; $fragment = new rex_fragment(); $fragment->setVar('elements', $formElements, false); $buttons = $fragment->parse('core/form/submit.php'); $fragment = new rex_fragment(); $fragment->setVar('class', 'edit', false); $fragment->setVar('title', rex_i18n::msg('profile_changepsw'), false); $fragment->setVar('body', $content, false); $fragment->setVar('buttons', $buttons, false); $content = $fragment->parse('core/page/section.php'); $content = ' <form class="rex-js-form-profile-password" action="' . rex_url::currentBackendPage() . '" method="post"> ' . $content . ' </form> </div> <script type="text/javascript"> <!-- jQuery(function($) { $(".rex-js-form-profile-password") .submit(function(){ var pwInp0 = $(".rex-js-userpsw"); if(pwInp0.val() != "") { $(".rex-js-form-profile-password").append(\'<input type="hidden" name="\'+pwInp0.attr("name")+\'" value="\'+Sha1.hash(pwInp0.val())+\'" />\'); pwInp0.removeAttr("name"); }
<th class="rex-table-width-5">' . rex_i18n::msg('backup_filesize') . '</th> <th class="rex-table-width-5">' . rex_i18n::msg('backup_createdate') . '</th> <th class="rex-table-action" colspan="3">' . rex_i18n::msg('backup_function') . '</th> </tr> </thead> <tbody>'; $dir = rex_backup::getDir(); $folder = rex_backup::getBackupFiles('.tar.gz'); foreach ($folder as $file) { $filepath = $dir . '/' . $file; $filec = date('d.m.Y H:i', filemtime($filepath)); $filesize = rex_file::formattedSize($filepath); $content .= '<tr> <td class="rex-table-icon"><i class="rex-icon rex-icon-file-archive"></i></td> <td data-title="' . rex_i18n::msg('backup_filename') . '">' . $file . '</td> <td data-title="' . rex_i18n::msg('backup_filesize') . '">' . $filesize . '</td> <td data-title="' . rex_i18n::msg('backup_createdate') . '">' . $filec . '</td> <td class="rex-table-action"><a href="' . rex_url::currentBackendPage(['function' => 'fileimport', 'impname' => $file]) . '" title="' . rex_i18n::msg('backup_import_file') . '" data-confirm="' . rex_i18n::msg('backup_proceed_file_import') . '"><i class="rex-icon rex-icon-import"></i> ' . rex_i18n::msg('backup_to_import') . '</a></td> <td class="rex-table-action"><a href="' . rex_url::currentBackendPage(['function' => 'download', 'impname' => $file]) . '" title="' . rex_i18n::msg('backup_download_file') . '"><i class="rex-icon rex-icon-download"></i> ' . rex_i18n::msg('backup_download') . '</a></td> <td class="rex-table-action"><a href="' . rex_url::currentBackendPage(['function' => 'delete', 'impname' => $file]) . '" title="' . rex_i18n::msg('backup_delete_file') . '" data-confirm="' . rex_i18n::msg('backup_delete') . ' ?"><i class="rex-icon rex-icon-delete"></i> ' . rex_i18n::msg('backup_delete') . '</a></td> </tr>'; } $content .= ' </tbody> </table> '; $fragment = new rex_fragment(); $fragment->setVar('title', rex_i18n::msg('backup_export_file_caption'), false); $fragment->setVar('content', $content, false); $content = $fragment->parse('core/page/section.php'); echo $content;
/** * creates and returns the uploadform */ public function createUploadForm() { $rex_file_category = rex_request('rex_file_category', 'int'); $output = ''; $script_page_header = ''; $uploadPath = "index.php?page=" . $this->addon_name . "/upload&upload_folder=" . $this->folder; if ($this->sync_cat) { $cats_sel = new rex_media_category_select(); $cats_sel->setStyle('class="form-control"'); $cats_sel->setSize(1); $cats_sel->setName('rex_file_category'); $cats_sel->setId('rex_file_category_' . $this->time); $cats_sel->addOption(rex_i18n::msg('pool_kats_no'), '0'); $cats_sel->setAttribute('onchange', 'this.form.submit()'); $cats_sel->setSelected($rex_file_category); $arg_fields = ''; foreach (rex_request('args', 'array') as $arg_name => $arg_value) { $arg_fields .= '<input type="hidden" name="args[' . $arg_name . ']" value="' . $arg_value . '" />' . "\n"; } $opener_input_field = rex_request('opener_input_field', 'string'); if ($opener_input_field != '') { $arg_fields .= '<input type="hidden" name="opener_input_field" value="' . htmlspecialchars($opener_input_field) . '" />' . "\n"; } $panel = ''; $formElements = []; if ($this->markup) { $e = []; $e['label'] = '<label for="rex_file_category_' . $this->time . '">' . rex_i18n::msg('pool_file_category') . '</label>'; $e['field'] = $cats_sel->get(); $formElements[] = $e; $fragment = new rex_fragment(); $fragment->setVar('elements', $formElements, false); $panel .= $fragment->parse('core/form/form.php'); $panel .= rex_extension::registerPoint(new rex_extension_point('MEDIA_FORM_ADD', '')); $fragment = new rex_fragment(); $fragment->setVar('class', 'info', false); $fragment->setVar('title', "Medienpool Kategorie"); $fragment->setVar('body', $panel, false); $content = $fragment->parse('core/page/section.php'); $output .= ' <form action="' . rex_url::currentBackendPage() . '" method="post" enctype="multipart/form-data"> <fieldset> <input type="hidden" name="media_method" value="add_file" /> ' . $arg_fields . ' ' . $content . ' </fieldset></form>'; } } # end sync_cat $output_upload_button = ''; $output_upload_button .= ' <div id="multiupload' . $this->time . '" class="' . ($this->markup ? 'behave_normal' : 'styleless') . '"> <noscript> <p>JavaScript muss aktiviert sein.</p> </noscript> </div>'; if ($this->markup) { if (!$this->clear_uploadlist_automatically) { $content = ''; $content .= $output_upload_button; $content .= ' <p>weitere Aktionen:</p> <a href="javascript:void(0)" onclick="clearUploadList();">Abgeschlossene / fehlerhafte aus der Liste entfernen</a> </p>'; $sections = ''; $fragment = new rex_fragment(); $fragment->setVar('class', 'info', false); $fragment->setVar('title', "Aktionen"); $fragment->setVar('body', $content, false); $output .= $fragment->parse('core/page/section.php'); } } $script_page_header .= ' <script type="text/javascript"> function rex_multiupload_createUploader' . $this->time . '(){ var uploader = new qq.FileUploader({ element: document.getElementById("multiupload' . $this->time . '"), action: "' . $uploadPath . '", mediaPoolSelector: "rex_file_category_' . $this->time . '", sizeLimit: 0, // max size minSizeLimit: 0, // min size'; $script_page_header .= ' onSubmit: function(id,filename) {' . "\n"; if ($this->clear_uploadlist_automatically) { $script_page_header .= ' clearUploadList();'; } if ($this->onSubmitCallback) { $script_page_header .= ' if(typeof ' . $this->onSubmitCallback . ' == "function") { // user callback function ' . $this->onSubmitCallback . '(filename); }'; } $script_page_header .= ' },'; # end onSubmit $script_page_header .= ' onUpload: function(id,fileName, xhr) {' . "\n"; if ($this->onUploadCallback) { $script_page_header .= ' if(typeof ' . $this->onUploadCallback . ' == "function") { // user callback function ' . $this->onUploadCallback . '(fileName, xhr); }'; } $script_page_header .= ' },'; # end onUpload $script_page_header .= ' onProgress: function(id,fileName, loaded, total) {' . "\n"; if ($this->onProgressCallback) { $script_page_header .= ' if(typeof ' . $this->onProgressCallback . ' == "function") { // user callback function ' . $this->onProgressCallback . '(fileName, loaded, total); }'; } $script_page_header .= ' },'; # end onProgress $script_page_header .= ' onComplete: function(id,filename,json) {' . "\n"; if ($this->clear_file_after_finish) { $script_page_header .= ' window.setTimeout(function(){ clearUploadListSuccess(); }, 5000);'; } if ($this->onCompleteCallback) { $script_page_header .= ' if(typeof ' . $this->onCompleteCallback . ' == "function" && json.success) { // user callback function ' . $this->onCompleteCallback . '(json); }'; } $script_page_header .= ' },'; # end onComplete $script_page_header .= ' onCancel: function(id,filename) {' . "\n"; if ($this->onCancelCallback) { $script_page_header .= ' if(typeof ' . $this->onCancelCallback . ' == "function") { // user callback function ' . $this->onCancelCallback . '(filename); }'; } $script_page_header .= ' },'; # end onCancel if ($this->upload_simultaneously && is_numeric($this->upload_simultaneously)) { $script_page_header .= ' maxConnections: ' . $this->upload_simultaneously . ','; } $script_page_header .= ' debug: ' . ($this->javascript_debug ? "true" : "false") . ' }); } jQuery(document).ready(function(){ rex_multiupload_createUploader' . $this->time . '(); }); </script>' . "\n"; if ($this->markup) { if ($this->showFootnote) { $output .= '<div class="rex-form-row edit_panel"> <label>Dateien editieren</label> <ul class="qq-upload-list edit_uploads"> </ul> </div>' . "\n"; } } if ($this->markup) { if ($this->showFootnote) { $output .= '<section class="rex-page-section"> <p class="rex-form-file"> <span class="rex-form-notice"> Mehrfachauswahl mit STRG(WIN) oder CMD(MAC).<br /> Die Dateien werden automatisch in die ausgewählte Kategorie sychronisiert. Ein Wechsel der Medienkategorie greift immer vor Auswahl einer Datei. Findet ein Upload bereits statt, kann für diese Datei die Kategorie nicht mehr verändert werden. </span> </p> </section>' . "\n"; } } rex_extension::register('OUTPUT_FILTER', function (rex_extension_point $ep) use($script_page_header) { $suchmuster = "<!-- ###MULTIUPLOAD_EP_REPLACE### -->"; $ersetzen = "<!-- MULTIUPLOAD_EP_REPLACE -->\n" . $script_page_header . "<!-- /MULTIUPLOAD_EP_REPLACE -->\n</head>"; $ep->setSubject(str_replace($suchmuster, $ersetzen, $ep->getSubject())); }); // TIME FOR OUTPUT return $output; }