hydrus/hydrus/client/ClientTime.py

42 lines
950 B
Python
Raw Normal View History

import typing
2022-03-09 22:18:23 +00:00
from hydrus.core import HydrusData
def ShouldUpdateDomainModifiedTime( existing_timestamp: int, new_timestamp: int ):
2022-03-09 22:18:23 +00:00
# assume anything too early is a meme and a timestamp parsing conversion error
if new_timestamp <= 86400 * 7:
2022-03-09 22:18:23 +00:00
return False
# only go backwards, in general
if new_timestamp >= existing_timestamp:
2022-03-09 22:18:23 +00:00
return False
return True
def MergeModifiedTimes( existing_timestamp: typing.Optional[ int ], new_timestamp: typing.Optional[ int ] ) -> typing.Optional[ int ]:
if existing_timestamp is None:
return new_timestamp
if new_timestamp is None:
return existing_timestamp
if ShouldUpdateDomainModifiedTime( existing_timestamp, new_timestamp ):
return new_timestamp
else:
return existing_timestamp