Springe zum Hauptinhalt
Universitäts­rechen­zentrum
Öffnungszeiten

TUCAL-Modul für Öffnungszeiten

Informationen zu Öffnungszeiten von Einrichtungen der TU Chemnitz werden an vielen Stellen benötigt: auf unterschiedlichen Webseiten (deutsch und englisch), für Displays, in der „TU Chemnitz“-App, am Telefon usw. Wenn es Änderungen gibt, z. B. in der Urlaubszeit, ist es wünschenswert, diese nur an einer Stelle einzutragen, und alle Systeme zeigen die geänderten Zeiten an. Genau dafür gibt es das Modul „TUCopeningHours“.

Anlegen und Ändern von Öffnungszeiten

Jede Einrichtung ist für die Aktualisierung der eigenen Öffnungszeiten selbst verantwortlich. Zum Anlegen und zur Pflege bietet das URZ ein Webportal unter https://www-apps.hrz.tu-chemnitz.de/tucopen/. Als registrierter Administrator sehen Sie hier Ihre Öffnungszeiten und können diese zentral bearbeiten. Webseiten und Dienste, die das Modul „TUCopeningHours“ verwenden, zeigen direkt die aktuellen Öffnungszeiten an, ohne dass weitere Anpassungen vorgenommen werden müssen.

Wie kann man sich registrieren?

Schreiben Sie eine E-Mail an support@hrz.tu-chemnitz.de. Geben Sie hierbei bitte folgende Informationen an:

  • Titel/Name für die Öffnungszeiten (z.B. „URZ Nutzerservice Straße der Nationen“)
  • Gruppenname – Legen Sie hierzu im IdM-Portal eine Gruppe mit allen schreibberechtigten Nutzern an. Als Zielsystem wählen Sie bitte „LDAP (öffentlich)“.
  • Raumnummer (optional)

Öffnungszeiten anlegen und ändern

Nach der Registrierung finden Sie im Webportal unter https://www-apps.hrz.tu-chemnitz.de/tucopen/ eine Liste aller Öffnungszeiten. Diese sind zunächst leer. Zum Bearbeiten klicken Sie den Titel der jeweiligen Daten an. Sie können die Zeiten bequem im Kalender durch Ziehen eintragen.

Dabei können gleichzeitig mehrere Zeiträume definiert werden, um z.B. zwischen Vorlesungszeit und vorlesungsfreier Zeit zu unterscheiden. Mögliche Zeiträume:

  • Immer geltende Öffnungszeiten
  • in den Monaten … (Zeitraum einzelner Monate von – bis)
  • in den Wochen … (Zeitraum einzelner Wochen von – bis)
  • vom … bis (taggenauer Zeitraum)

Schließen Sie die Bearbeitung durch den Button Absenden am Ende der Seite ab.

Nutzung für Webseiten

Zur Einbindung von Öffnungszeiten auf Webseiten gibt es PHP-Funktionen für TUCAL. Diese sind in folgenden Beispielen erläutert.

1. Holen der Informationen zu einer Öffnungszeit

Dies muss immer vor der eigentlichen Anzeige aufgerufen werden:

require_once('php/openinghours.inc');
$open = new tucal_openinghours('87229ad8-c468-483a-9e0d-bb028bd822fe');
#           tucal_openinghours('uuid'[, 'sprache']);
#               uuid erfahren Admins in der Administratorschnittstelle
#               sprache: 'de' oder 'en',  kann weggelassen werden, dann ist es die Sprache der Seite

2. Ausgabe von Informationen

echo $open->is_open();       # Ausgabe, ob aktuell geöffnet oder geschlossen
echo $open->status();        # … , ob aktuell geöffnet (bis wann) oder geschlossen (ab wann geöffnet)
echo $open->opening_hours([array $format]); # Ausgabe der aktuellen Öffnungszeiten (momentane Woche)
    # $format – weggelassen: jeder Tag, an dem geöffnet ist
    #           array('all'): jeder Tag, auch wenn geschlossen
    #           array('short'): Wochentage werden mit zwei Buchstaben abgekürzt

Beispiel

echo '<p>1. Momentan ist … ' $open->is_open() . '.</p>';
echo '<p>2. Momentan ist … ' $open->status() . '.</p>';
echo '<p>3. Unsere Öffnungszeiten (diese Woche):</p><p>' .  $open->opening_hours() .'</p>';
echo '<p>4. Unsere Öffnungszeiten (diese Woche) komplett:</p><p>' .  $open->opening_hours(array('all')) .'</p>';

1. Momentan ist … geöffnet.

2. Momentan ist … geöffnet, schließt heute um 15:30 Uhr.

3. Unsere Öffnungszeiten (diese Woche):

Dienstag
08:45 Uhr – 11:45 Uhr und 12:30 Uhr – 15:30 Uhr

4. Unsere Öffnungszeiten (diese Woche) komplett:

Montag
geschlossen
Dienstag
08:45 Uhr – 11:45 Uhr und 12:30 Uhr – 15:30 Uhr
Mittwoch
geschlossen
Donnerstag
geschlossen
Freitag
geschlossen
Samstag
geschlossen
Sonntag
geschlossen

Alle verfügbaren Daten zu den Öffnungszeiten stehen im PHP-Objekt $open->opening zur Verfügung und können für eigene Ausgaben verwendet werden.

# Zum Test alles ausgeben:
echo '<pre>' print_r($open->opening1) . '</pre>';
stdClass Object
(
    [title] => URZ Nutzerservice Str. d. Nationen
    [uuid] => 87229ad8-c468-483a-9e0d-bb028bd822fe
    [url] => https://www-apps.hrz.tu-chemnitz.de/tucopen/api/v1/openinghours/87229ad8-c468-483a-9e0d-bb028bd822fe/
    [description] => allgemeine Öffnungszeit URZ-Nutzerservice
    [room] => stdClass Object
        (
            [code2017] => A13.072
            [building] => stdClass Object
                (
                    [code] => A13
                    [name] => Böttcher-Bau
                    [coordinates] => 50.838983, 12.929071
                    [postaladdress] => Straße der Nationen 62
                    [postalcode] => 09111
                    [localityname] => Chemnitz
                    [uuid] => ec7aa419-86eb-4233-9610-497bc618ea5e
                    [url] => https://tucrooms.hrz.tu-chemnitz.de/tucrooms/api/v1/building/ec7aa419-86eb-4233-9610-497bc618ea5e/?format=json
                )

            [uuid] => a40203d4-0e41-4fa9-a05a-ac4d4b8e8ad3
            [url] => https://tucrooms.hrz.tu-chemnitz.de/tucrooms/api/v1/room/a40203d4-0e41-4fa9-a05a-ac4d4b8e8ad3/?format=json
            [display_name] => A13.072 (alt: 1/072)
            [campus_finder_url] => https://mytuc.org/r/A13.072
        )

    [hours] => Tu,Th 08:45-11:45,12:30-15:30; PH off
    [hours_parsed] => stdClass Object
        (
            [hours_list] => Array
                (
                    [0] => Array
                        (
                            [0] => 2024-05-07T08:45:00
                            [1] => 2024-05-07T11:45:00
                        )

                    [1] => Array
                        (
                            [0] => 2024-05-07T12:30:00
                            [1] => 2024-05-07T15:30:00
                        )

                )

            [hours_by_date] => stdClass Object
                (
                    [2024-05-07] => Array
                        (
                            [0] => Array
                                (
                                    [0] => 08:45:00
                                    [1] => 11:45:00
                                )

                            [1] => Array
                                (
                                    [0] => 12:30:00
                                    [1] => 15:30:00
                                )

                        )

                    [2024-05-08] => 
                    [2024-05-09] => 
                    [2024-05-10] => 
                    [2024-05-11] => 
                    [2024-05-12] => 
                    [2024-05-13] => 
                )

            [hours_by_weekday] => stdClass Object
                (
                    [Mo] => 
                    [Tu] => Array
                        (
                            [0] => Array
                                (
                                    [0] => 08:45:00
                                    [1] => 11:45:00
                                )

                            [1] => Array
                                (
                                    [0] => 12:30:00
                                    [1] => 15:30:00
                                )

                        )

                    [We] => 
                    [Th] => 
                    [Fr] => 
                    [Sa] => 
                    [Su] => 
                )

            [week_description_en] => stdClass Object
                (
                    [Monday] => closed
                    [Tuesday] => 8:45 AM – 11:45 AM and 12:30 PM – 3:30 PM
                    [Wednesday] => closed
                    [Thursday] => closed
                    [Friday] => closed
                    [Saturday] => closed
                    [Sunday] => closed
                )

            [description_en] => Array
                (
                    [0] => On Tuesday and on Thursday: 8:45 AM – 11:45 AM and 12:30 PM – 3:30 PM.
                    [1] => On public holidays: closed.
                )

            [is_open] => 1
            [next_change] => 2024-05-07T15:30:00
            [week_description_de] => stdClass Object
                (
                    [Montag] => geschlossen
                    [Dienstag] => 08:45 – 11:45 und 12:30 – 15:30
                    [Mittwoch] => geschlossen
                    [Donnerstag] => geschlossen
                    [Freitag] => geschlossen
                    [Samstag] => geschlossen
                    [Sonntag] => geschlossen
                )

            [description_de] => Array
                (
                    [0] => Am Dienstag und am Donnerstag: 08:45 – 11:45 und 12:30 – 15:30.
                    [1] => An Feiertagen: geschlossen.
                )

        )

)

Sie können auf diese Daten direkt zugreifen, zum Beispiel auf den Titel:

# Gib Titel und Öffnungszeiten strukturiert mit Formatierung aus:
# class spacebold ist so definiert:
# div.openinghours div.spcb {padding:1em 0} div.openinghours div.spcb div:first-child {font-weight:bold}
echo '<div class="row"><div class="col-xm-3"><strong>' .
      htmlspecialchars($open->opening->title) . '</strong></div>' .
     '<div class="col-xm-9">' .
     $open->opening_hours(array('short''class-row' => 'linie grey spcb')) . '</div></div></p>';
URZ Nutzerservice Str. d. Nationen
Di
08:45 Uhr – 11:45 Uhr und 12:30 Uhr – 15:30 Uhr