Diese
Angebote kann man sowohl mittels alcarta im lokalen Netz machen
als auch mit PHPAC im Webkatalog. Ein FLEX
namens a-okonto.flx ist dafür
gedacht, daß der Opac-Nutzer in alcarta folgende Funktionen selber
ausführen kann: 1. Konto
abfragen (Entleihungen auflisten) 2. Alle
Entleihungen verlängern 3.
Einzelne Entleihungen verlängern 4.
Vormerkungen zurückziehen 5.
Reservierungen (Warteregal) aufheben 6.
Paßwort ändern Einbindung: In die
für den OPAC zuständige INI-Datei dies einbauen: MyMenu=Benutzer-Info Damit
erscheint dann oben rechts neben "Option" der Menüpunkt
"Benutzer-Info". Bei Betätigung fragt der FLEX dann zuerst den Namen
und das Paßwort ab. Ist der Lesersatz vorhanden und stimmt das Paßwort, geht es
weiter und es wird das Konto zusammengestellt und angezeigt. Alles weitere
sieht der Leser dann dort. Erforderliche
Dateien: a-okonto.flx (funktioniert
auch in a99!) a-init.flx notwendige
Voreinstellungen a-verl.flx
führt die Verlängerun(en) aus alf.rtf (Hauptmenü;
darin neue Funktion "Verfallene Reservierungen") Für die
Verlängerungen wird der FLEX a-verl.flx
benutzt, der zu dem Zweck noch ein wenig modifiziert wurde. Insbes. soll
der OPAC-Nutzer sich nicht selber eine Ausnahmefrist gewähren dürfen, und bei
Vorliegen von Vormerkungen bzw. bei ausstehenden Gebühren und Ablauf der
Mitgliedschaft soll er/sie nicht verlängern dürfen. Zum
Paßwort Normalerweise
hat der Leser noch kein Paßwort. Es wird dann ersatzweise (wie bei Pica) sein
Geburtsdatum genommen, in der Form JJJJMMTT
(es steht in #9B$d). Hat sich
der Leser mit Funktion 6 ein Paßwort verpaßt, steht dieses codiert in #9B$g. Das ist sicherer als das
Geburtsdatum, weil der Unbefugte im Datensatz eben nur das codierte Wort sieht
- damit ist nichts anzufangen. Wenn aber der Nutzer mal sein Paßwort vergißt,
muß er kommen und es vom Personal löschen lassen - danach gilt wieder das
Geburtsdatum und er kann sich ein neues Paßwort ausdenken. Dahinter steckt der
Abschnitt :passw in a-okonto.flx. Zum
Aufheben der Reservierungen Zu den
Benutzer-Informationen gehört auch die Anzeige derjenigen Titel, die im
Warteregal bereitstehen. Der Leser kann entscheiden, einen Titel nicht
abzuholen. Dahinter steckt dann ein Exemplarsatz, der in #9DG den Status W hat.
Der wird dabei noch nicht geändert, sondern das Datum in #9DH$W wird auf
gestern gesetzt. Das Personal muß diese Exemplare abarbeiten, um zu sehen, ob
auf ein solches schon wieder eine Vormerkung vorliegt. Um die verfallenen
Reservierungen (Datum in $W kleiner als heute) zusammenzufassen, gibt es im
aLF-Hauptmenü den neuen Punkt "Verfallene Reserv." (rechts unter
"Mahnexport"). Vormerkung Das
Vormerken soll direkt von der Titelanzeige ausgehen! Diese muß deshalb
erweitert werden um die Anzeige der Exemplare und ihres Ausleihzustands. Dazu ist
die Parameterdatei d-krtf.apr mit
d-k.apt
nötig, in die das Anzeigen der Exemplardaten eingebaut wurde sowie das
Anzeigen eines Flips Vormerken, wenn
alle Exemplare verliehen sind. Die
Arbeit erledigt der FLEX a-ovorm.flx. Weitere
Bemerkungen zu den Einzelheiten des Vormerkens `siehe
unten`. Web-OPAC
(PHPAC) Dies ist
mit kleineren AJAX-Funktionen realisiert. Die JavaScript-Funktionen sind mit
in av_func.js enthalten. Vorgang: a-okonto.htm ->
a-okonto.php -> a-okonto.job Bei den
einzelnen Entleihungen wird jeweils das Verlängern angeboten, bei den
Vormerkungen und Reservierungen das Zurücknehmen bzw. Verzichten. Auf dem
Konto-Menü gibt es außerdem Gesamtverlängerung und Paßwortänderung. Paßwortänderung Vorgang: a-onpw.php -> a-onpw.job Verlängerungen Einzel-
und Gesamtverlängerung möglich Vorbereitung: --> Erzeugt eine Datei alfsys.dat mit allen
Systemdaten Dies muß wiederholt werden, wenn an den
Systemdaten etwas geändert Alle
nachfolgend genannten Dateien müssen bei den PHP-Skripten der Nimmt die Eingaben entgegen und reicht
sie weiter an avanti, und zwar an Dieser liefert die Kontodaten, fertig als
HTM-Tabelle aufbereitet Alle Entleihungen verlängern / Paßwort
ändern Parameter: utf.apr
nur zur Ausgabe von Daten in UTF-8 (Diese Datei muß auf das DbDir
oder ProgDir) In der Kontotabelle gibt es drei Arten von
Angaben, je nach Status des betr. Exemplars: Verlängern : Aktion v Die komplizerteste Aktion wegen der
Fristberechnung u.a. Der Vormerksatz wird einfach gelöscht Dann wird Datum $W in #9DH auf gestern
gesetzt Damit und mit der Satznummer wird dann per
AJAX aufgerufen: a-overl.php Übernimmt die Daten (Satznummer #urN und
Aktionscode #urA) a-overl.job Liest die Systemdaten alfsys.dat
(s.o.) Vormerkungen Dazu sind
die Parameter d-khtm.apr und
d-k.apt
nötig. Sie zeigen unter den Titelangaben 1.
Ausgelöst wird dann vorm(titelID)
in av_func.js 2. Wirkung:
In grex.php und grec.php (Anzeige eines
Datensatzes) ist eine Hinweise (gültig für beide Verfahren) -- Die Frist wird immer vom aktuellen Tag aus
gerechnet, also nicht -- Falls die Verlängerung eine kürzere Frist als
die schon gewährte -- Mehrfachauslösung am selben Tag wird
verhindert, obwohl jedesmal -- Bei Vorliegen von Gebührenforderungen und bei
abgelaufener Zur
Vormerkung Es werden
bewußt nur Titelvormerkungen gemacht, keine auf Exemplare!
MyFLEX=X
a-okonto
access=2 (sonst nicht genug Rechte)
StartFLEX=_start;a-init (bzw.
etwas Eigenes statt _start.flx)
Konto
auf dem DbDir, für a-overl.job (s.u.)
u.a. Kalenderdaten,
Leserklassen, Materialtypen
wird, spätestens zum Beginn jedes neuen
Jahres! Sinn ist, daß avanti
nicht bei jedem kleinen Vorgang sich die
Systemdatensätze erst
selber laden muß (a99 braucht das nur bei Sitzungsbeginn
zu tun)
betreffenden
Datenbank liegen.
Arbeitsweise
der Kontofunktion
a-okonto.htm
Start der Funktion, beliebig einzubinden in die Implementierung
Enthält JavaScript fuer AJAX-Funktion und
<div>...</div>, in das
hinein die AJAX-Ergebnisse geschrieben
werden: receivE()
Tip: Link zu a-okonto.htm in die
OPAC-Startseite einbauen
Diese Seite bleibt die ganze Zeit stehen,
sie wird per AJAX-Methodik
durch Ergebnisse der Aktionen verändert.
a-okonto.php
a-okonto.job
[s. Beispielbild]
Jede Kontozeile hat ein <div>...
fuer das Ergebnis einer Aktion.
Außerdem zwei Funktionen:
Wirkungsweise entspricht der des
aLF-FLEXes a-verl.flx
Mehr zu den Einzelheiten siehe unten.
Vormerkung freigeben : Aktion a
Verzicht auf Abholung: Aktion w
und #9DH$u mit Präfix @z
versehen,
damit der Satz im Konto des
Lesers nicht mehr auftaucht
aber noch erkennbar bleibt, wer
reserviert hatte
und startet den avanti-Job:
Führt die Aktion durch
Ausgabe geht zurück zu a-okonto.htm und
wird in die betr. Zeile
eingetragen (per JavaScript: receivE() )
jeweils
die Exemplare mit ihrem Ausleihzustand. Wenn kein verleihbares Exemplar mehr da
ist,
wird der
Link "Vormerken" unter der
Exemplarliste gezeigt.
verborgene Box vbox unten rechts
eingebaut. Die Funktion vorm(...)
schreibt ein kleines Formular in die Box und
macht sie sichtbar.
3.
In av_ini.php ist die
CSS-Deklaration für vbox
(Position etc.)
4.
In av_func.js sind AJAX-Funktionen
für das Bedienen dieser Box
vm() nimmt bei "Senden" die Nutzereingaben und startet a-ovorm.php
5. a-ovorm.php --> a-ovorm.job
führen das Vormerken aus, der Output geht
zurück an das Browserfenster des Lesers.
Dort:
6. receivV() im JavaScript schreibt das Erg. in
ein vorher leeres <div>
in der
vbox.
der Verfahrensweise im Normalbetrieb
von aLF, insbes.:
auf die bei Ausleihe gesetzte Frist
aufaddiert, d.h. es ist
zwecklos, schon gleich nach Ausleihe
verlängern zu wollen. Aber
ergäbe, wird sie nicht ausgeführt.
Darauf wird hingewiesen.
derselbe Termin herauskäme - es wären aber
doch unnötige
Datenzugriffe. Es erfolgt kein Hinweis
- der Leser sieht ja,
daß sich nichts ändert und kann sich
sein Teil denken.
Mitgliedschaft wird das Verlängerbegehren
abgewiesen.
welche
Entleihungen überhaupt verlängerbar wären und mit welchem Rück-
gabedatum.
Das jedoch wäre erheblich aufwendiger und mit viel mehr
Datenzugriffen
verbunden. Oftmals wird der Nutzer ja nur schnell mal
eben
schauen wollen, was er denn momentan so alles hat.
Wenn
jemand ausnahmsweise ein ganz bestimmtes Exemplar vormerken will,
kann er
das vom Personal machen lassen (mit aLF ist es ja möglich).
die
ausgeliehen sind oder reserviert (Warteregal);
Ein Leser
kann nicht mehrfach denselben Titel vormerken, er kann auch keine Vormerkung
auf einen
Titel plazieren, von dem er bereits ein Exemplar ausgeliehen hat.
Email: ub@tu-bs.de