/** * * @jahresplan_veranstaltung_listenanzeige anzeigen Veranstaltungen in Listenform * * @param $veranstaltung Veranstaltungstabelle * @param $wartungsberechtigt Aktueller Anwender darf Daten warten * * @return HTML Liste der Ergebnisse der Veranstaltungen * */ function jahresplan_veranstaltung_listenanzeige($veranstaltung, $wartungsberechtigt) { global $p; // Listen if (!defined('constHeaderVeranstaltungsdatum')) { define('constHeaderVeranstaltungsdatum', '%a, %d %B %G'); } if (!defined('constZeileVeranstaltungsdatum')) { define('constZeileVeranstaltungsdatum', '%a, %d.%m.%Y %R %H:%M'); } if (!defined('constZeileVeranstaltungszeit')) { define('constZeileVeranstaltungszeit', '%H:%M'); } // Pruefen ob Daten vorhanden sind zum anzeigen if (!is_array($veranstaltung) || count($veranstaltung) < 1 || !isset($veranstaltung[0]) || !isset($veranstaltung[0]->veranstaltung_id) || empty($veranstaltung[0]->veranstaltung_id)) { return $p->t("eventkalender/keineVeranstaltungen"); } // Daten in Work Array uebertragen $veranstaltung_tabelle = $veranstaltung; // Initialisieren Gruppenwechsel und ZeilenfarbenIndex $cTmpLastKat = ""; $cTmpLastDat = ""; $cTmpLastRow = 0; // Initialisieren HTML Code Ausgabe $showHTML = ''; // Start Listenausgabe $showHTML .= '<table>'; reset($veranstaltung_tabelle); for ($iTmpZehler = 0; $iTmpZehler < count($veranstaltung_tabelle); $iTmpZehler++) { // Moderator,Bild-Icon ermitteln und Leerzeichen aus Textfelder entfernen $veranstaltung_tabelle[$iTmpZehler] = jahresplan_funk_veranstaltung_extend($veranstaltung_tabelle[$iTmpZehler]); // Datum Gruppenwechsel - Listenzeile if ($cTmpLastDat != $veranstaltung_tabelle[$iTmpZehler]->start_jjjjmmtt) { if (!empty($cTmpLastDat)) { $showHTML .= '<tr><td colspan="15"><hr></td></tr>'; } $showHTML .= '<tr><td colspan="15"><h2> ' . strftime(constHeaderVeranstaltungsdatum, $veranstaltung_tabelle[$iTmpZehler]->start_timestamp) . ' </h2></td></tr>'; // Titelleiste immer nach Datumanzeigen $showHTML .= '<tr class="header_liste_titelzeile"> <th>ID</th> <th>' . $p->t("eventkalender/veranstaltung") . '</th> <th>' . $p->t("global/beginn") . '</th> <th>' . $p->t("global/ende") . '</th> '; // Spezielle Anzeigen fuer Wartungsberechtigte Admins if ($wartungsberechtigt) { $showHTML .= '<th colspan="2">' . $p->t("global/aktion") . '</th><th colspan="2">' . $p->t("benotungstool/freigabe") . '</th>'; } $showHTML .= '</tr>'; $cTmpLastKat = ""; // Kategoriegruppe Init fuer Gruppenwechsel - Zeilenanzeige } $cTmpLastDat = $veranstaltung_tabelle[$iTmpZehler]->start_jjjjmmtt; // ---- Ende Veranstaltungsdatum Gruppenwechsel // Kategorie Gruppenwechsel - Listenzeile if ($cTmpLastKat != $veranstaltung_tabelle[$iTmpZehler]->veranstaltungskategorie_kurzbz) { if (!empty($cTmpLastDat)) { $showHTML .= '<tr><td colspan="15"> </td></tr>'; } // Create Kategorie IMG $veranstaltung_tabelle[$iTmpZehler]->bild_image = ''; if (!empty($veranstaltung_tabelle[$iTmpZehler]->bild)) { $cURL = 'jahresplan_bilder.php?time=' . time() . '&' . (strlen($veranstaltung_tabelle[$iTmpZehler]->bild) < 800 ? 'heximg=' . $veranstaltung_tabelle[$iTmpZehler]->bild : 'veranstaltungskategorie_kurzbz=' . $veranstaltung_tabelle[$iTmpZehler]->veranstaltungskategorie_kurzbz); $veranstaltung_tabelle[$iTmpZehler]->bild_image = '<img width="16" border="0" title="' . $veranstaltung_tabelle[$iTmpZehler]->bezeichnung . '" alt="Kategoriebild" src="' . $cURL . '">'; } // Kategorie = Bild + Bezeichnung $cKategorie = isset($veranstaltung_tabelle[$iTmpZehler]->bild_image) ? $veranstaltung_tabelle[$iTmpZehler]->bild_image . ' ' : ''; $cKategorie .= $veranstaltung_tabelle[$iTmpZehler]->bezeichnung . ' '; $showHTML .= '<tr><td colspan="15">' . $cKategorie . '</td></tr>'; $cTmpLastRow = 0; // Zeilenfarbe Initialisieren - Startfarbe der Kategorie } $cTmpLastKat = $veranstaltung_tabelle[$iTmpZehler]->veranstaltungskategorie_kurzbz; // ---- Ende Veranstaltungskategorie Gruppenwechsel $showHTML .= '<tr ' . ($cTmpLastRow % 2 ? ' class="header_liste_row_0" ' : ' class="header_liste_row_1" ') . '>'; // Detailanzeige - Switch zum umschalten ob das PopUp Extern oder Intern im Layer geoeffnet wird $showHTML .= ' <td class="cursor_hand" onclick="callWindows(\'jahresplan_detail.php?veranstaltung_id=' . $veranstaltung_tabelle[$iTmpZehler]->veranstaltung_id . '\',\'Jahresplan\',\'\');"> <table border="0" cellpadding="0" cellspacing="0"> <tr> <td><img width="16" border="0" alt="spacer" src="jahresplan_bilder.php?time=' . time() . '" ></td> <td>' . $veranstaltung_tabelle[$iTmpZehler]->veranstaltung_id . '</td> <td> </td> <td><img title="Detail" src="../../../skin/images/date_magnify.png" alt="Detail" border="0"></td> </tr> </table> </td> '; $showHTML .= '<td title="' . trim($veranstaltung_tabelle[$iTmpZehler]->beschreibung) . '\\n ' . trim($veranstaltung_tabelle[$iTmpZehler]->inhalt) . '">'; if ($wartungsberechtigt) { $maxWortlaenge = 45; } else { $maxWortlaenge = 90; } $showHTML .= mb_strlen(trim($veranstaltung_tabelle[$iTmpZehler]->beschreibung) . ' ' . trim($veranstaltung_tabelle[$iTmpZehler]->inhalt)) > $maxWortlaenge ? mb_substr(trim($veranstaltung_tabelle[$iTmpZehler]->beschreibung) . ' ' . trim($veranstaltung_tabelle[$iTmpZehler]->inhalt), 0, $maxWortlaenge) . '...' : trim($veranstaltung_tabelle[$iTmpZehler]->beschreibung) . ' ' . trim($veranstaltung_tabelle[$iTmpZehler]->inhalt); $showHTML .= ' </td>'; $showHTML .= '<td>' . strftime(constZeileVeranstaltungsdatum, $veranstaltung_tabelle[$iTmpZehler]->start_timestamp) . ' </td>'; // Veranstaltungs - Ende Variable : wenn Startdatum und Endedatum gleich nur die Zeit als Ende anzeigen if (strftime(constZeitDatumJJJJMMTT, $veranstaltung_tabelle[$iTmpZehler]->start_timestamp) == strftime(constZeitDatumJJJJMMTT, $veranstaltung_tabelle[$iTmpZehler]->ende_timestamp)) { $showHTML .= ' <td>' . strftime(constZeileVeranstaltungszeit, $veranstaltung_tabelle[$iTmpZehler]->ende_timestamp) . ' </td>'; } else { $showHTML .= ' <td>' . strftime(constZeileVeranstaltungsdatum, $veranstaltung_tabelle[$iTmpZehler]->ende_timestamp) . ' </td>'; } if ($wartungsberechtigt) { // Erzeugen PopUp URL fuer Wartung // Url $cTmpScriptWartung = ' onclick="callWindows(\'jahresplan_veranstaltung.php?work=show&veranstaltung_id=' . $veranstaltung_tabelle[$iTmpZehler]->veranstaltung_id . '\',\'Veranstaltung_Aenderung\');" '; // Aendern Icon und Text $showHTML .= '<td ' . $cTmpScriptWartung . '> <img title="ID ' . $veranstaltung_tabelle[$iTmpZehler]->veranstaltung_id . ' ' . $p->t("global/aendern") . ' ' . $veranstaltung_tabelle[$iTmpZehler]->titel . '" height="14px" src="../../../skin/images/date_edit.png" alt="aendern Veranstaltung" border="0"> ' . $p->t("global/aendern") . ' </td>'; // Erzeugen PopUp URL fuer Entfernen // Url $cTmpScriptWartung = ' onclick="if (!confirm(\' ' . $p->t('eventkalender/wollenSieWirklichIdXYloeschen', array($veranstaltung_tabelle[$iTmpZehler]->veranstaltung_id)) . ' ?\')) {return false;} ; callWindows(\'jahresplan_veranstaltung.php?work=del&veranstaltung_id=' . $veranstaltung_tabelle[$iTmpZehler]->veranstaltung_id . '\',\'Veranstaltung_Loeschen\');" '; // Loeschen Icon und Text $showHTML .= '<td id="jh_va_delrow' . $iTmpZehler . '" ' . $cTmpScriptWartung . '> <img title="ID ' . $veranstaltung_tabelle[$iTmpZehler]->veranstaltung_id . ' ' . $p->t("global/entfernen") . ' ' . $veranstaltung_tabelle[$iTmpZehler]->titel . '" height="14px" src="../../../skin/images/date_delete.png" alt="entfernen Veranstaltung" border="0"> ' . $p->t("global/entfernen") . ' </td>'; // Freigabe Information und Berechtigungsinfo wer diesen Eintrag sehen darf - Oeffentlich - Mitarbeiter $showHTML .= '<td>'; $showHTML .= !empty($veranstaltung_tabelle[$iTmpZehler]->freigabeamum) ? $veranstaltung_tabelle[$iTmpZehler]->freigabeamum . ', ' . $veranstaltung_tabelle[$iTmpZehler]->freigabevon : ''; if (empty($veranstaltung_tabelle[$iTmpZehler]->freigabeamum)) { $showHTML .= '<img title=' . $p->t("eventkalender/keineFreigabe") . ' height="14px" src="../../../skin/images/login.gif" alt="keine Freigabe" border="0">'; } $showHTML .= '</td>'; // Plausibfehler Datum Von-Bis ausgeben if ($veranstaltung_tabelle[$iTmpZehler]->start_timestamp > $veranstaltung_tabelle[$iTmpZehler]->ende_timestamp) { $showHTML .= ' <td ><b>' . $p->t("eventkalender/fehlerStartKleinerEnde") . '</b> </td> '; } } $showHTML .= '</tr>'; // Ende Zeile mit einer Veranstaltung // Detailanzeige PopUp $cTmpLastRow++; // ZeilenFarbWechsel erhoehen } $showHTML .= '</table>'; $showHTML .= '<br/><span class="footer_zeile">' . $p->t("eventkalender/beiFragenGebenSieImmerDieVeranstaltungsIDan") . '.</span>'; // Return HTML Liste return $showHTML; }
die($Jahresplan->errormsg); } // ------------------------------------------------------------------------------------------ // Daten lesen fuer Anzeige der // Veranstaltungen mit Selektionsbedingung // ------------------------------------------------------------------------------------------ if (!empty($veranstaltung_id)) { $Jahresplan->InitVeranstaltung(); // Nur Berechtigte duerfen auch noch nicht freigegebene Sehen $Jahresplan->show_only_public_kategorie = $is_mitarbeiter ? false : true; $Jahresplan->freigabe = $is_wartungsberechtigt ? false : true; $Jahresplan->veranstaltung_id = $veranstaltung_id; $Jahresplan->veranstaltungskategorie_kurzbz = $veranstaltungskategorie_kurzbz; $veranstaltung = array(); if ($veranstaltungen = $Jahresplan->loadVeranstaltung()) { $veranstaltungen = jahresplan_funk_veranstaltung_extend($veranstaltungen); while (list($key, $value) = each($veranstaltungen)) { $veranstaltung[$key] = $value; } } elseif (empty($work)) { die($Jahresplan->errormsg); } // Plausib if (!is_array($veranstaltung) || count($veranstaltung) < 1 || !isset($veranstaltung["veranstaltung_id"])) { $work = 'new'; } } else { $veranstaltung = $_REQUEST; } ?>