=== Javis Seminar- und Veranstaltungsmanagement ===

Contributors:      johnitcom
Requires at least: 5.0
Tested up to:      6.8.0
Requires PHP:      7.4
Stable tag:        1.3.1
License:           GPL
Tags:              Veranstaltungen, Seminare, Veranstaltungssoftware, Seminarverwaltung, Buchungssoftware

Das offizielle Wordpress-Plugin der Seminarverwaltung [Javis](https://javis.de). Mit Javis einfach Veranstaltungen auf deiner Webseite buchen.

== Description ==

Mit diesem Plugin können Veranstaltungen von [Javis](https://javis.de) auf einer Wordpress-Webseite angezeigt werden.

= Funktionen =

Javis für Wordpress enthält folgende Funktionen

* Anzeige der Seminarliste in Beiträgen oder Seiten
* Einschränken der Seminarliste auf ein bestimmtes Tag
* Sortieren der Seminarliste nach Darum oder Seminarnummer


= Installation aus WordPress heraus =

1. Besuchen Sie in WordPress **Plugins > Neu hinzufügen**.
2. Suchen Sie nach **Javis**.
3. Installieren und aktivieren Sie das Javis Plugin.
4. Fügen Sie den Javis Short-Code in eine Seite oder in einen Beitrag ein um die Seminarliste anzuzeigen.


= Javis Short-Code in einen Beitrag oder eine Seite einfügen =

Der Javis Short-Code ist folgendermaßen aufgebaut:

    [javis instance="IHR_INSTANZNAME" tag="OPTIONALES_TAG" sort="SORTIERUNG" order="REIHENFOLGE"]

* `IHR_INSTANZNAME` ist durch den Namen der Instanz zu ersetzen. Wenn z.B. die Javis Domain "hallowelt.javis.de" lautet, dann ist der Name "hallowelt".
* `OPTIONALES_TAG` kann durch ein Tag ersetzt werden. Wenn nicht gefiltert werden soll, dann ist das Attribut ganz zu entfernen.
* `SORTIERUNG` kann durch die gewünschte Sortiermethode erstetz werden. Es stehen zur Auswahl *appointment* (Sortierung nach Termin) und *number* (Sortierung nach Kursnummer).
* `REIHENFOLGE` kann durch die gewünschte Sortierreihenfolge erstetz werden. Es stehen zur Auswahl *asc* (aufsteigende Sortierung) und *desc* (absteigende Sortierung).

== Anpassung der Ausgabe des Shortcodes ==

Die Ausgabe der Seminar- und Veranstaltungsübersicht kann über WordPress-Filter individuell
angepasst werden. Dadurch bleiben Anpassungen auch nach Plugin-Updates erhalten.

Um die Standardausgabe zu ändern, kann folgender Code in die functions.php des
verwendeten Themes oder in ein eigenes Plugin eingefügt werden:

    function customize_javis_shortcode_output($defaultOutput, $options, $seminars) {
        // Starte eine neue Tabelle mit zwei Spalten: Titel und Anmelden-Link
        $myTable = '<table class="custom-javis-table" style="width:100%; border-collapse: collapse;">';
        $myTable .= '<thead><tr><th align="left">Seminar</th><th align="left">Anmeldung</th></tr></thead>';
        $myTable .= '<tbody>';

        // Durchlaufe alle Seminare
        foreach ($seminars as $seminar) {
            $title = esc_html($seminar->getTitle());
            $resources = $seminar->getResources();
            $link = isset($resources['overview']) ? esc_url($resources['overview']) : '#';

            $myTable .= '<tr>';
            $myTable .= '<td>' . $title . '</td>';
            $myTable .= '<td><a href="' . $link . '" target="_blank">Jetzt anmelden</a></td>';
            $myTable .= '</tr>';
        }

        // Falls keine Seminare vorhanden sind
        if (empty($seminars)) {
            $myTable .= '<tr><td colspan="2" align="center"><i>Keine Seminare verfügbar.</i></td></tr>';
        }

        $myTable .= '</tbody></table>';

        return $myTable;
    }

    add_filter('javis_shortcode_output', 'customize_javis_shortcode_output', 10, 3);

Über diesen Mechanismus kann der Benutzer beliebige Änderungen an der Ausgabe des
Shortcodes vornehmen, ohne dass diese durch ein Plugin-Update überschrieben werden.

== Frequently Asked Questions ==

= Wie erhalte ich Unterstützung? =

Bei Fragen besuchen Sie das Javis-Handbuch unter https://docs.javis.de.

== Screenshots ==

1. Diese Screenshot-Beschreibung entspricht der Kampagne.
2. Diese Screenshot-Beschreibung entspricht der Online-Anmeldung für neue Seminare.
3. Diese Screenshot-Beschreibung entspricht der Seminarliste.
