Update the login_date timestamp

        Initialize the thread local sess.login property with
        the authenticated login model.

        The login_date update will be debounced so writes don't
        occur on every hit of the the API. If the login_date
        was modified within 15 minutes then don't update it.

def post_authenticate(self):
        """ Update the login_date timestamp

        Initialize the thread local sess.login property with
        the authenticated login model.

        The login_date update will be debounced so writes don't
        occur on every hit of the the API. If the login_date
        was modified within 15 minutes then don't update it.
        """

        goldman.sess.login = self
        now = dt.now()

        if not self.login_date:
            self.login_date = now
        else:
            sec_since_updated = (now - self.login_date).seconds
            min_since_updated = sec_since_updated / 60

            if min_since_updated > 15:
                self.login_date = now

        if self.dirty:
            store = goldman.sess.store
            store.update(self)