Пример #1
0
/**
 * Gibt eine Url zu einem Artikel zurück.
 *
 * @param int|null $id
 * @param int|null $clang     SprachId des Artikels
 * @param array    $params    Array von Parametern
 * @param string   $separator
 *
 * @return string
 *
 * @package redaxo\structure
 */
function rex_getUrl($id = null, $clang = null, array $params = [], $separator = '&')
{
    $id = (int) $id;
    $clang = (int) $clang;
    // ----- get id
    if ($id == 0) {
        $id = rex::getProperty('article_id');
    }
    // ----- get clang
    // Wenn eine rexExtension vorhanden ist, immer die clang mitgeben!
    // Die rexExtension muss selbst entscheiden was sie damit macht
    if (!rex_clang::exists($clang) && (rex_clang::count() > 1 || rex_extension::isRegistered('URL_REWRITE'))) {
        $clang = rex_clang::getCurrentId();
    }
    // ----- EXTENSION POINT
    $url = rex_extension::registerPoint(new rex_extension_point('URL_REWRITE', '', ['id' => $id, 'clang' => $clang, 'params' => $params, 'separator' => $separator]));
    if ($url == '') {
        if (rex_clang::count() > 1) {
            $clang = $separator . 'clang=' . $clang;
        } else {
            $clang = '';
        }
        $params = rex_string::buildQuery($params, $separator);
        $params = $params ? $separator . $params : '';
        $url = rex_url::frontendController() . '?article_id=' . $id . $clang . $params;
    }
    return $url;
}
Пример #2
0
/**
 * Gibt eine Url zu einem Artikel zurück.
 *
 * @param string       $_id
 * @param int|string   $_clang  SprachId des Artikels
 * @param array|string $_params Array von Parametern
 * @param bool         $escape  Flag whether the argument separator "&" should be escaped (&)
 *
 * @return string
 *
 * @package redaxo\structure
 */
function rex_getUrl($_id = '', $_clang = '', $_params = '', $escape = true)
{
    $id = (int) $_id;
    $clang = (int) $_clang;
    // ----- get id
    if ($id == 0) {
        $id = rex::getProperty('article_id');
    }
    // ----- get clang
    // Wenn eine rexExtension vorhanden ist, immer die clang mitgeben!
    // Die rexExtension muss selbst entscheiden was sie damit macht
    if ($_clang === '' && (rex_clang::count() > 1 || rex_extension::isRegistered('URL_REWRITE'))) {
        $clang = rex_clang::getCurrentId();
    }
    // ----- get params
    $param_string = rex_param_string($_params, $escape ? '&' : '&');
    $name = 'NoName';
    if ($id != 0) {
        $ooa = rex_article::get($id, $clang);
        if ($ooa) {
            $name = rex_parse_article_name($ooa->getName());
        }
    }
    // ----- EXTENSION POINT
    $url = rex_extension::registerPoint(new rex_extension_point('URL_REWRITE', '', ['id' => $id, 'name' => $name, 'clang' => $clang, 'params' => $param_string, 'escape' => $escape]));
    if ($url == '') {
        $_clang = '';
        if (rex_clang::count() > 1) {
            $_clang .= ($escape ? '&' : '&') . 'clang=' . $clang;
        }
        $url = rex_url::frontendController() . '?article_id=' . $id . $_clang . $param_string;
    }
    return $url;
}
Пример #3
0
 public static function showForm()
 {
     $article_id = rex_request('article_id', 'int');
     $clang = rex_get('clang');
     $ctype = rex_get('ctype');
     $_SESSION[__CLASS__]['active'] = 1;
     // Alle OBs schließen
     while (@ob_end_clean()) {
     }
     header("Location: " . rex_url::backendController() . '?article_id=' . $article_id . '&clang=' . $clang . '&page=content/edit&ctype=' . $ctype);
     exit;
 }
Пример #4
0
 /**
  * Handles the given Exception.
  *
  * @param Throwable|Exception $exception The Exception to handle
  * @param bool                $showTrace
  */
 public static function handleException($exception, $showTrace = true)
 {
     rex_logger::logException($exception);
     while (ob_get_level()) {
         ob_end_clean();
     }
     $status = rex_response::HTTP_INTERNAL_ERROR;
     if ($exception instanceof rex_http_exception && $exception->getHttpCode()) {
         $status = $exception->getHttpCode();
     }
     rex_response::setStatus($status);
     if (rex::isSetup() || rex::isDebugMode() || ($user = rex_backend_login::createUser()) && $user->isAdmin()) {
         // TODO add a beautiful error page with usefull debugging info
         $buf = '';
         $buf .= '<pre>';
         $buf .= '"' . get_class($exception) . '" thrown in ' . $exception->getFile() . ' on line ' . $exception->getLine() . "\n";
         if ($exception->getMessage()) {
             $buf .= '<b>' . ($exception instanceof ErrorException ? self::getErrorType($exception->getSeverity()) . ': ' : '') . $exception->getMessage() . "</b>\n";
         }
         $cause = $exception->getPrevious();
         while ($cause) {
             $buf .= "\n";
             $buf .= 'caused by ' . get_class($cause) . ' in ' . $cause->getFile() . ' on line ' . $cause->getLine() . "\n";
             if ($cause->getMessage()) {
                 $buf .= '<b>' . ($cause instanceof ErrorException ? self::getErrorType($cause->getSeverity()) . ': ' : '') . $cause->getMessage() . "</b>\n";
             }
             $cause = $cause->getPrevious();
         }
         if ($showTrace) {
             $buf .= "\n";
             $buf .= $exception->getTraceAsString();
         }
         if (!rex::isSetup() && rex::isBackend() && !rex::isSafeMode()) {
             $buf .= "\n\n";
             $buf .= '<a href="' . rex_url::backendPage('packages', ['safemode' => 1]) . '">activate safe mode</a>';
         }
         $buf .= '</pre>';
     } else {
         // TODO small error page, without debug infos
         $buf = 'Oooops, an internal error occured!';
     }
     rex_response::sendContent($buf);
     exit;
 }
Пример #5
0
 public function execute()
 {
     if (!rex::getUser()->isAdmin()) {
         throw new rex_api_exception('You do not have the permission!');
     }
     $addonkey = rex_request('addonkey', 'string');
     $upload = rex_request('upload', [['upload_file', 'bool'], ['oldversion', 'string'], ['redaxo', 'array[string]'], ['description', 'string'], ['status', 'int'], ['replace_assets', 'bool'], ['ignore_tests', 'bool']]);
     $file = [];
     $archive = null;
     $file['version'] = $upload['upload_file'] ? rex_addon::get($addonkey)->getVersion() : $upload['oldversion'];
     $file['redaxo_versions'] = $upload['redaxo'];
     $file['description'] = $upload['description'];
     $file['status'] = $upload['status'];
     try {
         if ($upload['upload_file']) {
             $archive = rex_path::addonCache('install', md5($addonkey . time()) . '.zip');
             $exclude = [];
             if ($upload['replace_assets']) {
                 $exclude[] = 'assets';
             }
             if ($upload['ignore_tests']) {
                 $exclude[] = 'tests';
             }
             rex_install_archive::copyDirToArchive(rex_path::addon($addonkey), $archive, null, $exclude);
             if ($upload['replace_assets']) {
                 rex_install_archive::copyDirToArchive(rex_url::addonAssets($addonkey), $archive, $addonkey . '/assets');
             }
             $file['checksum'] = md5_file($archive);
         }
         rex_install_webservice::post(rex_install_packages::getPath('?package=' . $addonkey . '&file_id=' . rex_request('file', 'int', 0)), ['file' => $file], $archive);
     } catch (rex_functional_exception $e) {
         throw new rex_api_exception($e->getMessage());
     }
     if ($archive) {
         rex_file::delete($archive);
     }
     unset($_REQUEST['addonkey']);
     unset($_REQUEST['file']);
     rex_install_packages::deleteCache();
     return new rex_api_result(true, rex_i18n::msg('install_info_addon_uploaded', $addonkey));
 }
Пример #6
0
 public function execute()
 {
     if (!rex::getUser()->isAdmin()) {
         throw new rex_api_exception('You do not have the permission!');
     }
     $this->addonkey = rex_request('addonkey', 'string');
     $function = static::GET_PACKAGES_FUNCTION;
     $packages = rex_install_packages::$function();
     $this->fileId = rex_request('file', 'int');
     if (!isset($packages[$this->addonkey]['files'][$this->fileId])) {
         return null;
     }
     $this->file = $packages[$this->addonkey]['files'][$this->fileId];
     $this->checkPreConditions();
     try {
         $archivefile = rex_install_webservice::getArchive($this->file['path']);
     } catch (rex_functional_exception $e) {
         throw new rex_api_exception($e->getMessage());
     }
     $message = '';
     $this->archive = $archivefile;
     if ($this->file['checksum'] != md5_file($archivefile)) {
         $message = rex_i18n::msg('install_warning_zip_wrong_checksum');
     } elseif (!$this->isCorrectFormat($archivefile)) {
         $message = rex_i18n::msg('install_warning_zip_wrong_format');
     } elseif (is_string($msg = $this->doAction())) {
         $message = $msg;
     }
     rex_file::delete($archivefile);
     if ($message) {
         $message = rex_i18n::msg('install_warning_addon_not_' . static::VERB, $this->addonkey) . '<br />' . $message;
         $success = false;
     } else {
         $message = rex_i18n::msg('install_info_addon_' . static::VERB, $this->addonkey) . (static::SHOW_LINK ? ' <a href="' . rex_url::backendPage('packages') . '">' . rex_i18n::msg('install_to_addon_page') . '</a>' : '');
         $success = true;
         unset($_REQUEST['addonkey']);
     }
     return new rex_api_result($success, $message);
 }
Пример #7
0
                        <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;
Пример #8
0
     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)) {
Пример #9
0
                        <th class="rex-table-icon"></th>
                        <th>' . rex_i18n::msg('cronjob_log_date') . '</th>
                        <th>' . rex_i18n::msg('cronjob_name') . '</th>
                        <th>' . rex_i18n::msg('cronjob_log_message') . '</th>
                    </tr>
                </thead>
                <tbody>';
if ($file = new rex_log_file($this->getDataPath('cronjob.log'))) {
    foreach (new LimitIterator($file, 0, 30) as $entry) {
        /* @var rex_log_entry $entry */
        $data = $entry->getData();
        $class = trim($data[0]) == 'ERROR' ? 'rex-state-error' : 'rex-state-success';
        if ($data[1] == '--') {
            $icon = '<i class="rex-icon rex-icon-cronjob" title="' . rex_i18n::msg('cronjob_not_editable') . '"></i>';
        } else {
            $icon = '<a href="' . rex_url::backendPage('cronjob', ['list' => 'cronjobs', 'func' => 'edit', 'oid' => $data[1]]) . '" title="' . rex_i18n::msg('cronjob_edit') . '"><i class="rex-icon rex-icon-cronjob"></i></a>';
        }
        $content .= '
                    <tr class="' . $class . '">
                        <td class="rex-table-icon">' . $icon . '</td>
                        <td data-title="' . rex_i18n::msg('cronjob_log_date') . '">' . $entry->getTimestamp('%d.%m.%Y %H:%M:%S') . '</td>
                        <td data-title="' . rex_i18n::msg('cronjob_name') . '">' . htmlspecialchars($data[2]) . '</td>
                        <td data-title="' . rex_i18n::msg('cronjob_log_message') . '">' . $data[3] . '</td>
                    </tr>';
    }
}
$content .= '
                </tbody>
            </table>';
$fragment = new rex_fragment();
$fragment->setVar('content', $content, false);
Пример #10
0
/**
 * Bindet ggf extensions ein.
 *
 * @param rex_extension_point $ep
 */
function rex_metainfo_extensions_handler(rex_extension_point $ep)
{
    $page = $ep->getSubject();
    $mainpage = rex_be_controller::getCurrentPagePart(1);
    $mypage = 'metainfo';
    // additional javascripts
    if ($mainpage == 'metainfo' || $page == 'content/metainfo' || $page == 'structure') {
        rex_view::addJsFile(rex_url::addonAssets($mypage, 'metainfo.js'));
    }
    // include extensions
    $curDir = __DIR__ . '/..';
    if ($page == 'structure') {
        require_once $curDir . '/lib/handler/category_handler.php';
    } elseif ($mainpage == 'mediapool') {
        require_once $curDir . '/lib/handler/media_handler.php';
    } elseif ($mainpage == 'content') {
        require_once $curDir . '/extensions/extension_content_sidebar.php';
    } elseif ($page == 'backup') {
        require_once $curDir . '/extensions/extension_cleanup.php';
    }
}
Пример #11
0
// Variable definiert und vorbelegt wenn nicht existent
$KAToutARR = [];
// Variable definiert und vorbelegt wenn nicht existent
$navigation = [];
$object_id = $article_id > 0 ? $article_id : $category_id;
$object = rex_article::get($object_id, $clang);
if ($object) {
    $tree = $object->getParentTree();
    if (!$object->isStartarticle()) {
        $tree[] = $object;
    }
    foreach ($tree as $parent) {
        $id = $parent->getId();
        if (rex::getUser()->getComplexPerm('structure')->hasCategoryPerm($id)) {
            $n = [];
            $n['title'] = str_replace(' ', '&nbsp;', htmlspecialchars($parent->getName()));
            if ($parent->isStartarticle()) {
                $n['href'] = rex_url::backendPage('structure', ['category_id' => $id, 'clang' => $clang]);
            }
            $navigation[] = $n;
        }
    }
}
$title = '<a href="' . rex_url::backendPage('structure', ['category_id' => 0, 'clang' => $clang]) . '"><i class="rex-icon rex-icon-sitestartarticle"></i> ' . rex_i18n::msg('homepage') . '</a>';
$fragment = new rex_fragment();
$fragment->setVar('id', 'rex-js-structure-breadcrumb', false);
$fragment->setVar('title', $title, false);
$fragment->setVar('items', $navigation, false);
echo $fragment->parse('core/navigations/breadcrumb.php');
unset($fragment);
unset($navigation);
Пример #12
0
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;
Пример #13
0
}
$gc = rex_sql::factory();
$gc->setQuery('SELECT * FROM ' . rex::getTablePrefix() . 'media_category WHERE id=?', [$rex_file_category]);
if ($gc->getRows() != 1) {
    $rex_file_category = 0;
    $rex_file_category_name = rex_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 = rex::getUser()->getComplexPerm('media')->hasCategoryPerm(0);
// -------------- Header
$subline = rex_be_controller::getPageObject('mediapool')->getSubpages();
foreach ($subline as $sp) {
    $sp->setHref(rex_url::backendPage($sp->getFullKey(), $arg_url, false));
}
echo rex_view::title(rex_i18n::msg('pool_media'), $subline);
// -------------- Messages
if ($success != '') {
    echo rex_view::info($success);
    $success = '';
}
if ($error != '') {
    echo rex_view::error($error);
    $error = '';
}
// -------------- Javascripts
?>
<script type="text/javascript">
<!--
Пример #14
0
 * @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) . '
Пример #15
0
 /**
  * Returns a clang switch.
  *
  * @param rex_context $context
  *
  * @return string
  */
 public static function clangSwitchAsDropdown(rex_context $context)
 {
     if (rex_clang::count() == 1) {
         return '';
     }
     $button_label = '';
     $items = [];
     foreach (rex_clang::getAll() as $id => $clang) {
         if (rex::getUser()->getComplexPerm('clang')->hasPerm($id)) {
             $item = [];
             $item['title'] = rex_i18n::translate($clang->getName());
             $item['href'] = $context->getUrl(['clang' => $id]);
             if ($id == $context->getParam('clang')) {
                 $item['active'] = true;
                 $button_label = rex_i18n::translate($clang->getName());
             }
             $items[] = $item;
         }
     }
     $fragment = new rex_fragment();
     $fragment->setVar('class', 'rex-language');
     $fragment->setVar('button_prefix', rex_i18n::msg('language'));
     $fragment->setVar('button_label', $button_label);
     $fragment->setVar('header', rex_i18n::msg('clang_select'));
     $fragment->setVar('items', $items, false);
     if (rex::getUser()->isAdmin()) {
         $fragment->setVar('footer', '<a href="' . rex_url::backendPage('system/lang') . '"><i class="fa fa-flag"></i> ' . rex_i18n::msg('languages_edit') . '</a>', false);
     }
     return $fragment->parse('core/dropdowns/dropdown.php');
 }
    public static function show_form_info($media)
    {
        $file_id = rex_request('file_id', 'int');
        echo '
      <style>
      .helper-tool, .helper-tool * {
                box-sizing:border-box;
      }
      .helper-tool {
                padding:12px;
                border:1px solid #fcfcfc;
      }
      .helper-tool input {
                position:relative;
                width:100%;
      }

      /* !HELPER TOOL TARGETING SYSTEM */
      .focuspoint img {
                transition: all 500ms ease-in-out;
                -webkit-transition: all 500ms ease-in-out;
                -moz-transition: all 500ms ease-in-out;
      }

      /* !HELPER TOOL TARGETING SYSTEM */
      .helper-tool-target {
                position: relative;
                display: inline-block;
                overflow: hidden;
                margin-bottom:1em;
      }
      .helper-tool-target img {
                position: relative;
                display: block;
                max-width: 100%;
                height:auto;
      }
      .helper-tool-target img.target-overlay, .helper-tool-target img.reticle {
                position: absolute;
                top: 0;
                left: 0;

      }
      .helper-tool-target img.target-overlay {
                top: 0 !important;
                left: 0 !important;
                cursor:pointer;
                opacity: 0.0;
      }
      .helper-tool-target img.reticle {
                width: 102px;
                height: 102px;
                -webkit-transform: translate(-50%, -50%);
                -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
                top: 50%;
                left: 50%;
                transition: all 500ms ease-in-out;
                -webkit-transition: all 500ms ease-in-out;
                -moz-transition: all 500ms ease-in-out;
      }

      </style>

    ';
        $vars = rex_sql::factory()->getArray('select * from rex_media where id=' . $file_id);
        $saved_css_data = explode(",", $vars[0]['med_focuspoint_css'], 2);
        $css_x = '';
        $css_y = '';
        if (count($saved_css_data) == 2) {
            $css_x = $saved_css_data[0];
            $css_y = $saved_css_data[1];
        }
        echo '
    	<style>
    		.helper-tool-target img.target-overlay, .helper-tool-target img.reticle  {
            	 top: ' . $css_y . ';
    			     left: ' . $css_x . ';
    		}
    	</style>
	   ';
        $filename = $vars[0]['filename'];
        $dateiart = substr($filename, -3);
        if ($dateiart == 'jpg' or $dateiart == 'png' or $dateiart == 'gif') {
            $html = '<div class="rex-mediapool-detail-image col-sm-4"><div id="fwidth" class="helper-tool-target"><img class="helper-tool-img" src="index.php?rex_media_type=rex_mediapool_maximized&rex_media_file=' . rex_url::media($filename) . '" ><img class="reticle" src="./../assets/addons/focuspoint/focuspoint-target.png"><img class="target-overlay" src="index.php?rex_media_type=rex_mediapool_maximized&rex_media_file=' . rex_url::media($filename) . '" ></div></div>';
            echo "\n        <script>\n          \$(document).on('ready pjax:success',function(){\n            \$('.panel-body .col-sm-4').replaceWith('{$html}');\n\n            \$('img').click(function(e){\n\n              var imageW = \$(this).width();\n              var imageH = \$(this).height();\n\n              //Calculate FocusPoint coordinates\n              var offsetX = e.pageX - \$(this).offset().left;\n              var offsetY = e.pageY - \$(this).offset().top;\n              var focusX = (offsetX/imageW - .5)*2;\n              var focusY = (offsetY/imageH - .5)*-2;\n\n              //Calculate CSS Percentages\n              var percentageX = (offsetX/imageW)*100;\n              var percentageY = (offsetY/imageH)*100;\n              var backgroundPositionCSS = percentageX.toFixed(0) + '%, ' + percentageY.toFixed(0) + '%';\n\n              \$('#Focuspoint_Data' ).val(focusX.toFixed(2) + ',' + focusY.toFixed(2));\n              \$('#Focuspoint_CSS' ).val(backgroundPositionCSS);\n\n              \$('.reticle').css({\n                'top':percentageY+'%',\n                'left':percentageX+'%'\n              });\n\n\n             // window.alert('FocusX:' + focusX.toFixed(2) + ', FocusY:' + focusY.toFixed(2) + ' (For CSS version: ' + backgroundPositionCSS + ')');\n\n            });\n\n          });\n\n        </script>\n      ";
        }
    }
Пример #17
0
 /**
  * {@inheritdoc}
  */
 public function getAssetsUrl($file = '')
 {
     return rex_url::addonAssets($this->getName(), $file);
 }
           break;
       case 'nachteaser':
           $bildpos = 'unter dem Teasertext';
           break;
   }
   $outback .= '
 <div class="form-group">
   <label class="col-sm-3 control-label">Position</label>
   <div class="col-sm-9">' . $bildpos . '</div>
 </div>' . PHP_EOL;
   $outback .= '
 <div class="form-group">
   <label class="col-sm-3 control-label">Bild</label>
   <div class="col-sm-9">
     ' . $filename . '<br/>
     <img src="' . rex_url::frontendController() . '?rex_media_type=rex_mediabutton_preview&rex_media_file=' . $filename . '"  />
   </div>
 </div>' . PHP_EOL;
   if ($value['alt']) {
       $outback .= '
   <div class="form-group">
     <label class="col-sm-3 control-label">Alternativtext</label>
     <div class="col-sm-9">' . $value['alt'] . '</div>
   </div>' . PHP_EOL;
   } else {
       $outback .= '
   <div class="form-group ">
     <label class="col-sm-3 control-label"></label>
     <div class="col-sm-9 warning">
       ACHTUNG:<br/>Es wurde kein Alt-Text für das Bild angegeben.
     </div>
Пример #19
0
 /**
  * @param array $params
  *
  * @return string
  */
 public function toImage(array $params = [])
 {
     if (!$this->isImage()) {
         return '';
     }
     $filename = rex_url::media($this->getFileName());
     $title = $this->getTitle();
     if (!isset($params['alt'])) {
         if ($title != '') {
             $params['alt'] = htmlspecialchars($title);
         }
     }
     if (!isset($params['title'])) {
         if ($title != '') {
             $params['title'] = htmlspecialchars($title);
         }
     }
     rex_extension::registerPoint(new rex_extension_point('MEDIA_TOIMAGE', '', ['filename' => &$filename, 'params' => &$params]));
     $additional = '';
     foreach ($params as $name => $value) {
         $additional .= ' ' . $name . '="' . $value . '"';
     }
     return sprintf('<img src="%s"%s />', $filename, $additional);
 }
Пример #20
0
/**
 * 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;
}
Пример #21
0
 /**
  * Initializes the class.
  *
  * @param string $htdocs  Htdocs path
  * @param string $backend Backend folder name
  */
 public static function init($htdocs, $backend)
 {
     self::$base = $htdocs;
     self::$backend = substr($htdocs, -3) === '../' ? '' : $htdocs . $backend . '/';
 }
Пример #22
0
?>
}

function insertImage(src,alt)
{
    window.opener.insertImage("<?php 
echo rex_url::media();
?>
" + src, alt);
    self.close();
}

function insertLink(src)
{
    window.opener.insertFileLink("<?php 
echo rex_url::media();
?>
" + src);
    self.close();
}

function openPage(src)
{
    window.opener.location.href = src;
    self.close();
}

//-->
</script>
<?php 
// -------------- Include Page
Пример #23
0
         }
         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);
Пример #24
0
 /**
  * Extension to check whether the given media is still in use.
  *
  * @param rex_extension_point $ep
  *
  * @throws rex_exception
  *
  * @return string
  */
 public static function isMediaInUse(rex_extension_point $ep)
 {
     $params = $ep->getParams();
     $warning = $ep->getSubject();
     $sql = rex_sql::factory();
     $sql->setQuery('SELECT `name`, `type_id` FROM `' . rex::getTablePrefix() . 'metainfo_field` WHERE `type_id` IN(6,7)');
     $rows = $sql->getRows();
     if ($rows == 0) {
         return $warning;
     }
     $where = ['articles' => [], 'media' => []];
     $filename = addslashes($params['filename']);
     for ($i = 0; $i < $rows; ++$i) {
         $name = $sql->getValue('name');
         if (rex_metainfo_meta_prefix($name) == self::PREFIX) {
             $key = 'media';
         } else {
             $key = 'articles';
         }
         switch ($sql->getValue('type_id')) {
             case '6':
                 $where[$key][] = $name . '="' . $filename . '"';
                 break;
             case '7':
                 $where[$key][] = 'FIND_IN_SET("' . $filename . '", ' . $name . ')';
                 break;
             default:
                 throw new rex_exception('Unexpected fieldtype "' . $sql->getValue('type_id') . '"!');
         }
         $sql->next();
     }
     $articles = '';
     $categories = '';
     if (!empty($where['articles'])) {
         $sql->setQuery('SELECT id, clang_id, parent_id, name, catname, startarticle FROM ' . rex::getTablePrefix() . 'article WHERE ' . implode(' OR ', $where['articles']));
         if ($sql->getRows() > 0) {
             foreach ($sql->getArray() as $art_arr) {
                 $aid = $art_arr['id'];
                 $clang = $art_arr['clang_id'];
                 $parent_id = $art_arr['parent_id'];
                 if ($art_arr['startarticle']) {
                     $categories .= '<li><a href="javascript:openPage(\'' . rex_url::backendPage('structure', ['edit_id' => $aid, 'function' => 'edit_cat', 'category_id' => $parent_id, 'clang' => $clang]) . '\')">' . $art_arr['catname'] . '</a></li>';
                 } else {
                     $articles .= '<li><a href="javascript:openPage(\'' . rex_url::backendPage('content', ['article_id' => $aid, 'mode' => 'meta', 'clang' => $clang]) . '\')">' . $art_arr['name'] . '</a></li>';
                 }
             }
             if ($articles != '') {
                 $warning[] = rex_i18n::msg('minfo_media_in_use_art') . '<br /><ul>' . $articles . '</ul>';
             }
             if ($categories != '') {
                 $warning[] = rex_i18n::msg('minfo_media_in_use_cat') . '<br /><ul>' . $categories . '</ul>';
             }
         }
     }
     $media = '';
     if (!empty($where['media'])) {
         $sql->setQuery('SELECT id, filename, category_id FROM ' . rex::getTablePrefix() . 'media WHERE ' . implode(' OR ', $where['media']));
         if ($sql->getRows() > 0) {
             foreach ($sql->getArray() as $med_arr) {
                 $id = $med_arr['id'];
                 $filename = $med_arr['filename'];
                 $cat_id = $med_arr['category_id'];
                 $media .= '<li><a href="' . rex_url::backendPage('mediapool/detail', ['file_id' => $id, 'rex_file_category' => $cat_id]) . '">' . $filename . '</a></li>';
             }
             if ($media != '') {
                 $warning[] = rex_i18n::msg('minfo_media_in_use_med') . '<br /><ul>' . $media . '</ul>';
             }
         }
     }
     return $warning;
 }
Пример #25
0
 /**
  * @return string
  */
 public function get()
 {
     $this->init();
     $this->setApplyUrl($this->getUrl(['func' => ''], false));
     if (($controlElement = $this->getControlElement()) !== null) {
         if ($controlElement->saved()) {
             $this->processPostValues();
             // speichern und umleiten
             // Nachricht in der Liste anzeigen
             if (($result = $this->validate()) === true && ($result = $this->save()) === true) {
                 $this->redirect(rex_i18n::msg('form_saved'));
             } elseif (is_int($result) && isset($this->errorMessages[$result])) {
                 $this->setWarning($this->errorMessages[$result]);
             } elseif (is_string($result) && $result != '') {
                 $this->setWarning($result);
             } else {
                 $this->setWarning(rex_i18n::msg('form_save_error'));
             }
         } elseif ($controlElement->applied()) {
             $this->processPostValues();
             // speichern und wiederanzeigen
             // Nachricht im Formular anzeigen
             if (($result = $this->validate()) === true && ($result = $this->save()) === true) {
                 $this->setMessage(rex_i18n::msg('form_applied'));
             } elseif (is_int($result) && isset($this->errorMessages[$result])) {
                 $this->setWarning($this->errorMessages[$result]);
             } elseif (is_string($result) && $result != '') {
                 $this->setWarning($result);
             } else {
                 $this->setWarning(rex_i18n::msg('form_save_error'));
             }
         } elseif ($controlElement->deleted()) {
             // speichern und wiederanzeigen
             // Nachricht in der Liste anzeigen
             if (($result = $this->delete()) === true) {
                 $this->redirect(rex_i18n::msg('form_deleted'));
             } elseif (is_string($result) && $result != '') {
                 $this->setWarning($result);
             } else {
                 $this->setWarning(rex_i18n::msg('form_delete_error'));
             }
         } elseif ($controlElement->resetted()) {
             // verwerfen und wiederanzeigen
             // Nachricht im Formular anzeigen
             $this->setMessage(rex_i18n::msg('form_resetted'));
         } elseif ($controlElement->aborted()) {
             // verwerfen und umleiten
             // Nachricht in der Liste anzeigen
             $this->redirect(rex_i18n::msg('form_resetted'));
         }
     }
     $actionParams = [];
     if ('get' == strtolower($this->method)) {
         // Parameter dem Formular hinzufügen
         foreach ($this->getParams() as $name => $value) {
             $this->addHiddenField($name, $value, ['internal::useArraySyntax' => 'none']);
         }
     } else {
         $actionParams = $this->getParams();
     }
     $s = "\n";
     $warning = $this->getWarning();
     $message = $this->getMessage();
     if ($warning != '') {
         $s .= '  ' . rex_view::warning($warning) . "\n";
     } elseif ($message != '') {
         $s .= '  ' . rex_view::info($message) . "\n";
     }
     $i = 0;
     $addHeaders = true;
     $fieldsets = $this->getFieldsetElements();
     $last = count($fieldsets);
     $s .= '<form id="' . $this->divId . '" action="' . rex_url::backendController($actionParams) . '" method="' . $this->method . '">' . "\n";
     foreach ($fieldsets as $fieldsetName => $fieldsetElements) {
         $s .= '<fieldset>' . "\n";
         if ($fieldsetName != '') {
             $s .= '<legend>' . htmlspecialchars($fieldsetName) . '</legend>' . "\n";
         }
         // Die HeaderElemente nur im 1. Fieldset ganz am Anfang einfügen
         if ($i == 0 && $addHeaders) {
             foreach ($this->getHeaderElements() as $element) {
                 // Callback
                 $element->setValue($this->preView($fieldsetName, $element->getFieldName(), $element->getValue()));
                 // HeaderElemente immer ohne <p>
                 $s .= $element->formatElement();
             }
             $addHeaders = false;
         }
         foreach ($fieldsetElements as $element) {
             // Callback
             $element->setValue($this->preView($fieldsetName, $element->getFieldName(), $element->getValue()));
             $s .= $element->get();
         }
         // Die FooterElemente nur innerhalb des letzten Fieldsets
         if ($i + 1 == $last) {
             foreach ($this->getFooterElements() as $element) {
                 // Callback
                 $element->setValue($this->preView($fieldsetName, $element->getFieldName(), $element->getValue()));
                 $s .= $element->get();
             }
         }
         $s .= '</fieldset>' . "\n";
         ++$i;
     }
     $s .= '</form>' . "\n";
     return $s;
 }
Пример #26
0
        <nav class="rex-nav-top navbar navbar-default">
            <div class="container-fluid">
                <div class="navbar-header">
                    <?php 
if (rex_be_controller::getCurrentPageObject()->isPopup()) {
    ?>
                        <span class="navbar-brand"><img class="rex-js-svg rex-redaxo-logo" src="<?php 
    echo rex_url::coreAssets('redaxo-logo.svg');
    ?>
" /></span>
                    <?php 
} else {
    ?>
                        <a class="navbar-brand" href="<?php 
    echo rex_url::backendController();
    ?>
"><img class="rex-js-svg rex-redaxo-logo" src="<?php 
    echo rex_url::coreAssets('redaxo-logo.svg');
    ?>
" /></a>
                    <?php 
}
?>
                </div>
                <?php 
echo $this->meta_navigation;
?>
            </div>
        </nav>
Пример #27
0
<?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');
Пример #28
0
 $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">';
Пример #29
0
$content .= $fragment->parse('core/form/checkbox.php');
$content .= '</fieldset>';
$formElements = [];
$n = [];
$n['field'] = '<button class="btn btn-primary" type="submit"><i class="rex-icon rex-icon-sign-in"></i> ' . rex_i18n::msg('login') . ' </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('title', rex_i18n::msg('login_welcome'), false);
$fragment->setVar('body', $content, false);
$fragment->setVar('buttons', $buttons, false);
$content = $fragment->parse('core/page/section.php');
$content = '
<form id="rex-form-login" action="' . rex_url::backendController() . '" method="post">
    ' . $content . '
</form>
<script type="text/javascript">
     <!--
    jQuery(function($) {
        $("#rex-form-login")
            .submit(function(){
                var pwInp = $("#rex-id-login-password");
                if(pwInp.val() != "") {
                    $("#rex-form-login").append(\'<input type="hidden" name="\'+pwInp.attr("name")+\'" value="\'+Sha1.hash(pwInp.val())+\'" />\');
                    pwInp.removeAttr("name");
                }
        });

        $("#javascript").val("1");
Пример #30
0
        }
        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">