Beispiel #1
0
/**
 * Aendert die seo42 Sitemap und fuegt die URLs des Addons hinzu.
 * @global mixed[] $REX Die Redaxo Variable
 * @var mixed[] $_params Array mit Sitemap URLs
 * @return mixed[] Erweiterter Array mit Sitemap URLs
 */
function d2u_kurse_extended_sitemap($_params)
{
    global $REX;
    $rex_clang_ids = array_keys($REX['CLANG']);
    $clang_id = array_shift($rex_clang_ids);
    // Startkacheln
    $add_array = array();
    $add_array[$clang_id] = array('loc' => kurse_utils::getStartkachelURL($REX['ADDON']['d2u_kurse']['settings']['kategorie_titel'], $clang_id, TRUE), 'lastmod' => date('c', time()), 'changefreq' => 'monthly', 'priority' => 0.8);
    $_params['subject'][] = $add_array;
    $add_array = array();
    $add_array[$clang_id] = array('loc' => kurse_utils::getStartkachelURL($REX['ADDON']['d2u_kurse']['settings']['ort_titel'], $clang_id, TRUE), 'lastmod' => date('c', time()), 'changefreq' => 'monthly', 'priority' => 0.8);
    $_params['subject'][] = $add_array;
    $add_array = array();
    $add_array[$clang_id] = array('loc' => kurse_utils::getStartkachelURL($REX['ADDON']['d2u_kurse']['settings']['termin_titel'], $clang_id, TRUE), 'lastmod' => date('c', time()), 'changefreq' => 'monthly', 'priority' => 0.8);
    $_params['subject'][] = $add_array;
    $add_array = array();
    $add_array[$clang_id] = array('loc' => kurse_utils::getStartkachelURL($REX['ADDON']['d2u_kurse']['settings']['zielgruppe_titel'], $clang_id, TRUE), 'lastmod' => date('c', time()), 'changefreq' => 'monthly', 'priority' => 0.8);
    $_params['subject'][] = $add_array;
    // Kurse
    $kurse = Kurs::getAll($REX['TABLE_PREFIX'], TRUE);
    foreach ($kurse as $kurs) {
        $add_array = array();
        $add_array[$clang_id] = array('loc' => $kurs->getURL(TRUE), 'lastmod' => date('c', $kurs->updatedate), 'changefreq' => 'weekly', 'priority' => 1.0);
        $_params['subject'][] = $add_array;
    }
    // Kurskategorie
    $kurskategorien = Kurskategorie::getAll($REX['TABLE_PREFIX'], 0, TRUE);
    foreach ($kurskategorien as $kurskategorie) {
        $add_array = array();
        $add_array[$clang_id] = array('loc' => $kurskategorie->getURL(TRUE), 'lastmod' => date('c', $kurskategorie->updatedate), 'changefreq' => 'monthly', 'priority' => 0.6);
        $_params['subject'][] = $add_array;
    }
    // Kursorte
    $kursorte = Kursort::getAll($REX['TABLE_PREFIX'], 0, TRUE);
    foreach ($kursorte as $kursort) {
        $add_array = array();
        $add_array[$clang_id] = array('loc' => $kursort->getURL(TRUE), 'lastmod' => date('c', $kursort->updatedate), 'changefreq' => 'monthly', 'priority' => 0.6);
        $_params['subject'][] = $add_array;
    }
    // Kursortskategorien
    $kursortskategorien = KursortKategorie::getAll($REX['TABLE_PREFIX'], TRUE);
    foreach ($kursortskategorien as $kursortskategorie) {
        $add_array = array();
        $add_array[$clang_id] = array('loc' => $kursortskategorie->getURL(TRUE), 'lastmod' => date('c', $kursortskategorie->updatedate), 'changefreq' => 'monthly', 'priority' => 0.6);
        $_params['subject'][] = $add_array;
    }
    // Terminkategorien
    $terminkategorien = Terminkategorie::getAll($REX['TABLE_PREFIX'], TRUE);
    foreach ($terminkategorien as $terminkategorie) {
        $add_array = array();
        $add_array[$clang_id] = array('loc' => $terminkategorie->getURL(TRUE), 'lastmod' => date('c', $terminkategorie->updatedate), 'changefreq' => 'monthly', 'priority' => 0.6);
        $_params['subject'][] = $add_array;
    }
    // Zielgruppen
    $zielgruppen = Zielgruppe::getAll($REX['TABLE_PREFIX'], TRUE);
    foreach ($zielgruppen as $zielgruppe) {
        $add_array = array();
        $add_array[$clang_id] = array('loc' => $zielgruppe->getURL(TRUE), 'lastmod' => date('c', $zielgruppe->updatedate), 'changefreq' => 'monthly', 'priority' => 0.6);
        $_params['subject'][] = $add_array;
    }
    return $_params['subject'];
    /*
    Allgemeiner Hinweis:
    In der config.inc.php muessen folgende Zeilen hinzugefuegt werden:
    -----%<-----
    require_once dirname(__FILE__) ."/extensions/seo42.inc.php";
    rex_register_extension('SEO42_SITEMAP_ARRAY_CREATED', 'd2u_kurse_extended_sitemap');
    -----%<-----
    */
}
    print '</div>';
    print '<div class="col-xs-6 col-sm-0 head-search-top">';
    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>';
    print '<div class="col-xs-12 col-sm-8 header-center" data-height-watch>';
    // Zielgruppe
    getKachelboxTitel($REX['ADDON']['d2u_kurse']['settings']['zielgruppe_titel'], $REX['ADDON']['d2u_kurse']['settings']['zielgruppe_bild'], $REX['ADDON']['d2u_kurse']['settings']['zielgruppe_farbe'], kurse_utils::getStartkachelURL($REX['ADDON']['d2u_kurse']['settings']['zielgruppe_titel'], $REX['CUR_CLANG'], TRUE));
    // Kategorie
    getKachelboxTitel($REX['ADDON']['d2u_kurse']['settings']['kategorie_titel'], $REX['ADDON']['d2u_kurse']['settings']['kategorie_bild'], $REX['ADDON']['d2u_kurse']['settings']['kategorie_farbe'], kurse_utils::getStartkachelURL($REX['ADDON']['d2u_kurse']['settings']['kategorie_titel'], $REX['CUR_CLANG'], TRUE));
    // Ort
    getKachelboxTitel($REX['ADDON']['d2u_kurse']['settings']['ort_titel'], $REX['ADDON']['d2u_kurse']['settings']['ort_bild'], $REX['ADDON']['d2u_kurse']['settings']['ort_farbe'], kurse_utils::getStartkachelURL($REX['ADDON']['d2u_kurse']['settings']['ort_titel'], $REX['CUR_CLANG'], TRUE));
    // 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">';
    $settings['anmeldung_artikel'] = intval($_POST['LINK'][1]);
    $settings['anmeldung_artikel_name'] = trim($_POST['LINK_NAME'][1]);
    $settings['kurse_artikel'] = intval($_POST['LINK'][2]);
    $settings['kurse_artikel_name'] = trim($_POST['LINK_NAME'][2]);
    $settings['vhsagb_artikel'] = intval($_POST['LINK'][3]);
    $settings['vhsagb_artikel_name'] = trim($_POST['LINK_NAME'][3]);
    // type conversion normal settings
    foreach ($REX['ADDON']['d2u_kurse']['settings'] as $setting_key => $value) {
        if (isset($settings[$setting_key])) {
            $settings[$setting_key] = kurse_utils::convertVarType($value, $settings[$setting_key]);
        }
    }
    // replace settings
    $REX['ADDON']['d2u_kurse']['settings'] = array_merge((array) $REX['ADDON']['d2u_kurse']['settings'], $settings);
    // update settings file
    kurse_utils::updateSettingsFile();
}
?>

<div class="rex-addon-output">
	<div class="rex-form">

		<form action="index.php" method="post">
			<input type="hidden" name="page" value="d2u_kurse" />
			<input type="hidden" name="subpage" value="<?php 
echo $subpage;
?>
" />
			<input type="hidden" name="func" value="update" />
			<input type="hidden" name="seo42" value="update">
Beispiel #4
0
        $REX['ADDON'][$addon_key]['SUBPAGES'] = array(array('kurse', $I18N_KURSE->msg('kurse_angebote')), array('kurskategorien', $I18N_KURSE->msg('kurskategorien')), array('orte', $I18N_KURSE->msg('orte')), array('terminkategorien', $I18N_KURSE->msg('terminkategorien')), array('zielgruppen', $I18N_KURSE->msg('zielgruppen')), array('einstellungen', $I18N_KURSE->msg('einstellungen')));
        if (OOPlugin::isAvailable('d2u_kurse', 'kufer_import')) {
            $REX['ADDON'][$addon_key]['SUBPAGES'][] = array('kufer_import', $I18N_KURSE->msg('kufer_import'));
        }
    }
}
// Einstellungen
require_once $REX['INCLUDE_PATH'] . '/addons/' . $addon_key . '/classes/class.kurse_utils.inc.php';
// consts
define('D2U_KURSE_ARRAY_DELIMITER', '|');
define('D2U_KURSE_DATA_DIR', $REX['INCLUDE_PATH'] . '/data/addons/' . $addon_key . '/');
define('D2U_KURSE_BACKUP_DIR', $REX['INCLUDE_PATH'] . '/data/addons/' . $addon_key . '/backup/');
// default settings (user settings are saved in data dir!)
$REX['ADDON'][$addon_key]['settings'] = array('anmeldung_artikel' => 0, 'anmeldung_artikel_name' => '', 'anmeldung_mail_empfaenger' => '', 'multinewsletter_group' => 0, 'kurse_artikel' => 0, 'kurse_artikel_name' => '', 'vhsagb_artikel' => 0, 'vhsagb_artikel_name' => '', 'zielgruppe_titel' => 'Zielgruppe', 'zielgruppe_farbe' => '', 'zielgruppe_bild' => '', 'kategorie_titel' => 'Kategorie', 'kategorie_farbe' => '', 'kategorie_bild' => '', 'ort_titel' => 'Ort', 'ort_farbe' => '', 'ort_bild' => '', 'termin_titel' => 'Termin', 'termin_farbe' => '', 'termin_bild' => '', 'freitext_1_titel' => '', 'freitext_1_farbe' => '', 'freitext_2_titel' => '', 'freitext_2_farbe' => '');
// overwrite default settings with user settings
kurse_utils::includeSettingsFile();
if ($REX['REDAXO']) {
    // add css/js files to page header
    if (rex_request('page') == $addon_key) {
        rex_register_extension('PAGE_HEADER', 'kurse_utils::appendToPageHeader');
    }
}
// TODO Sitemap aktivieren
if (OOAddon::isActivated('seo42')) {
    // SEO42 inkludieren
    require_once dirname(__FILE__) . "/extensions/seo42.inc.php";
    // URLs fuer SEO42 bekannt machen
    rex_register_extension('SEO42_PATHLIST_CREATED', 'd2u_kurse_extended_urls');
    // URLs in Sitemap eintragen
    rex_register_extension('SEO42_SITEMAP_ARRAY_CREATED', 'd2u_kurse_extended_sitemap');
}