% Autor:
% Datum: 12.04.03

% Bibliotheksdaten laden
:- consult('BibliothekDaten').

% monatspaeter
monatspaeter(datum(T1,M1,J1), datum(T2,M2,J2)) :-
  T2 >= T1, M2 >= M1+1, J2 >= J1.
monatspaeter(datum(T1,M1,J1), datum(T2,M2,J2)) :-
  M2 >= M1+2, J2 >= J1.
monatspaeter(datum(T1,M1,J1), datum(T2,M2,J2)) :-
  T2 >= T1, J2 >= J1+1.
monatspaeter(datum(T1,M1,J1), datum(T2,M2,J2)) :-
  (12-M1)+M2 >= 2, J2 >= J1+1.
monatspaeter(datum(T1,M1,J1), datum(T2,M2,J2)) :-
  J2 >= J1+2.

% mahnung
mahnung(Name, Vorname, Sig, datum(Takt, Makt, Jakt)) :-
  leser(LNr, Name, Vorname, _, _),
  ausleihe(LNr, Sig, datum(Taus, Maus, Jaus)),
  monatspaeter(datum(Taus, Maus, Jaus), datum(Takt, Makt, Jakt)).
  
% rurueckgeben
zurueckgeben(Sig) :-
  retract(ausleihe(LNr, Sig, datum(T,M,J))).

% ausleihen
ausleihen(LNr, Sig, Tag, Monat, Jahr) :-
  assertz(ausleihe(LNr, Sig, datum(Tag,Monat,Jahr))).
  
% speichern
speichern :-
  tell('BibliothekDaten.pl'),
  listing(leser),
  listing(buch),
  listing(ausleihe),
  told.
