From d87cb69fd0d86056b92e13f1b83b8a4c3a2a07cf Mon Sep 17 00:00:00 2001
From: Bob Mottram
Date: Fri, 12 Nov 2021 19:12:53 +0000
Subject: [PATCH] Show post being replied to on new post screen
---
daemon.py | 70 +++++++++++++++++++++++++++++++++++++++++--
webapp_create_post.py | 42 +++++++++++++++++++++++++-
2 files changed, 108 insertions(+), 4 deletions(-)
diff --git a/daemon.py b/daemon.py
index 5e9a88122..07c92b2f9 100644
--- a/daemon.py
+++ b/daemon.py
@@ -2550,7 +2550,26 @@ class PubServer(BaseHTTPRequestHandler):
self.server.themeName,
True, accessKeys,
customSubmitText,
- conversationId).encode('utf-8')
+ conversationId,
+ self.server.recentPostsCache,
+ self.server.maxRecentPosts,
+ self.server.session,
+ self.server.cachedWebfingers,
+ self.server.personCache,
+ self.server.port,
+ None,
+ self.server.projectVersion,
+ self.server.YTReplacementDomain,
+ self.server.twitterReplacementDomain,
+ self.server.showPublishedDateOnly,
+ self.server.peertubeInstances,
+ self.server.allowLocalNetworkAccess,
+ self.server.systemLanguage,
+ self.server.maxLikeCount,
+ self.server.signingPrivateKeyPem,
+ self.server.CWlists,
+ self.server.listsEnabled,
+ self.server.defaultTimeline).encode('utf-8')
msglen = len(msg)
self._set_headers('text/html', msglen,
cookie, callingDomain, False)
@@ -2665,7 +2684,26 @@ class PubServer(BaseHTTPRequestHandler):
self.server.themeName,
True, accessKeys,
customSubmitText,
- conversationId).encode('utf-8')
+ conversationId,
+ self.server.recentPostsCache,
+ self.server.maxRecentPosts,
+ self.server.session,
+ self.server.cachedWebfingers,
+ self.server.personCache,
+ self.server.port,
+ None,
+ self.server.projectVersion,
+ self.server.YTReplacementDomain,
+ self.server.twitterReplacementDomain,
+ self.server.showPublishedDateOnly,
+ self.server.peertubeInstances,
+ self.server.allowLocalNetworkAccess,
+ self.server.systemLanguage,
+ self.server.maxLikeCount,
+ self.server.signingPrivateKeyPem,
+ self.server.CWlists,
+ self.server.listsEnabled,
+ self.server.defaultTimeline).encode('utf-8')
msglen = len(msg)
self._set_headers('text/html', msglen,
cookie, callingDomain, False)
@@ -12519,6 +12557,13 @@ class PubServer(BaseHTTPRequestHandler):
customSubmitText = getConfigParam(baseDir, 'customSubmitText')
+ postJsonObject = None
+ if inReplyToUrl:
+ replyPostFilename = \
+ locatePost(baseDir, nickname, domain, inReplyToUrl)
+ if replyPostFilename:
+ postJsonObject = loadJson(replyPostFilename)
+
msg = htmlNewPost(self.server.cssCache,
mediaInstance,
translate,
@@ -12536,7 +12581,26 @@ class PubServer(BaseHTTPRequestHandler):
self.server.themeName,
noDropDown, accessKeys,
customSubmitText,
- conversationId).encode('utf-8')
+ conversationId,
+ self.server.recentPostsCache,
+ self.server.maxRecentPosts,
+ self.server.session,
+ self.server.cachedWebfingers,
+ self.server.personCache,
+ self.server.port,
+ postJsonObject,
+ self.server.projectVersion,
+ self.server.YTReplacementDomain,
+ self.server.twitterReplacementDomain,
+ self.server.showPublishedDateOnly,
+ self.server.peertubeInstances,
+ self.server.allowLocalNetworkAccess,
+ self.server.systemLanguage,
+ self.server.maxLikeCount,
+ self.server.signingPrivateKeyPem,
+ self.server.CWlists,
+ self.server.listsEnabled,
+ self.server.defaultTimeline).encode('utf-8')
if not msg:
print('Error replying to ' + inReplyToUrl)
self._404()
diff --git a/webapp_create_post.py b/webapp_create_post.py
index 34205d83d..554149b22 100644
--- a/webapp_create_post.py
+++ b/webapp_create_post.py
@@ -23,6 +23,7 @@ from webapp_utils import htmlFooter
from webapp_utils import editTextField
from webapp_utils import editNumberField
from webapp_utils import editCurrencyField
+from webapp_post import individualPostAsHtml
def _htmlFollowingDataList(baseDir: str, nickname: str,
@@ -195,7 +196,21 @@ def htmlNewPost(cssCache: {}, mediaInstance: bool, translate: {},
defaultTimeline: str, newswire: {},
theme: str, noDropDown: bool,
accessKeys: {}, customSubmitText: str,
- conversationId: str) -> str:
+ conversationId: str,
+ recentPostsCache: {}, maxRecentPosts: int,
+ session, cachedWebfingers: {},
+ personCache: {}, port: int,
+ postJsonObject: {},
+ projectVersion: str,
+ YTReplacementDomain: str,
+ twitterReplacementDomain: str,
+ showPublishedDateOnly: bool,
+ peertubeInstances: [],
+ allowLocalNetworkAccess: bool,
+ systemLanguage: str,
+ maxLikeCount: int, signingPrivateKeyPem: str,
+ CWlists: {}, listsEnabled: str,
+ boxName: str) -> str:
"""New post screen
"""
replyStr = ''
@@ -242,6 +257,31 @@ def htmlNewPost(cssCache: {}, mediaInstance: bool, translate: {},
'" rel="nofollow noopener noreferrer" ' + \
'target="_blank">' + \
translate['this post'] + '
\n'
+ if postJsonObject:
+ newPostText += \
+ individualPostAsHtml(signingPrivateKeyPem,
+ True, recentPostsCache,
+ maxRecentPosts,
+ translate, None,
+ baseDir, session,
+ cachedWebfingers,
+ personCache,
+ nickname, domain, port,
+ postJsonObject,
+ None, True, False,
+ httpPrefix, projectVersion,
+ boxName,
+ YTReplacementDomain,
+ twitterReplacementDomain,
+ showPublishedDateOnly,
+ peertubeInstances,
+ allowLocalNetworkAccess,
+ theme, systemLanguage,
+ maxLikeCount,
+ False, False, False,
+ False, False, False,
+ CWlists, listsEnabled)
+
replyStr = '\n'