protected function checkPreConditions() { if (!OOAddon::isAvailable($this->addonkey)) { throw new rex_install_functional_exception(sprintf('AddOn "%s" is not available!', $this->addonkey)); } if (!rex_string::versionCompare($this->file['version'], OOAddon::getVersion($this->addonkey), '>')) { throw new rex_install_functional_exception(sprintf('Existing version of AddOn "%s" (%s) is newer than %s', $this->addonkey, OOAddon::getVersion($this->addonkey), $this->file['version'])); } }
/** * Gibt ein Array von verf�gbaren Addons zur�ck. * * @return array Array der verf�gbaren Addons */ function getAvailableAddons() { $avail = array(); foreach (OOAddon::getRegisteredAddons() as $addonName) { if (OOAddon::isAvailable($addonName)) { $avail[] = $addonName; } } return $avail; }
/** * added the metafields * @return string */ public static function addFields() { global $REX; $class = ''; if (OOAddon::isAvailable('tinymce')) { $class = 'tinyMCEEditor'; } elseif (OOAddon::isAvailable('ckeditor')) { $class = 'ckeditor'; } return self::checkErrorMessage(a62_add_field('translate:content_category', 'asd_category', 2, '', 3, '', 'SELECT `name`, `id` FROM ' . rex_asd_news_config::getTableCategory()), a62_add_field('translate:asd_news_picture', 'asd_picture', 3, '', 6, ''), a62_add_field('translate:asd_news_text', 'asd_text', 4, 'class=' . $class, 2, '')); }
function rexMediaButtonField($name, $label, $attributes = array(), $id = '') { global $REX; $this->popupButtonField($name, $label, $attributes, $id); $this->enablePreview(); if (OOAddon::isAvailable('image_resize')) { $this->setPreviewUrl('index.php?rex_resize=100w__%filename%'); } else { $this->setPreviewUrl($REX['MEDIAFOLDER'] . '/%filename%'); } }
protected function textile($string) { if (OOAddon::isAvailable("textile")) { if ($string != "") { $string = str_replace("\t", "", $string); $string = htmlspecialchars_decode($string); $string = str_replace("<br />", "", $string); return rex_a79_textile($string); } } else { return $string; } }
<?php // setze Variable mit Addonnamen if (!isset($AKTUELLER_ADDON_NAME) or $AKTUELLER_ADDON_NAME == '') { $AKTUELLER_ADDON_NAME = 'guestbook'; } else { // Diese hier definierte Variable darf noch nirgends in Redxo verwendet worden sein. echo 'Schwerere Fehler aufegtreten! Die Variable <span style="font-style:italic;">"' . $AKTUELLER_ADDON_NAME . '"</span> ist bereits belegt. Wende dich an Modulersteller.'; } // ist das Addon aktiv? if (OOAddon::isAvailable($AKTUELLER_ADDON_NAME)) { require_once $REX['INCLUDE_PATH'] . '/addons/' . $AKTUELLER_ADDON_NAME . '/modules/module.list.inc.php'; $f1 = <<<EOD REX_VALUE[1] EOD; $f2 = <<<EOD REX_VALUE[2] EOD; $f3 = <<<EOD REX_VALUE[3] EOD; $f4 = <<<EOD REX_VALUE[4] EOD; $f5 = <<<EOD REX_VALUE[5] EOD; $f6 = <<<EOD REX_VALUE[6] EOD; if ($f1 == '') {
function showDetail() { $this->language == 1 ? $I18_prefix = 'en_en_utf8' : ($I18_prefix = 'de_de_utf8'); $I18N_NEWS_DB = new i18n($I18_prefix, REX_INCLUDE_PATH . '/addons/' . MY_PAGE . '/lang'); if ($this->active == 0) { $addSQL = 'AND status = "0"'; } if ($this->active == 1) { $addSQL = 'AND status = "1"'; } if ($this->language != "") { $addSQL .= 'AND clang = ' . $this->language; } $qry = 'SELECT * FROM ' . TBL_NEWS . ' WHERE id = "' . $_REQUEST['newsid'] . '" ' . $addSQL . ' '; $sql = new rex_sql(); if ($this->debug == 1) { $sql->debugsql = true; } $data = $sql->getArray($qry); if (is_array($data) and sizeof($data) > 0) { include 'redaxo/include/addons/news/libs/Smarty.class.php'; $t = new Smarty(); $t->debugging = false; $t->caching = false; $t->cache_lifetime = 120; $t->config_dir = 'redaxo/include/addons/news/view/configs/'; $t->compile_dir = 'redaxo/include/addons/news/view/templates_c/'; $t->cache_dir = 'redaxo/include/addons/news/view/cache/'; $t->template_dir = 'redaxo/include/addons/news/view/templates/'; /* Fuer spaeter - Bilderslider Header oder so if ($data[0]["image_header"] != "") // Bildausgabe Header { $images_header = explode(",", $data[0]["image_header"]); foreach ($images_header as $i) { $s = getimagesize("files/".$i); ($s[0]<=620) ? $b[] = $i : $b[] = "index.php?rex_img_type=rex_rbw_620&rex_img_file=".$i; } if (is_array($images_header) and sizeof($images_header)>0) $headerBilder = headerBilder($b, $REX['CUR_CLANG']); print '<div id="newsSlider" class="slideshow flexslider">'.$headerBilder."</div>\n"; }*/ if ($data[0]["image"] != "") { $_images = explode(",", $data[0]["image"]); foreach ($_images as $k => $file) { if (file_exists($REX['HTDOCS_PATH'] . "files/" . $file)) { $fileobj = OOMedia::getMediaByName($file, $REX['CUR_CLANG']); $images[$k]['file'] = $fileobj->_name; $images[$k]['item'] = !empty($fileobj->_title) ? $fileobj->_title : $fileobj->_name; $_filesizeis = filesize($REX['HTDOCS_PATH'] . "files/" . $fileobj->_name); $images[$k]['size'] = $this->getfilesize($_filesizeis); $images[$k]['description'] = $fileobj->_med_description; $images[$k]['copyright'] = $fileobj->_med_copyright; $images[$k]['date'] = date("d.m.Y", $fileobj->_updatedate); $images[$k]['time'] = date("H:i", $fileobj->_updatedate); $images[$k]['typ'] = substr(strrchr($fileobj->_name, "."), 1); } } } $item[$i]['name'] = $data[0]["name"]; $item[$i]['source'] = $data[0]["source"]; $item[$i]['keywords'] = $data[0]["keywords"]; $item[$i]['teaser'] = $data[0]["teaser"]; $item[$i]['date'] = $this->rex_news_format_date($data[0]["online_date"], $this->language); if (OOAddon::isAvailable("textile")) { if ($data[0]["article"] != "") { $output = $data[0]["article"]; $text = $output; if ($text != "") { $text = str_replace("\t", "", $text); $text = htmlspecialchars_decode($text); $text = str_replace("<br />", "", $text); $item[$i]['text'] = rex_a79_textile($text); } } } // Download if ($data[0]["filelist"] != "") { $filelist = explode(",", $data[0]["filelist"]); foreach ($filelist as $k => $file) { if (file_exists($REX['HTDOCS_PATH'] . "files/" . $file)) { $fileobj = OOMedia::getMediaByName($file, $REX['CUR_CLANG']); $files[$k]['file'] = $fileobj->_name; $files[$k]['item'] = !empty($fileobj->_title) ? $fileobj->_title : $fileobj->_name; $_filesizeis = filesize($REX['HTDOCS_PATH'] . "files/" . $fileobj->_name); $files[$k]['size'] = $this->getfilesize($_filesizeis); $files[$k]['description'] = $fileobj->_med_description; $files[$k]['copyright'] = $fileobj->_med_copyright; $files[$k]['date'] = date("d.m.Y", $fileobj->_updatedate); $files[$k]['time'] = date("H:i", $fileobj->_updatedate); $files[$k]['typ'] = substr(strrchr($fileobj->_name, "."), 1); } } } $item[$i]['back'] = $I18N_NEWS_DB->msg('back'); $t->assign("files", $files); $t->assign("images", $images); $t->assign("data", $item); $t->display('news_detail.tpl'); } else { // Fehlermeldung, falls URL-Manipulation print "<h1>Fehler</h1> Es ist ein Fehler aufgetreten. <br />Diesen Artikel gibt es nicht oder nicht mehr oder Sie haben nicht die notwendige Berechtigung. <br /><br />Bitte gehen Sie <a href=\"javascript:history.back()\">hier zur¨ck</a>. "; } }
/** * Checks whether the requirements are met. * * @return boolean */ protected static function checkRequirements($config) { global $REX; $errors = array(); if ($config['rex_version'] != '') { $rex_version = $REX['VERSION'] . '.' . $REX['SUBVERSION'] . '.' . $REX['MINORVERSION']; if (version_compare($rex_version, $config['rex_version'], '<')) { $errors['de_de'][] = 'Die REDAXO Version reicht nicht aus. Es wird mindestens Version ' . $config['rex_version'] . ' benötigt. Sie nutzen aktuell die Version ' . $rex_version; $errors['en_en'][] = 'The REDAXO version is not sufficient. At least version ' . $config['rex_version'] . ' is needed. Currently version ' . $rex_version . ' is installed.'; } } if ($config['php_version'] != '') { if (version_compare(PHP_VERSION, $config['php_version']) < 0) { $errors['de_de'][] = 'PHP version >=' . $config['php_version'] . ' wird gebraucht!'; $errors['en_en'][] = 'PHP version >=' . $config['php_version'] . ' needed!'; } } if (count($config['required_addons']) >= 1) { foreach ($config['required_addons'] as $addon_name => $addon_version) { if (is_numeric($addon_name)) { $addon_name = $addon_version; $addon_version = ''; } if (!\OOAddon::isAvailable($addon_name)) { $de = $addon_version != '' ? ' in der Version "' . $addon_version . '"' : ''; $en = $addon_version != '' ? ' in version "' . $addon_version . '"' : ''; $errors['de_de'][] = 'Installiere und aktiviere das AddOn "' . $addon_name . '"' . $de . '.'; $errors['en_en'][] = 'Install and activate the addon "' . $addon_name . '"' . $en . '.'; } if (\OOAddon::isAvailable($addon_name) && $addon_version != '' && version_compare(\OOAddon::getVersion($addon_name), $addon_version, '<')) { $errors['de_de'][] = 'Die Version des AddOns "' . $addon_name . '" reicht nicht aus. Es wird mindestens Version ' . $addon_version . ' benötigt. Sie nutzen aktuell die Version ' . \OOAddon::getVersion($addon_name); $errors['en_en'][] = 'The version of the addon "' . $addon_name . '" is not sufficient. At least version ' . $addon_version . ' is needed. Currently version ' . \OOAddon::getVersion($addon_name) . ' is installed.'; } } } if (count($errors) >= 1) { $lang = $REX['LOGIN']->getLanguage(); $lang = $lang != 'de_de' ? 'en_en' : $lang; $style = ' style="position: relative; display: block; padding-left: 10px; font-weight: 400;"'; $bullet = '<i style="position: absolute; left: 0;">•</i>'; $warning = '<b' . $style . '>' . $bullet . implode('</b><b' . $style . '>' . $bullet, $errors[$lang]) . '</b>'; self::$message = $warning; return false; } return true; }
/** * Gibt das ListButton Template zurück */ static function getMedialistButton($id, $value, $category = '', $args = array()) { global $REX, $I18N; $open_params = ''; if ($category != '') { $open_params .= '&rex_file_category=' . $category; } foreach ($args as $aname => $avalue) { $open_params .= '&args[' . $aname . ']=' . urlencode($avalue); } $wdgtClass = 'rex-widget-medialist'; if (isset($args['preview']) && $args['preview']) { $wdgtClass .= ' rex-widget-preview'; if (OOAddon::isAvailable('image_manager')) { $wdgtClass .= ' rex-widget-preview-image-manager'; } elseif (OOAddon::isAvailable('image_resize')) { $wdgtClass .= ' rex-widget-preview-image-resize'; } } $options = ''; $medialistarray = explode(',', $value); if (is_array($medialistarray)) { foreach ($medialistarray as $file) { if ($file != '') { $options .= '<option value="' . $file . '">' . $file . '</option>'; } } } $open_class = 'rex-icon-file-open rex-icon-file-open-inactive'; $add_class = 'rex-icon-file-add rex-icon-file-add-inactive'; $delete_class = 'rex-icon-file-delete rex-icon-file-delete-inactive'; $view_class = 'rex-icon-file-view rex-icon-file-view-inactive'; $open_func = ''; $add_func = ''; $delete_func = ''; $view_func = ''; if ($REX['USER']->hasMediaPerm()) { $open_class = 'rex-icon-file-open'; $add_class = 'rex-icon-file-add'; $delete_class = 'rex-icon-file-delete'; $view_class = 'rex-icon-file-view'; $open_func = 'openREXMedialist(' . $id . ',\'' . $open_params . '\');'; $add_func = 'addREXMedialist(' . $id . ',\'' . $open_params . '\');'; $delete_func = 'deleteREXMedialist(' . $id . ');'; $view_func = 'viewREXMedialist(' . $id . ',\'' . $open_params . '\');'; } $media = ' <div class="rex-widget"> <div class="' . $wdgtClass . '"> <input type="hidden" name="MEDIALIST[' . $id . ']" id="REX_MEDIALIST_' . $id . '" value="' . $value . '" /> <p class="rex-widget-field"> <select name="MEDIALIST_SELECT[' . $id . ']" id="REX_MEDIALIST_SELECT_' . $id . '" size="8"' . rex_tabindex() . '> ' . $options . ' </select> </p> <p class="rex-widget-icons rex-widget-2col"> <span class="rex-widget-column rex-widget-column-first"> <a href="#" class="rex-icon-file-top" onclick="moveREXMedialist(' . $id . ',\'top\');return false;" title="' . $I18N->msg('var_medialist_move_top') . '"' . rex_tabindex() . '></a> <a href="#" class="rex-icon-file-up" onclick="moveREXMedialist(' . $id . ',\'up\');return false;" title="' . $I18N->msg('var_medialist_move_up') . '"' . rex_tabindex() . '></a> <a href="#" class="rex-icon-file-down" onclick="moveREXMedialist(' . $id . ',\'down\');return false;" title="' . $I18N->msg('var_medialist_move_down') . '"' . rex_tabindex() . '></a> <a href="#" class="rex-icon-file-bottom" onclick="moveREXMedialist(' . $id . ',\'bottom\');return false;" title="' . $I18N->msg('var_medialist_move_bottom') . '"' . rex_tabindex() . '></a> </span> <span class="rex-widget-column"> <a href="#" class="' . $open_class . '" onclick="' . $open_func . 'return false;" title="' . $I18N->msg('var_media_open') . '"' . rex_tabindex() . '></a> <a href="#" class="' . $add_class . '" onclick="' . $add_func . 'return false;" title="' . $I18N->msg('var_media_new') . '"' . rex_tabindex() . '></a> <a href="#" class="' . $delete_class . '" onclick="' . $delete_func . 'return false;" title="' . $I18N->msg('var_media_remove') . '"' . rex_tabindex() . '></a> <a href="#" class="' . $view_class . '" onclick="' . $view_func . 'return false;" title="' . $I18N->msg('var_media_view') . '"' . rex_tabindex() . '></a> </span> </p> <div class="rex-media-preview"></div> </div> </div> <div class="rex-clearer"></div> '; return $media; }
<?php /** * editme * * @author jan@kristinus.de * * @package redaxo4 * @version svn:$Id$ */ $error = ''; if (!OOAddon::isAvailable('xform')) { $error = 'AddOn "XForm" ist nicht installiert und aktiviert.'; } elseif (OOAddon::getVersion('xform') < '2.2') { $error = 'Das AddOn "XForm" muss mindestens in der Version 2.2 vorhanden sein.'; } elseif (!rex_xform_manager::createBasicSet('em')) { $error = 'Der XForm Manager hat das "em" BasicSet nicht installieren können.'; } if ($error == '') { $REX['ADDON']['install']['editme'] = 1; } else { $REX['ADDON']['installmsg']['editme'] = $error; }
<?php $mypage = 'import_export'; if ($REX['REDAXO'] && is_object($REX["USER"])) { $I18N->appendFile($REX['INCLUDE_PATH'] . '/addons/' . $mypage . '/lang/'); $REX['ADDON']['rxid'][$mypage] = '1'; $REX['ADDON']['name'][$mypage] = $I18N->msg("im_export_importexport"); $REX['ADDON']['perm'][$mypage] = 'import_export[export]'; $REX['ADDON']['version'][$mypage] = "1.3"; $REX['ADDON']['author'][$mypage] = "Jan Kristinus, Markus Staab"; $REX['ADDON']['supportpage'][$mypage] = 'forum.redaxo.de'; $REX['PERM'][] = 'import_export[export]'; $REX['PERM'][] = 'import_export[import]'; $REX['ADDON']['pages'][$mypage] = array(); if ($REX["USER"]->hasPerm('import_export[import]') || $REX["USER"]->isAdmin()) { $REX['ADDON']['pages'][$mypage][] = array('import', $I18N->msg('im_export_import')); } $REX['ADDON']['pages'][$mypage][] = array('', $I18N->msg('im_export_export')); } if (OOAddon::isAvailable('cronjob')) { require_once dirname(__FILE__) . '/classes/class.cronjob.inc.php'; rex_register_extension('CRONJOB_TYPES', array('rex_cronjob_manager', 'registerExtension'), array('class' => 'rex_cronjob_export')); }
function a401_perform_ajax($_rex_ajax, $rxa, $REX) { $rxa['ajaxdir'] .= $REX['REDAXO'] ? 'backend/' : 'frontend/'; if (!$REX['REDAXO'] and !$rxa['settings']['frontend_active']) { return; } if ($REX['REDAXO'] and !$rxa['settings']['backend_active']) { return; } if (strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') { $rxa['ajaxdir'] = str_replace("/", "\\", $rxa['ajaxdir']); } // Code ausführen falls die Datei vorhanden ist if (file_exists($rxa['ajaxdir'] . $_rex_ajax . '.inc.php')) { @ob_end_clean(); @ob_end_clean(); // Fix für REDAXO < 4.2.x if (isset($REX_ARTICLE)) { $REX['ARTICLE'] = $REX_ARTICLE; } // Include der Datei include_once $rxa['ajaxdir'] . $_rex_ajax . '.inc.php'; exit; } else { if (trim($REX["ADDON"][$rxa['name']]["settings"]["errormail"]) != '') { $_subject = 'REX_Ajax Error ' . $REX['SERVER'] . ' ' . $REX['SERVERNAME']; $_mailtext = $_subject . "\n\n" . date('d.m.Y h:i:s') . "\n\n"; ob_start(); var_dump($_REQUEST); $_mailtext .= "_REQUEST\n"; $_mailtext .= ob_get_contents(); ob_end_clean(); ob_start(); var_dump($_SESSION); $_mailtext .= "\n_SESSION\n"; $_mailtext .= ob_get_contents(); ob_end_clean(); ob_start(); var_dump($_SERVER); $_mailtext .= "\n_SERVER\n"; $_mailtext .= ob_get_contents(); ob_end_clean(); $_to = $REX["ADDON"][$rxa['name']]["settings"]["errormail"]; $_header = 'From: ' . $REX['ERROR_EMAIL'] . "\r\n" . 'Reply-To: ' . $REX['ERROR_EMAIL'] . "\r\n" . 'X-Mailer: PHP/' . phpversion(); if (OOAddon::isAvailable('phpmailer')) { if (!isset($I18N)) { $I18N = rex_create_lang($REX['LANG']); } include $REX['INCLUDE_PATH'] . '/addons/phpmailer/config.inc.php'; $mail = new rex_mailer(); $mail->From = $REX['ERROR_EMAIL']; $mail->Subject = $_subject; $mail->Body = $_mailtext; $mail->AddAddress($_to, ''); $mail->Send(); } else { @mail($_to, $_subject, $_mailtext, $_header); } } } }
/** * Gibt das ListButton Template zurück */ function getMedialistButton($id, $value, $category = '', $args = array()) { global $I18N; $open_params = ''; if ($category != '') { $open_params .= '&rex_file_category=' . $category; } foreach ($args as $aname => $avalue) { $open_params .= '&args[' . $aname . ']=' . urlencode($avalue); } $wdgtClass = 'rex-widget-medialist'; if (isset($args['preview']) && $args['preview'] && OOAddon::isAvailable('image_resize')) { $wdgtClass .= ' rex-widget-preview'; } $options = ''; $medialistarray = explode(',', $value); if (is_array($medialistarray)) { foreach ($medialistarray as $file) { if ($file != '') { $options .= '<option value="' . $file . '">' . $file . '</option>'; } } } $media = ' <div class="rex-widget"> <div class="' . $wdgtClass . '"> <input type="hidden" name="MEDIALIST[' . $id . ']" id="REX_MEDIALIST_' . $id . '" value="' . $value . '" /> <p class="rex-widget-field"> <select name="MEDIALIST_SELECT[' . $id . ']" id="REX_MEDIALIST_SELECT_' . $id . '" size="8"' . rex_tabindex() . '> ' . $options . ' </select> </p> <p class="rex-widget-icons"> <a href="#" class="rex-icon-file-top" onclick="moveREXMedialist(' . $id . ',\'top\');return false;"' . rex_tabindex() . '><img src="media/file_top.gif" width="16" height="16" title="' . $I18N->msg('var_medialist_move_top') . '" alt="' . $I18N->msg('var_medialist_move_top') . '" /></a> <a href="#" class="rex-icon-file-open" onclick="openREXMedialist(' . $id . ');return false;"' . rex_tabindex() . '><img src="media/file_open.gif" width="16" height="16" title="' . $I18N->msg('var_media_open') . '" alt="' . $I18N->msg('var_media_open') . '" /></a><br /> <a href="#" class="rex-icon-file-up" onclick="moveREXMedialist(' . $id . ',\'up\');return false;"' . rex_tabindex() . '><img src="media/file_up.gif" width="16" height="16" title="' . $I18N->msg('var_medialist_move_up') . '" alt="' . $I18N->msg('var_medialist_move_top') . '" /></a> <a href="#" class="rex-icon-file-add" onclick="addREXMedialist(' . $id . ');return false;"' . rex_tabindex() . '><img src="media/file_add.gif" width="16" height="16" title="' . $I18N->msg('var_media_new') . '" alt="' . $I18N->msg('var_media_new') . '" /></a><br /> <a href="#" class="rex-icon-file-down" onclick="moveREXMedialist(' . $id . ',\'down\');return false;"' . rex_tabindex() . '><img src="media/file_down.gif" width="16" height="16" title="' . $I18N->msg('var_medialist_move_down') . '" alt="' . $I18N->msg('var_medialist_move_down') . '" /></a> <a href="#" class="rex-icon-file-delete" onclick="deleteREXMedialist(' . $id . ');return false;"' . rex_tabindex() . '><img src="media/file_del.gif" width="16" height="16" title="' . $I18N->msg('var_media_remove') . '" alt="' . $I18N->msg('var_media_remove') . '" /></a><br /> <a href="#" class="rex-icon-file-bottom" onclick="moveREXMedialist(' . $id . ',\'bottom\');return false;"' . rex_tabindex() . '><img src="media/file_bottom.gif" width="16" height="16" title="' . $I18N->msg('var_medialist_move_bottom') . '" alt="' . $I18N->msg('var_medialist_move_bottom') . '" /></a> </p> <div class="rex-media-preview"></div> </div> </div> <div class="rex-clearer"></div> '; return $media; }
/** * @param $addons,... */ public static function setSeoAddon($addons) { $addons = func_get_args(); foreach ($addons as $addon) { if (OOAddon::isAvailable($addon)) { self::$seoAddon = $addon; // Kompatibilität erhalten rex_asd_news::$SEO_ADDON = self::$seoAddon; } } self::$seoSettings = self::setSeoSettings(); if (self::$seoAddon) { self::$urlControlPlugin = OOPlugin::isAvailable(self::$seoAddon, 'url_control'); } // Kompatibilität erhalten rex_asd_news::$SEO_URL_CONTROL = self::$urlControlPlugin; }
$myself = 'seo42'; $myroot = $REX['INCLUDE_PATH'] . '/addons/' . $myself; $error = array(); // append lang file $I18N->appendFile($REX['INCLUDE_PATH'] . '/addons/seo42/lang/'); // includes require_once $REX['INCLUDE_PATH'] . '/addons/seo42/classes/class.seo42_utils.inc.php'; // check redaxo version if (version_compare($REX['VERSION'] . '.' . $REX['SUBVERSION'] . '.' . $REX['MINORVERSION'], '4.4.1', '<=')) { $error[] = $I18N->msg('seo42_install_rex_version'); } // check for concurrent addons $disable_addons = array('url_rewrite', 'yrewrite', 'rexseo', 'rexseo42', 'resource_includer'); foreach ($disable_addons as $a) { if (OOAddon::isInstalled($a) || OOAddon::isAvailable($a)) { $error[] = $I18N->msg('seo42_install_concurrent') . ' ' . $a; } } // auto install plugins $returnmsg = seo42_utils::autoInstallPlugins('seo42', array()); // no plugins yet to auto install if ($returnmsg != '') { $error[] = $returnmsg; } // setup seo db fields if (count($error) == 0) { $sql = new rex_sql(); //$sql->debugsql = true; // IMPORTANT: if adding/removing db fields here, check also for uninstall.inc.php and seo42_utils::afterDBImport() and seo42::emptySEODataAfterClangAdded() $sql->setQuery('ALTER TABLE `' . $REX['TABLE_PREFIX'] . 'article` ADD `seo_title` TEXT, ADD `seo_description` TEXT, ADD `seo_keywords` TEXT, ADD `seo_custom_url` TEXT, ADD `seo_canonical_url` TEXT, ADD `seo_noindex` VARCHAR(1), ADD `seo_ignore_prefix` VARCHAR(1)');
/** * @access public */ function toImage($params = array()) { global $REX; if (!is_array($params)) { $params = array(); } $path = $REX['HTDOCS_PATH']; if (isset($params['path'])) { $path = $params['path']; unset($params['path']); } // Ist das Media ein Bild? if (!$this->isImage()) { $path = 'media/'; $file = 'file_dummy.gif'; // Verwenden einer statischen variable, damit getimagesize nur einmal aufgerufen // werden muss, da es sehr lange dauert static $dummyFileSize; if (empty($dummyFileSize)) { $dummyFileSize = getimagesize($path . $file); } $params['width'] = $dummyFileSize[0]; $params['height'] = $dummyFileSize[1]; } else { $resize = false; // ResizeModus festlegen if (isset($params['resize']) && $params['resize']) { unset($params['resize']); // Resize Addon installiert? if (OOAddon::isAvailable('image_resize')) { $resize = true; if (isset($params['width'])) { $resizeMode = 'w'; $resizeParam = $params['width']; unset($params['width']); } elseif (isset($params['height'])) { $resizeMode = 'h'; $resizeParam = $params['height']; unset($params['height']); } elseif (isset($params['crop'])) { $resizeMode = 'c'; $resizeParam = $params['crop']; unset($params['crop']); } else { $resizeMode = 'a'; $resizeParam = 100; } // Evtl. Größeneinheiten entfernen $resizeParam = str_replace(array('px', 'pt', '%', 'em'), '', $resizeParam); } } // Bild resizen? if ($resize) { $file = 'index.php?rex_resize=' . $resizeParam . $resizeMode . '__' . $this->getFileName(); } else { // Bild 1:1 anzeigen $path .= 'files/'; $file = $this->getFileName(); } } $title = $this->getTitle(); // Alternativtext hinzufügen if (!isset($params['alt'])) { if ($title != '') { $params['alt'] = htmlspecialchars($title); } } // Titel hinzufügen if (!isset($params['title'])) { if ($title != '') { $params['title'] = htmlspecialchars($title); } } // Evtl. Zusatzatrribute anfügen $additional = ''; foreach ($params as $name => $value) { $additional .= ' ' . $name . '="' . $value . '"'; } return sprintf('<img src="%s"%s />', $path . $file, $additional); }
<?php /** * XForm * @author jan.kristinus[at]redaxo[dot]org Jan Kristinus * @author <a href="http://www.yakamara.de">www.yakamara.de</a> */ $addonname = 'xform'; $I18N->appendFile($REX['INCLUDE_PATH'] . '/addons/xform/lang/'); $msg = ''; if ($REX['VERSION'] != '4' || $REX['SUBVERSION'] < '5') { $msg = $I18N->msg('xform_install_redaxo_version_problem', '4.5'); } elseif (version_compare(PHP_VERSION, '5.3.0', '<')) { $msg = $I18N->msg('xform_install_checkphpversion', PHP_VERSION); } elseif (OOAddon::isAvailable('phpmailer') != 1 || OOAddon::getVersion('phpmailer') < '2.8') { $msg = $I18N->msg('xform_install_phpmailer_version_problem', '2.8'); } else { // AUTOINSTALL THESE PLUGINS $autoinstall = array('email', 'setup', 'manager'); // GET ALL ADDONS & PLUGINS $all_addons = rex_read_addons_folder(); $all_plugins = array(); foreach ($all_addons as $_addon) { $all_plugins[$_addon] = rex_read_plugins_folder($_addon); } // DO AUTOINSTALL $pluginManager = new rex_pluginManager($all_plugins, $addonname); foreach ($autoinstall as $pluginname) { // INSTALL PLUGIN if (($instErr = $pluginManager->install($pluginname)) !== true) { $msg = $instErr;
<?php /** * Guestbook Addon * @author staab[at]public-4u[dot]de Markus Staab * @author <a href="http://www.public-4u.de">www.public-4u.de</a> * @package redaxo3 * @version $Id: install.inc.php,v 1.2 2007/06/11 11:55:01 kills Exp $ */ $error = ''; if (!OOAddon::isAvailable('addon_framework')) { $error .= 'Required addon "addon_framework" is either not installed or not activated!'; } if ($error != '') { $REX['ADDON']['installmsg']['guestbook'] = $error; } else { $REX['ADDON']['install']['guestbook'] = 1; }
/** * @param rex_news_form $form * @param $id * @param $clang */ public static function saveOverLangValues(rex_news_form $form, $id, $clang) { global $REX; $lang = new rex_sql(); $lang->setQuery('SELECT `id` FROM `' . $REX['TABLE_PREFIX'] . 'clang` WHERE `id` != ' . $clang); for ($i = 1; $i <= $lang->getRows(); $i++) { $sql = new rex_sql(); $sql->setTable($form->getTableName()); $sql->setDebug(true); $sql->setWhere('`id` = ' . $id . ' AND `clang` = ' . $lang->getValue('id')); $sql->select('id'); $sql->setTable($form->getTableName()); $sql->setDebug(true); $sql->setWhere('`id` = ' . $id . ' AND `clang` = ' . $lang->getValue('id')); if (OOAddon::isAvailable('metainfo')) { $sql->setValues($form->getMetaValues()); } if ($sql->getRows()) { $sql->setValues(array_intersect_key($form->getValues(), array_flip($form->getOverSavedFields()))); $sql->setValue('clang', $lang->getValue('id')); $sql->setValue('id', $id); $sql->update(); } else { $sql->setValues($form->getValues()); $sql->setValue('clang', $lang->getValue('id')); $sql->setValue('id', $id); $sql->insert(); } $lang->next(); } }
// Damit nur die neueste Version in der Liste erscheint, müssen wir hier // noch mal eine Sortierungsfunktion aufrufen usort($addon, "cmp"); $addon_status = ''; if (OOAddon::isAvailable($addon[0]['addon_key'])) { $addon_status = '<img src="media/addons/installer/play.gif" title="Installert und aktiviert" alt="Installiert und aktiviert" />'; } elseif (OOAddon::isInstalled($addon[0]['addon_key']) && !OOAddon::isActivated($addon[0]['addon_key'])) { $addon_status = '<img src="media/addons/installer/pause.gif" title="Installiert, jedoch nicht aktiviert" alt="Nicht aktiviert" />'; } elseif (Installer_check_if_addon_exists($REX['INCLUDE_PATH'] . "/addons/" . $addon[0]['addon_key'])) { $addon_status = '<img src="media/addons/installer/on_server.gif" title="Im AddOn Ordner vorhanden" alt="Im AddOn Ordner vorhanden" />'; } else { $addon_status = '<img src="media/addons/installer/addon.gif" title="Nicht auf Server vorhanden" alt="Nicht auf dem Server" />'; } if (OOAddon::isAvailable($addon[0]['addon_key']) && !OOAddon::getVersion($addon[0]['addon_key'])) { $systemVersion = '<img src="media/addons/installer/no_version.gif" title="Versionsangabe in der config.inc.php fehlt" alt="Versionsangabe in der config.inc.php fehlt" />'; } elseif (!OOAddon::isAvailable($addon[0]['addon_key'])) { $systemVersion = '-'; } else { $systemVersion = OOAddon::getVersion($addon[0]['addon_key']); } $updateAvailable = ""; if (checkAddonVersion(OOAddon::getVersion($addon[0]['addon_key']), $addon[0]['file_version'])) { $updateAvailable = 'updateAvailable'; $updatesAvailable++; // Wert für Verfügbare Addons hochzählen } if ($addon[0]['addon_key'] == "installer") { $installer_version = $addon[0]['file_version']; $installer_direkt_install_url = '?page=installer&subpage=addon_installer&pluginpage=install&addonurl=' . $addon[0]['file_path'] . '&addonid=' . $key . '&installname=' . $addon[0]['addon_key']; } $addonList .= '<tr class="' . $updateAvailable . ' searchable" data-addon="?page=installer&subpage=addon_installer&pluginpage=install&addonurl=' . $addon[0]['file_path'] . '&addonid=' . $key . '&installname=' . $addon[0]['addon_key'] . '">';
$this_REX = $REX['VERSION'] . '.' . $REX['SUBVERSION'] . '.' . ($REX['MINORVERSION'] = "1"); if (version_compare($this_REX, $requiered_REX, '<')) { $REX['ADDON']['installmsg'][$mypage] = 'Dieses Addon benötigt Redaxo Version ' . $requiered_REX . ' oder höher.'; $REX['ADDON']['install'][$mypage] = 0; $do_install = false; } // CHECK PHP VERSION //////////////////////////////////////////////////////////////////////////////// if (intval(PHP_VERSION) < $requiered_PHP) { $REX['ADDON']['installmsg'][$mypage] = 'Dieses Addon benötigt mind. PHP ' . $requiered_PHP . '!'; $REX['ADDON']['install'][$mypage] = 0; $do_install = false; } // CHECK REQUIERED ADDONS //////////////////////////////////////////////////////////////////////////////// foreach ($requiered_addons as $a) { if (!OOAddon::isInstalled($a)) { $REX['ADDON']['installmsg'][$mypage] = '<br />Addon "' . $a . '" ist nicht installiert. >>> <a href="index.php?page=addon&addonname=' . $a . '&install=1">jetzt installieren</a> <<<'; $do_install = false; } else { if (!OOAddon::isAvailable($a)) { $REX['ADDON']['installmsg'][$mypage] = '<br />Addon "' . $a . '" ist nicht aktiviert. >>> <a href="index.php?page=addon&addonname=' . $a . '&activate=1">jetzt aktivieren</a> <<<'; $do_install = false; } } } // DO INSTALL //////////////////////////////////////////////////////////////////////////////// if ($do_install) { $REX['ADDON']['install'][$mypage] = 1; }
function a720_echotextile($msg) { global $REX; if (OOAddon::isAvailable("textile")) { if ($msg != '') { $msg = str_replace("\t", "", $msg); // tabs entfernen if (strpos($REX['LANG'], 'utf')) { echo rex_a79_textile($msg); } else { echo utf8_decode(rex_a79_textile($msg)); } } } else { $fallback = rex_warning('WARNUNG: Das <a href="index.php?page=addon">Textile Addon</a> ist nicht aktiviert! Der Text wird ungeparst angezeigt..'); $fallback .= '<pre>' . $msg . '</pre>'; echo $fallback; } }
<?php /** * * @package redaxo4 * @version svn:$Id$ */ // *************************************** CONFIG $thumbs = true; $image_manager = OOAddon::isAvailable('image_manager'); $image_resize = OOAddon::isAvailable('image_resize'); // *************************************** KATEGORIEN CHECK UND AUSWAHL // ***** kategorie auswahl $db = rex_sql::factory(); $file_cat = $db->getArray('SELECT * FROM ' . $REX['TABLE_PREFIX'] . 'file_category ORDER BY name ASC'); // ***** select bauen $sel_media = new rex_mediacategory_select($check_perm = false); $sel_media->setId("rex_file_category"); $sel_media->setName("rex_file_category"); $sel_media->setSize(1); $sel_media->setStyle('class="rex-form-select"'); $sel_media->setSelected($rex_file_category); $sel_media->setAttribute('onchange', 'this.form.submit();'); $sel_media->addOption($I18N->msg('pool_kats_no'), "0"); // ----- EXTENSION POINT echo rex_register_extension_point('PAGE_MEDIAPOOL_HEADER', '', array('subpage' => $subpage, 'category_id' => $rex_file_category)); // ***** formular $cat_out = '<div class="rex-form" id="rex-form-mediapool-selectcategory"> <form action="index.php" method="post"> <fieldset class="rex-form-col-1"> <legend>' . $I18N->msg('pool_select_cat') . '</legend>
// Update 1.4 // check if old fields exists $sql = new rex_sql(); $rows = $sql->showColumns(rex_asd_news_config::getTable()); $metaCols = false; foreach ($rows as $row) { if ($row['name'] == 'category') { $metaCols = true; break; } } if (!OOAddon::isAvailable('metainfo')) { $REX['ADDON']['update'][rex_asd_news_config::getName()] = 0; $REX['ADDON']['updatemsg'][rex_asd_news_config::getName()] = 'Metainfo Addon nicht gefunden'; } if (OOAddon::isAvailable('metainfo') && $metaCols) { include_once __DIR__ . '/classes/metainfo/rex_asd_metainfo_install.php'; rex_asd_metainfo_install::setProperty(); if ($error = rex_asd_metainfo_install::addFields()) { $REX['ADDON']['update'][rex_asd_news_config::getName()] = 0; $REX['ADDON']['updatemsg'][rex_asd_news_config::getName()] .= $error; } else { // Einträge Übernehmen $sql->setQuery('UPDATE `' . rex_asd_news_config::getTable() . '` SET `asd_category` = `category`, `asd_picture` = `picture`, `asd_text` = `text`'); // Alte Felder löschen $sql->setQuery('ALTER TABLE `' . rex_asd_news_config::getTable() . '` DROP `category`, DROP `picture`,
}); </script>'; } if ($func == 'add' || $func == 'edit') { if (rex_asd_news_config::isControlPlugin()) { foreach (array('REX_FORM_SAVED', 'REX_FORM_DELETED') as $extension) { rex_register_extension($extension, 'url_generate::generatePathFile'); } } $title = $func == 'add' ? $I18N->msg('add') : $I18N->msg('edit'); $form = new rex_news_form(rex_asd_news_config::getTable(), ucfirst($title), 'id=' . $id . ' AND clang = ' . $clang); $form->divId = 'asd_news-addon-editmode'; $field = $form->addTextField('title'); $field->setLabel($I18N->msg('asd_news_title')); if (OOAddon::isAvailable('metainfo')) { $form->addRawField($form->getMetainfoExtension()); } $form->addHiddenField('clang', (int) $clang); $form->addHiddenField('updatedAt', $now->format('Y-m-d H:i:s')); $form->addHiddenField('updatedBy', $REX['USER']->getValue('user_id')); $form->addParam('clang', (int) $clang); $form->addParam('id', (int) $id); if ($func == 'add') { $id = rex_asd_news::getLastNewsId() + 1; } $form->addHiddenField('id', $id); if ($func == 'add') { $form->addHiddenField('createdAt', $now->format('Y-m-d H:i:s')); $form->addHiddenField('createdBy', $REX['USER']->getValue('user_id')); rex_register_extension('REX_FORM_SAVED', function ($subject) use($clang, $REX, $id) {
$status = $I18N->msg('addon_yes') . ' - <a href="' . $addonurl . 'activate=0">' . $I18N->msg('addon_deactivate') . '</a>'; } elseif (OOAddon::isInstalled($addon)) { $status = $I18N->msg('addon_no') . ' - <a href="' . $addonurl . 'activate=1">' . $I18N->msg('addon_activate') . '</a>'; } else { $status = $I18N->msg('addon_notinstalled'); } echo ' <tr class="rex-addon"> <td class="rex-icon rex-col-a"><span class="rex-i-element rex-i-addon"><span class="rex-i-element-text">' . htmlspecialchars($addon) . '</span></span></td> <td class="rex-col-b">' . htmlspecialchars($addon) . ' [<a href="index.php?page=addon&subpage=help&addonname=' . $addon . '">?</a>]</td> <td class="rex-col-c">' . $install . '</td> <td class="rex-col-d">' . $status . '</td> <td class="rex-col-e">' . $uninstall . '</td> <td class="rex-col-f">' . $delete . '</td> </tr>' . "\n "; if (OOAddon::isAvailable($addon)) { foreach ($PLUGINS[$addon] as $plugin) { $pluginurl = 'index.php?page=addon&addonname=' . $addon . '&pluginname=' . $plugin . '&'; $delete = '<a href="' . $pluginurl . 'delete=1" onclick="return confirm(\'' . htmlspecialchars($I18N->msg('plugin_delete_question', $plugin)) . '\');">' . $I18N->msg('addon_delete') . '</a>'; if (OOPlugin::isInstalled($addon, $plugin)) { $install = $I18N->msg('addon_yes') . ' - <a href="' . $pluginurl . 'install=1">' . $I18N->msg('addon_reinstall') . '</a>'; $uninstall = '<a href="' . $pluginurl . 'uninstall=1" onclick="return confirm(\'' . htmlspecialchars($I18N->msg('plugin_uninstall_question', $plugin)) . '\');">' . $I18N->msg('addon_uninstall') . '</a>'; } else { $install = $I18N->msg('addon_no') . ' - <a href="' . $pluginurl . 'install=1">' . $I18N->msg('addon_install') . '</a>'; $uninstall = $I18N->msg('addon_notinstalled'); } if (OOPlugin::isActivated($addon, $plugin)) { $status = $I18N->msg('addon_yes') . ' - <a href="' . $pluginurl . 'activate=0">' . $I18N->msg('addon_deactivate') . '</a>'; } elseif (OOPlugin::isInstalled($addon, $plugin)) { $status = $I18N->msg('addon_no') . ' - <a href="' . $pluginurl . 'activate=1">' . $I18N->msg('addon_activate') . '</a>'; } else {
if ($as !== false) { // --- addon gefunden $perm = $REX['ADDON']['perm'][$as]; $hasPerm = $perm == '' || $REX_USER->hasPerm($perm) || $REX_USER->hasPerm('admin[]'); // Suche zuerst nach einem Addon, dass so heisst wie die aktuelle page // z.b addons/structure/pages/index.inc.php $addon_page = $REX['INCLUDE_PATH'] . '/addons/' . $page . '/pages/index.inc.php'; if (file_exists($addon_page) && $hasPerm && OOAddon::isAvailable($page)) { $withheader = false; $REX['PAGEPATH'] = $addon_page; } else { // Kein Addon gefunden, also suchen wir nach einem Addon, // dass vorgegeben hat, eine Page zu haben, die so heisst, wie die aktuelle // z.b addons/xxx/pages/structure.inc.php $addon_page = $REX['INCLUDE_PATH'] . '/addons/' . $as . '/pages/' . $page . '.inc.php'; if (file_exists($addon_page) && $hasPerm && OOAddon::isAvailable($as)) { $withheader = false; $REX['PAGEPATH'] = $addon_page; } } } } // ----- standard pages if ($REX['PAGEPATH'] == '' && $page == 'addon' && ($REX_USER->hasPerm('addon[]') || $REX_USER->hasPerm('admin[]'))) { $page_name = $I18N->msg('addon'); } elseif ($REX['PAGEPATH'] == '' && $page == 'specials' && ($REX_USER->hasPerm('specials[]') || $REX_USER->hasPerm('admin[]'))) { $page_name = $I18N->msg('specials'); } elseif ($REX['PAGEPATH'] == '' && $page == 'module' && ($REX_USER->hasPerm('module[]') || $REX_USER->hasPerm('admin[]'))) { $page_name = $I18N->msg('modules'); } elseif ($REX['PAGEPATH'] == '' && $page == 'template' && ($REX_USER->hasPerm('template[]') || $REX_USER->hasPerm('admin[]'))) { $page_name = $I18N->msg('template');
<?php /** * * @package redaxo4 * @version svn:$Id$ */ // *************************************** CONFIG $thumbs = true; $thumbsresize = true; if (!OOAddon::isAvailable('image_resize')) { $thumbsresize = false; } // *************************************** KATEGORIEN CHECK UND AUSWAHL // ***** kategorie auswahl $db = new rex_sql(); $file_cat = $db->getArray('SELECT * FROM ' . $REX['TABLE_PREFIX'] . 'file_category ORDER BY name ASC'); // ***** select bauen $sel_media = new rex_select(); $sel_media->setId("rex_file_category"); $sel_media->setName("rex_file_category"); $sel_media->setSize(1); $sel_media->setStyle('class="rex-form-select"'); $sel_media->setSelected($rex_file_category); $sel_media->setAttribute('onchange', 'this.form.submit();'); $sel_media->addOption($I18N->msg('pool_kats_no'), "0"); $mediacat_ids = array(); if ($rootCats = OOMediaCategory::getRootCategories()) { foreach ($rootCats as $rootCat) { rex_mediapool_addMediacatOptions($sel_media, $rootCat, $mediacat_ids); }
/** * Hilfsfunktion zur Installation. * * @param int $step Installationsschritt * @return string */ function _a_63_install($step = 0) { global $REX; /** * init */ $error = ''; $tmpFolder = $REX['MEDIAFOLDER'] . '/' . $REX['TEMP_PREFIX'] . '/'; $mediaFolder = $REX['MEDIAFOLDER'] . '/' . $REX['TEMP_PREFIX'] . '/guestbook_63/'; $cssPathSource = '/addons/guestbook/css/'; $cssFile = 'guestbook.css'; static $_a63_checkTabelle = ''; switch ($step) { case 1: /** * pruefe config/ auf Schreibrechte */ $error = rex_is_writable(dirname(__FILE__) . '/config'); break; case 2: /** * pruefe config/status.txt auf Schreibrechte */ $error = rex_is_writable(dirname(__FILE__) . '/config/status.txt'); break; case 3: /** * das addon_framework muss installiert und aktiviert sein */ if (!OOAddon::isAvailable('addon_framework')) { $error = 'Required addon "addon_framework" is either not installed or not activated!'; } break; case 4: // erstelle tmp-Ordner, wenn nicht schon vorhanden if (!is_dir($tmpFolder) && !mkdir($tmpFolder)) { $error = 'Unable to create folder "' . $tmpFolder . '"'; } @chmod($tmpFolder, $REX['DIRPERM']); break; case 5: // erstelle AddOn-Ordner im tmp-Ordner if (!is_dir($mediaFolder) && !mkdir($mediaFolder)) { $error = 'Unable to create folder "' . $mediaFolder . '"'; } @chmod($mediaFolder, $REX['DIRPERM']); break; case 6: // kopiere CSS in Mediafolder $cssSrc = $REX['INCLUDE_PATH'] . $cssPathSource . $cssFile; $cssDst = $mediaFolder . $cssFile; if (!file_exists($cssDst) && !copy($cssSrc, $cssDst)) { $error = 'Unable to copy file to "' . $cssDst . '"'; } // setze Rechte nach master.inc.php-Vorgabe @chmod($cssDst, $REX['FILEPERM']); break; case 7: // Gibt es die GB-Tabelle schon? $_a63_checkTabelle = rex_a63_CheckTabelle(); // SQL wird nur ausgefuehrt, wenn die Tabelle noch nicht in der DB existiert. if (!$_a63_checkTabelle) { $error = rex_install_dump(dirname(__FILE__) . '/install_tabelle.sql', false); } break; case 8: // installiere die benoetigten Module und Aktionen // ToDo: eine Ueberpruefung ob die Module und Aktionen schon installiert ist waere notwendig // ToDo: aber dazu fehlen noch einige Vorraussetzungen in den Redaxotabellen selbst $error = rex_install_dump(dirname(__FILE__) . '/install_moduleaction.sql', false); break; case 9: // DB-Daten installiert? Dann hiermit weiter. include dirname(__FILE__) . '/install.php'; // rex_a63_installAction2Modul(Name des Modules, Name der Action) $error = rex_a63_installAction2Modul('Gaestebuch - Eintragsliste', 'Gaestebuch - Eintragsliste StatusPerDatei'); break; default: $error = $I18N_A63('Fehler bei der Installation. Kein passender Installationsschritt gefunden.'); break; } return $error; }
// Termin getKachelboxTitel($REX['ADDON']['d2u_kurse']['settings']['termin_titel'], $REX['ADDON']['d2u_kurse']['settings']['termin_bild'], $REX['ADDON']['d2u_kurse']['settings']['termin_farbe'], kurse_utils::getStartkachelURL($REX['ADDON']['d2u_kurse']['settings']['termin_titel'], $REX['CUR_CLANG'], TRUE)); print '</div>'; print '<div class="col-xs-8 col-sm-2 head-search-bottom">'; print '<div class="view_head_search"><a href="' . rex_getUrl($REX['ADDON']['d2u_kurse']['settings']['anmeldung_artikel']) . '"><img src="' . seo42::getImageManagerFile("leere_kachel.png", "d2u_kurse_header") . '" alt=""></a></div>'; print '<form action="' . rex_getUrl($REX['ADDON']['d2u_kurse']['settings']['kurse_artikel']) . '" method="post">'; print '<input type="text" class="suche" name="suche" value="' . $_SESSION['suche'] . '">'; print '</form>'; print '</div>'; } else { print '<div class="col-xs-8 col-sm-6 logo-start">'; print '<img src="' . seo42::getMediaFile("dks-logo-gr.png") . '" alt="Dieter-Kaltenbach-Stiftung">'; print '</div>'; print '<div class="col-xs-0 col-sm-4">'; print '</div>'; if (OOAddon::isAvailable('d2u_kurse')) { print '<div class="col-xs-4 col-sm-2">'; print '<div class="view_head_search_start"><a href="' . rex_getUrl($REX['ADDON']['d2u_kurse']['settings']['anmeldung_artikel']) . '"><img src="' . seo42::getImageManagerFile("leere_kachel.png", "d2u_kurse_header") . '" alt=""></a></div>'; print '<form action="' . rex_getUrl($REX['ADDON']['d2u_kurse']['settings']['kurse_artikel']) . '" method="post">'; print '<input type="text" class="suche" name="suche" value="' . $_SESSION['suche'] . '">'; print '</form>'; print '</div>'; } } ?> </div> </div> </header> <section class="section"> <div class="container"> <div class="row">