Bug 16276: Update borrowers.lastseen when a patron is active
authorJonathan Druart <jonathan.druart@bugs.koha-community.org>
Sun, 24 Apr 2016 15:04:16 +0000 (16:04 +0100)
committerKyle M Hall <kyle@bywatersolutions.com>
Tue, 13 Sep 2016 17:27:41 +0000 (17:27 +0000)
In order to add the ability to delete patrons who have been inactive for
more than a given time, we need to track down the last time they were
active.
To do that, we need a new DB column in the borrowers table (lastseen).
Note that the borrowers.lastseen column will not be initialised for existing
installations (set to NULL) so inactive existing patrons will never be
deleted.
A workaround would be to init them at the date when the new column will
be added.

Test plan:
0/ Set the new pref TrackLastPatronActivity on
1/ Log in as a patron (staff or OPAC)
2/ Check that the borrowers.lastseen field has been updated with the
current time

Sponsored-by: BULAC - http://www.bulac.fr/
Signed-off-by: Nicolas Legrand <nicolas.legrand@bulac.fr>

https://bugs.koha-community.org/show_bug.cgi?id=12276

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>

Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>

C4/Auth.pm

index fcf7c48..7171c2b 100644 (file)
@@ -1181,6 +1181,15 @@ sub checkauth {
                 -HttpOnly => 1
             );
         }
+
+        if ( $userid ) {
+            $dbh->do(q|
+                UPDATE borrowers
+                SET lastseen = NOW()
+                WHERE userid = ?
+            |, undef, $userid);
+        }
+
         return ( $userid, $cookie, $sessionID, $flags );
     }