/** * Gibt ein Array aller verfügbaren Plugins zurück. * * @param string $addon Name des Addons * * @return array Array aller verfügbaren Plugins */ function getAvailablePlugins($addon) { $avail = array(); foreach (OOPlugin::getRegisteredPlugins($addon) as $plugin) { if (OOPlugin::isAvailable($addon, $plugin)) { $avail[] = $plugin; } } return $avail; }
// Name $field = $form->addTextField('name'); $field->setLabel($I18N_KURSE->msg('name')); $field->setAttribute('maxlenght', '25'); // Bild $field = $form->addMediaField('bild'); $field->setLabel($I18N_KURSE->msg('bild')); // Elternkategorie $field = $form->addSelectField('eltern_zielgruppe_id'); $field->setLabel($I18N_KURSE->msg('elternkategorie')); $elternkategorie = $field->getSelect(); $elternkategorie->setSize(1); $elternkategorie->addOption($I18N_KURSE->msg('keine_eltern'), -1); $elternkategorie_sql = 'SELECT name, zielgruppe_id FROM ' . $REX['TABLE_PREFIX'] . 'd2u_kurse_zielgruppen ' . 'WHERE zielgruppe_id <> ' . $entry_id . ' ' . 'AND (eltern_zielgruppe_id < 0 OR eltern_zielgruppe_id IS NULL) ' . 'ORDER BY name'; $elternkategorie->addSqlOptions($elternkategorie_sql); if (OOPlugin::isAvailable('d2u_kurse', 'kufer_import')) { // Name der entsprechenden Kufer Kategorie $field = $form->addTextField('kufer_zielgruppe_name'); $field->setLabel($I18N_KURSE->msg('kufer_kategorie_name')); // Kategorie Bezeichnungsstrukturen in Kufer $field = $form->addTextAreaField('kufer_kategorien_bezeichnungsstrukturen'); $field->setLabel($I18N_KURSE->msg('kufer_kategorien_bezeichnungsstrukturen')); $field->setAttribute('rows', '15'); } // Updatedatum $field = $form->addHiddenField('updatedate'); $field->setValue(time()); if ($func == 'edit') { $form->addParam('entry_id', $entry_id); } // Trigger für RexSEO Pathlist Update
} $lang_chooser .= "<a href='" . $_SERVER["PHP_SELF"] . "?page=" . $page . "&subpage=" . $subpage . "&subform=" . ($clang_id + 1) . "&func=" . $func_link . "&entry_id=" . $entry_id . "' " . $style . ">"; $lang_chooser .= $clang_name; $lang_chooser .= "</a>"; } } } if ($subform == 0) { $form = rex_form::factory($REX['TABLE_PREFIX'] . 'd2u_stellenmarkt_kategorien', $I18N_STELLEN->msg('kategorien') . " " . $I18N_STELLEN->msg('sprachunabhaengig'), "kategorie_id = " . $entry_id, "post", false); // Formularauswahl $form->addRawField(raw_field("", $lang_chooser)); // Interne Bezeichnung $field = $form->addTextField('interne_bezeichnung'); $field->setLabel($I18N_STELLEN->msg('interne_bezeichnung')); // HR4YOU Katageorie ID if (OOPlugin::isAvailable('d2u_stellenmarkt', 'hr4you_sync')) { $field = $form->addTextField('hr4you_berufskategorie_id'); $field->setLabel($I18N_STELLEN->msg('hr4you_berufskategorie_id')); } if ($func == 'edit') { $form->addParam('entry_id', $entry_id); } // Trigger für SEO42 Pathlist Update $form->addParam('seo42', 'update'); $form->show(); } else { // CLANG wird in variable $subform uebergeben; -1 da Sprachen mit ID 0 beginnen, PHP diesen Wert aber nicht uebermittelt $clang_id = $subform - 1; $form = rex_form::factory($REX['TABLE_PREFIX'] . 'd2u_stellenmarkt_kategorien_lang', $I18N_STELLEN->msg('kategorien') . " " . $REX['CLANG'][$clang_id], "kategorie_id = " . $entry_id . " AND clang_id = " . $clang_id, "post", false); // Formularauswahl $form->addRawField(raw_field("", $lang_chooser));
$select->addOption($template['name'], $template['id']); } } else { // normal text $field =& $form->addTextField('default_template_id', $defaultId); $field->setLabel($I18N->msg('website_manager_website_default_template_id')); } // protocol $field =& $form->addSelectField('protocol'); $field->setLabel($I18N->msg('website_manager_website_protocol')); $select =& $field->getSelect(); $select->setSize(1); $select->addOption($I18N->msg('website_manager_website_http'), 'http'); $select->addOption($I18N->msg('website_manager_website_https'), 'https'); // theme if (OOPlugin::isAvailable('website_manager', 'themes')) { $field =& $form->addSelectField('theme_id'); $field->setLabel($I18N->msg('website_manager_website_theme')); $select =& $field->getSelect(); $select->setSize(1); $select->addOption($I18N->msg('website_manager_theme_none'), 0); $query = 'SELECT name as label, id FROM rex_website_theme'; $select->addSqlOptions($query); } if ($func == 'edit') { $key = $I18N->msg('website_manager_edit_button_key'); if ($REX['WEBSITE_MANAGER_SETTINGS']['allow_website_delete']) { if ($website_id == 1) { $form->elements[$key][0]->deleteElement->setAttribute('onclick', "alert('" . $I18N->msg('website_manager_website_master_website_disallow_delete') . "'); return false;"); } else { $form->elements[$key][0]->deleteElement->setAttribute('onclick', "return confirm('" . $I18N->msg('website_manager_website_delete_confirm') . "');");
<?php // append lang file $I18N->appendFile($REX['INCLUDE_PATH'] . '/addons/be_utilities/lang/'); if (OOPlugin::isAvailable('be_style', 'customizer')) { $REX['ADDON']['installmsg']['be_utilities'] = $I18N->msg('be_utilities_uninstall_customizer'); } else { $REX['ADDON']['install']['be_utilities'] = 1; }
/** * @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; }
// init addon $REX['ADDON']['name']['navigation_factory'] = 'Navigation Factory'; $REX['ADDON']['page']['navigation_factory'] = 'navigation_factory'; $REX['ADDON']['version']['navigation_factory'] = '1.1.1'; $REX['ADDON']['author']['navigation_factory'] = 'RexDude'; $REX['ADDON']['supportpage']['navigation_factory'] = 'forum.redaxo.org'; $REX['ADDON']['perm']['navigation_factory'] = 'navigation_factory[]'; // permissions $REX['PERM'][] = 'navigation_factory[]'; // add lang file if ($REX['REDAXO']) { $I18N->appendFile($REX['INCLUDE_PATH'] . '/addons/navigation_factory/lang/'); } // includes require $REX['INCLUDE_PATH'] . '/addons/navigation_factory/classes/class.rex_nav.inc.php'; require $REX['INCLUDE_PATH'] . '/addons/navigation_factory/classes/class.rex_lang_nav.inc.php'; require $REX['INCLUDE_PATH'] . '/addons/navigation_factory/classes/class.rex_breadcrumb_nav.inc.php'; require $REX['INCLUDE_PATH'] . '/addons/navigation_factory/classes/class.rex_navigation_factory_utils.inc.php'; if (rex_request('page') != 'addon') { if (!class_exists('simple_html_dom_node') && !OOPlugin::isAvailable('rexsearch', 'plaintext')) { require $REX['INCLUDE_PATH'] . '/addons/navigation_factory/classes/class.simple_html_dom.inc.php'; } } if ($REX['REDAXO']) { // add subpages $REX['ADDON']['navigation_factory']['SUBPAGES'] = array(array('', $I18N->msg('navigation_factory_start')), array('codeexamples', $I18N->msg('navigation_factory_codeexamples')), array('help', $I18N->msg('navigation_factory_help'))); // add css/js files to page header if (rex_request('page') == 'navigation_factory') { rex_register_extension('PAGE_HEADER', 'rex_navigation_factory_utils::appendToPageHeader'); } }
echo rex_warning($I18N->msg('tracking_code_configfile_nosave')); } } rex_tracking_code::init(); $trackingCode = rex_tracking_code::getTrackingCode(); ?> <div class="rex-addon-output"> <h2 class="rex-hl2"><?php echo $I18N->msg('tracking_code_tracking_code', rex_tracking_code_utils::sanitizeUrl($REX['SERVER'])); ?> </h2> <div class="rex-area-content"> <form action="index.php" method="post"> <textarea <?php if (OOPlugin::isAvailable('be_utilities', 'codemirror') || isset($REX['ADDON']['be_style']['plugin_customizer']['codemirror']) && $REX['ADDON']['be_style']['plugin_customizer']['codemirror'] == 1) { ?> style="display: none;"<?php } ?> class="codemirror" codemirror-mode="php/htmlmixed" name="tracking_code"><?php echo $trackingCode; ?> </textarea> <input type="hidden" name="page" value="tracking_code" /> <input type="hidden" name="subpage" value="" /> <input type="hidden" name="func" value="save" /> <div class="rex-form-row"> <p class="button"><input type="submit" class="rex-form-submit" name="sendit" value="<?php echo $I18N->msg('tracking_code_save_button');
<?php // append lang file $I18N->appendFile($REX['INCLUDE_PATH'] . '/addons/website_manager/lang/'); // check redaxo version if (version_compare($REX['VERSION'] . '.' . $REX['SUBVERSION'] . '.' . $REX['MINORVERSION'], '4.4.1', '<=')) { // version incorrect $REX['ADDON']['installmsg']['website_manager'] = $I18N->msg('website_manager_install_rex_version'); } elseif (OOPlugin::isAvailable('be_utilities', 'colorizer')) { // colorizer plugin $REX['ADDON']['installmsg']['website_manager'] = $I18N->msg('website_manager_install_colorizer'); } elseif (OOPlugin::isAvailable('be_utilities', 'frontend_link')) { // prontend_link plugin $REX['ADDON']['installmsg']['website_manager'] = $I18N->msg('website_manager_install_frontend_link'); } elseif (OOPlugin::isAvailable('be_style', 'customizer') && (isset($REX['ADDON']['be_style']['plugin_customizer']['labelcolor']) && $REX['ADDON']['be_style']['plugin_customizer']['labelcolor'] != '') || isset($REX['ADDON']['be_style']['plugin_customizer']['showlink']) && $REX['ADDON']['be_style']['plugin_customizer']['showlink'] == 1) { // customizer plugin $REX['ADDON']['installmsg']['website_manager'] = $I18N->msg('website_manager_install_customizer'); } else { // version correct. proceed... require_once $REX['INCLUDE_PATH'] . '/addons/website_manager/paths.inc.php'; require_once $REX['INCLUDE_PATH'] . '/addons/website_manager/classes/class.rex_website.inc.php'; require_once $REX['INCLUDE_PATH'] . '/addons/website_manager/classes/class.rex_website_manager.inc.php'; require_once $REX['INCLUDE_PATH'] . '/addons/website_manager/classes/class.rex_website_manager_utils.inc.php'; $firstWebsiteId = rex_website::firstId; $firstWebsiteColor = rex_website::defaultColor; $firstTablePrefix = rex_website::tablePrefix; $firstWebsiteProtocol = rex_website::defaultProtocol; $defaultThemeId = rex_website::defaultThemeId; $sql = new rex_sql(); //$sql->debugsql = true; $sql->setQuery('CREATE TABLE IF NOT EXISTS `rex_website` (
/** * Konstruktor. Stellt die Daten der Stelle aus der Datenbank zusammen. * @param int $stellen_id Stellen ID. * @param int $clang_id Redaxo SprachID. * @param string $table_prefix Redaxo Tabellen Praefix ($REX['TABLE_PREFIX']) */ public function __construct($stellen_id, $clang_id, $table_prefix = "rex_") { $this->table_prefix = $table_prefix; // Sprachfallback $query_prove = "SELECT * FROM " . $this->table_prefix . "d2u_stellenmarkt_stellen_lang AS lang " . "WHERE stellen_id = " . $stellen_id . " " . "ORDER BY clang_id DESC"; $result_prove = new rex_sql(); $result_prove->setQuery($query_prove); $num_rows_prove = $result_prove->getRows(); $is_lang_available = false; $fallback_lang_id = 0; for ($i = 0; $i < $num_rows_prove; $i++) { if ($result_prove->getValue("lang.clang_id") == $clang_id) { $is_lang_available = true; } else { $fallback_lang_id = $result_prove->getValue("lang.clang_id"); } $result_prove->next(); } $sql_clang_id = $clang_id; if ($is_lang_available == false) { $sql_clang_id = $fallback_lang_id; } $query = "SELECT * FROM " . $this->table_prefix . "d2u_stellenmarkt_stellen AS stellen " . "LEFT JOIN " . $this->table_prefix . "d2u_stellenmarkt_stellen_lang AS lang " . "ON stellen.stellen_id = lang.stellen_id " . "WHERE stellen.stellen_id = " . $stellen_id . " " . "AND (clang_id = " . $sql_clang_id . " OR clang_id IS NULL) " . "LIMIT 0, 1"; $result = new rex_sql(); $result->setQuery($query); $num_rows = $result->getRows(); if ($num_rows > 0) { $this->stellen_id = $result->getValue("stellen_id"); if ($result->getValue("clang_id") != "") { $this->clang_id = $result->getValue("clang_id"); } $this->interne_bezeichnung = $result->getValue("interne_bezeichnung"); $this->interne_nummer = $result->getValue("interne_nummer"); $this->datum = $result->getValue("datum"); $this->ort = $result->getValue("ort"); if ($result->getValue("bild") != "") { $this->bild = $result->getValue("bild"); } $this->kontakt = new Kontakt($result->getValue("kontakt_id"), $this->table_prefix); $this->kategorie_ids = preg_grep('/^\\s*$/s', explode("|", $result->getValue("kategorie_ids")), PREG_GREP_INVERT); $this->artikel_id = $result->getValue("artikel_id"); $this->bezeichnung = $result->getValue("bezeichnung"); if (OOPlugin::isAvailable('d2u_stellenmarkt', 'hr4you_sync')) { $this->hr4you_einleitung = $result->getValue("hr4you_einleitung"); $this->hr4you_url_application_form = $result->getValue("hr4you_url_application_form"); } else { $this->hr4you_einleitung = ''; $this->hr4you_url_application_form = ''; } $this->aufgaben_ueberschrift = $result->getValue("aufgaben_ueberschrift"); $aufgaben_text = str_replace("<ul>", '<ul class="bullets">', htmlspecialchars_decode($result->getValue("aufgaben_text"))); $aufgaben_text = str_replace("<li>", "<li><span>", $aufgaben_text); $aufgaben_text = str_replace("</li>", "</span></li>", $aufgaben_text); $this->aufgaben_text = $aufgaben_text; $this->profil_ueberschrift = $result->getValue("profil_ueberschrift"); $profil_text = str_replace("<ul>", '<ul class="bullets">', htmlspecialchars_decode($result->getValue("profil_text"))); $profil_text = str_replace("<li>", "<li><span>", $profil_text); $profil_text = str_replace("</li>", "</span></li>", $profil_text); $this->profil_text = $profil_text; $this->angebot_ueberschrift = $result->getValue("angebot_ueberschrift"); $angebot_text = str_replace("<ul>", '<ul class="bullets">', htmlspecialchars_decode($result->getValue("angebot_text"))); $angebot_text = str_replace("<li>", "<li><span>", $angebot_text); $angebot_text = str_replace("</li>", "</span></li>", $angebot_text); $this->angebot_text = $angebot_text; } }