pvl.login.PubTkt: remaining() for pre-graceperiod renewal
authorTero Marttila <terom@paivola.fi>
Mon, 13 Jan 2014 19:42:15 +0200
changeset 364 b1689d86f5ac
parent 363 6a0de0315782
child 365 e9e3d1580d36
pvl.login.PubTkt: remaining() for pre-graceperiod renewal
pvl/login/pubtkt.py
--- a/pvl/login/pubtkt.py	Mon Jan 13 19:41:55 2014 +0200
+++ b/pvl/login/pubtkt.py	Mon Jan 13 19:42:15 2014 +0200
@@ -242,6 +242,23 @@
             # expired
             return False
 
+    def remaining (self) :
+        """
+            Return remaining validity before grace.
+        """
+
+        now = self.now()
+        
+        if not self.graceperiod :
+            return self.valid()
+
+        elif now < self.graceperiod :
+            return self.graceperiod - now
+
+        else :
+            # expired
+            return False
+
     def renew (self, valid, grace=None) :
         if not self.valid() :
             raise ExpiredError(self, "Unable to renew expired pubtkt")