diff --git a/webinterface.py b/webinterface.py index e8598cb4b..cc417e20a 100644 --- a/webinterface.py +++ b/webinterface.py @@ -1728,6 +1728,24 @@ def individualPostAsHtml(iconsDir: str,translate: {}, \ showPublicOnly=False) -> str: """ Shows a single post as html """ + # if a cached version of the post already exists then fetch it + htmlPostCacheDir=baseDir+'/accounts/'+nickname+'@'+domain+'/postcache' + cachedPostFilename=htmlPostCacheDir+'/'+postJsonObject['id'].replace('/','#')+'.html' + if os.path.isfile(cachedPostFilename): + postStr='' + tries=0 + while tries<3: + try: + with open(cachedPostFilename, 'r') as file: + postStr = file.read() + break + except Exception as e: + print(e) + # no sleep + tries+=1 + if postStr: + return postStr + # If this is the inbox timeline then don't show the repeat icon on any DMs showRepeatIcon=showRepeats showDMicon=False @@ -2085,15 +2103,27 @@ def individualPostAsHtml(iconsDir: str,translate: {}, \ contentStr='
' + postStr='' if boxName!='tlmedia': - return \ + postStr= \ ''+titleStr+replyAvatarImageInPost+'
'+ \ contentStr+footerStr+ \ '