module.lakt.de - Apothekennotdienst

Ein Service der LAK Thüringen

 Übersicht 

Drei Gründe für Ihre Webseite

Mögliche Szenarien

URL-Aufruf

http://module.lakt.de/notdienst.php?nd_okz=(NDKZ) &typ=(xml | ics) [&nd_von=(DatumVon)] [&nd_bis=(DatumBis)] [&nd_fid=(Firmen-ID)] [&nd_plz=(PLZ)] [&nd_ort=(Ort)] [&nd_apo=(Apothekenname)] [&nd_ref=(yes | no)]

Ein einfaches Beispiel: http://module.lakt.de/notdienst.php?nd_okz=510
und als Kalenderdatei: http://module.lakt.de/notdienst.php?nd_okz=510&typ=ics

Parameter

nd_okz: Kennzahl des Notdienstkreises. Format: INT(3)
typ: Format der Rückgabewerte (wenn nicht angegeben, typ = xml) xml, ics
nd_von: Startdatum der Suche; wenn nicht angegeben, wird das aktuelle Datum verwendet. Format: DATE(YYYY-MM-DD)
nd_bis: Enddatum der Suche; wenn nicht angegeben, ist Enddatum = Startdatum. Format: DATE(YYYY-MM-DD)
nd_fid: Firmen-ID; zur Ausgabe des Notdienstplans einer bestimmten Apotheke (wenn von LAKT benannt). Format: INT()
nd_plz: Postleitzahl (nur im Zusammenhang mit Suche nach Apothekenname). Format: INT(5)
nd_ort: Ort (nur im Zusammenhang mit Suche nach Apothekenname). Format: STRING
nd_apo: Apothekenname zur Suche nach einer bestimmten Apotheke innerhalb des Notdienstkreises. Format: STRING
nd_ref: Anzeigen von Apotheken benachbarter Notdienstkreise mit durchgängigem Notdienst (wenn nicht angegeben, nd_ref = yes) yes, no
 

Ausgabetyp

Serverseitige Restriktionen

XML-Struktur

<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<!DOCTYPE VCALENDAR [
<!ELEMENT VCALENDAR (VEVENT,FEHLER,LAKTTEXT)>
<!ELEMENT VEVENT (CREATED,DTSTAMP,UID,SUMMARY,LOCATION,DTSTART,DTEND,DESCRIPTION,ORT,URL,SEQUENCE,STATUS,PRIORITY,CLASS,TRANSP,CATEGORIES)>
<!ELEMENT CREATED (#PCDATA)>
<!ELEMENT DTSTAMP (#PCDATA)>
<!ELEMENT UID (#PCDATA)>
<!ELEMENT SUMMARY (#PCDATA)>
<!ELEMENT LOCATION (#PCDATA)>
<!ELEMENT DTSTART (#PCDATA)>
<!ELEMENT DTEND (#PCDATA)>
<!ELEMENT DESCRIPTION (#PCDATA)>
<!ELEMENT ORT (#PCDATA)>
<!ELEMENT URL (#PCDATA)>
<!ELEMENT SEQUENCE (#PCDATA)>
<!ELEMENT STATUS (#PCDATA)>
<!ELEMENT PRIORITY (#PCDATA)>
<!ELEMENT CLASS (#PCDATA)>
<!ELEMENT TRANSP (#PCDATA)>
<!ELEMENT CATEGORIES (#PCDATA)>
<!ELEMENT FEHLER (#PCDATA)>
<!ELEMENT LAKTTEXT (#PCDATA)>
]>
<VCALENDAR>
  <VEVENT>
    <CREATED>...</CREATED>
    <DTSTAMP>...</DTSTAMP>
    <UID>neloh-...</UID>
    <SUMMARY>Apothekenname</SUMMARY>
    <LOCATION>Strasse, PLZ Ort</LOCATION>
    <DTSTART>Datum/Zeit von (z. B.: 20080101T080000Z)</DTSTART>
    <DTEND>Datum/Zeit bis (z. B.: 20080102T080000Z)</DTEND>
    <DESCRIPTION>Telefon: 000/0000000, Fax: 000/0000000</DESCRIPTION>
    <ORT>Ort der Apotheke</ORT>
    <URL>Apotheken-Webseite</URL>
    <SEQUENCE>0</SEQUENCE>
    <STATUS>CONFIRMED</STATUS>
    <PRIORITY>5</PRIORITY>
    <CLASS>PUBLIC</CLASS>
    <TRANSP>OPAQUE</TRANSP>
    <CATEGORIES>Apothekennotdienst</CATEGORIES>
  </VEVENT>
  <VEVENT>
	...
  </VEVENT>
  [<FEHLER>Fehlermeldungen, sonstige Meldungen</FEHLER>]
  [<LAKTTEXT>Textanhang,Copyright u.s.w.</LAKTTEXT>]
</VCALENDAR>

ICS-Struktur (iCalendar)

BEGIN:VCALENDAR
BEGIN:VEVENT
CREATED:...
DTSTAMP:...
UID:neloh-...
SUMMARY:Apothekenname
LOCATION:Strasse, PLZ Ort
DTSTART:Datum/Zeit von (z. B.: 20080101T080000Z)
DTEND:Datum/Zeit bis (z. B.: 20080102T080000Z)
DESCRIPTION:Telefon: 000/0000000, Fax: 000/0000000
ORT:Ort der Apotheke
URL:Apotheken-Webseite
STATUS:CONFIRMED
PRIORITY:5
CLASS:PUBLIC
TRANSP:OPAQUE
CATEGORIES:Apothekennotdienst
END:VEVENT
BEGIN:VEVENT
  ...
END:VEVENT
END:VCALENDAR

Beispiel-Implementierung mit PHP

	
<?php
// Variablendeklaration
$nd_fid = 0; // Wenn durch LAKT zugewiesen
$nd_okz = 510; // Kennzahl Notdienstkreis
$typ = "xml"; // Rueckgabeformat
$nd_von = date('Y-m-d'); // heute
$nd_bis = date('Y-m-d',mktime(0,0,0,date('m'),date('d')+6,date('Y'))); // heute + 6 Tage
$nd_url = "http://module.lakt.de/notdienst.php?nd_okz=" . $nd_okz . "&nd_von=" . $nd_von . "&nd_bis=" . $nd_bis . "&nd_ref=no&typ=" . $typ;

// Notdienstdaten abrufen und ausgeben
$xml = simplexml_load_file($nd_url);
$items = $xml->VEVENT;
echo "<table>";
foreach ($items as $item) {
  echo "<tr>";
  echo "<td>" . strip_tags(iconv("UTF-8","ISO-8859-1",$item->SUMMARY)) . "</td>"; // Apothekenname
  echo "<td>" . strip_tags(iconv("UTF-8","ISO-8859-1",$item->ORT)) . "</td>"; // Ort
  echo "<td>" . strip_tags(iconv("UTF-8","ISO-8859-1",$item->DTSTART)) . "</td>"; // Beginn Notdienst
  echo "<td>" . strip_tags(iconv("UTF-8","ISO-8859-1",$item->DTEND)) . "</td>"; // >Ende Notdienst
  echo "</tr>";
}
// Pflichtangaben
$lakttext = $xml->LAKTTEXT;
echo "<tr>";
  echo "<td colspan=\"4\">" . $lakttext . "</td>";
echo "</tr>";
echo "</table>";
?>
	
Und so sieht's dann aus...
© 2012 Landesapothekerkammer Thüringen und nelohSOFTWARE