aLF Nutzerkonto / Verlängerung / Vormerkung in Selbstbedienung

 

Diese Angebote kann man sowohl mittels alcarta im lokalen Netz machen als auch mit PHPAC im Webkatalog.

 

alcarta

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
MyFLEX=X a-okonto
access=2
           (sonst nicht genug Rechte)
StartFLEX=_start;a-init                    (bzw. etwas Eigenes statt _start.flx)

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.

 
Konto

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:

    In a99       X a-oinit

                    -->  Erzeugt eine Datei  alfsys.dat  mit allen Systemdaten
                           auf dem DbDir, für
a-overl.job (s.u.)
                           u.a. Kalenderdaten, Leserklassen, Materialtypen

   Dies muß wiederholt werden, wenn an den Systemdaten etwas geändert
   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)

 

Alle nachfolgend genannten Dateien müssen bei den PHP-Skripten der
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.

    Eingabe von Lesernummer und -paßwort startet dann a-okonto.php:

 
a-okonto.php

      Nimmt die Eingaben entgegen und reicht sie weiter an avanti, und zwar an

 
a-okonto.job    [s. Beispielbild]

      Dieser liefert die Kontodaten, fertig als HTM-Tabelle aufbereitet
      Jede Kontozeile hat ein <div>... fuer das Ergebnis einer Aktion.
      Außerdem zwei Funktionen:

        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.
         Wirkungsweise entspricht der des aLF-FLEXes 
a-verl.flx
         Mehr zu den Einzelheiten siehe unten.

 
     Vormerkung freigeben :    Aktion a

         Der Vormerksatz wird einfach gelöscht

 
     Verzicht auf Abholung:     Aktion w

         Dann wird Datum $W in #9DH auf gestern gesetzt
              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

   Damit und mit der Satznummer wird dann per AJAX aufgerufen:

 

a-overl.php

      Übernimmt die Daten (Satznummer #urN und Aktionscode #urA)
      und startet den avanti-Job:

a-overl.job

      Liest die Systemdaten  alfsys.dat  (s.o.)
      Führt die Aktion durch
      Ausgabe geht zurück zu a-okonto.htm und wird in die betr. Zeile
         eingetragen (per JavaScript:
receivE() )

 

 

Vormerkungen

Dazu sind die Parameter  d-khtm.apr und  d-k.apt  nötig. Sie zeigen unter den Titelangaben
jeweils die Exemplare mit ihrem Ausleihzustand. Wenn kein verleihbares Exemplar mehr da ist,
wird der Link  "Vormerken" unter der Exemplarliste gezeigt.

 

1. Ausgelöst wird dann

vorm(titelID)  in  av_func.js

 

2. Wirkung: In  grex.php  und  grec.php  (Anzeige eines Datensatzes) ist eine
   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.

  

Hinweise (gültig für beide Verfahren)

Zur Verlängerung

--  Die Fristberechnung und die Bedingungsprüfungen entsprechen genau 
        der Verfahrensweise im Normalbetrieb von aLF, insbes.:

--  Die Frist wird immer vom aktuellen Tag aus gerechnet, also nicht
        auf die bei Ausleihe gesetzte Frist aufaddiert, d.h. es ist 
        zwecklos, schon gleich nach Ausleihe verlängern zu wollen. Aber

--  Falls die Verlängerung eine kürzere Frist als die schon gewährte
        ergäbe, wird sie nicht ausgeführt. Darauf wird hingewiesen.

--  Mehrfachauslösung am selben Tag wird verhindert, obwohl jedesmal
        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.

--  Bei Vorliegen von Gebührenforderungen und bei abgelaufener
        Mitgliedschaft wird das Verlängerbegehren abgewiesen.

Man könnte zwar fordern, daß die Kontoliste schon gleich auswiese,
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.

Zur Vormerkung

Es werden bewußt nur Titelvormerkungen gemacht, keine auf Exemplare!
Wenn jemand ausnahmsweise ein ganz bestimmtes Exemplar vormerken will,
kann er das vom Personal machen lassen (mit aLF ist es ja möglich).

 Präsenzexemplare und vermißte werden nicht berücksichtigt, nur solche,
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.


[i] zuletzt aktualisiert:
Email: ub@tu-bs.de