Snake case

merge-requests/30/head
Bob Mottram 2021-12-26 12:02:29 +00:00
parent dcafa28ee4
commit a151710ce2
51 changed files with 286 additions and 283 deletions

View File

@ -16,7 +16,7 @@ from utils import getDomainFromActor
from utils import getNicknameFromActor
from utils import domainPermitted
from utils import followPerson
from utils import acctDir
from utils import acct_dir
from utils import hasGroupType
from utils import local_actor_url
from utils import hasActor
@ -150,7 +150,7 @@ def _accept_follow(base_dir: str, domain: str, message_json: {},
# has this person already been unfollowed?
unfollowed_filename = \
acctDir(base_dir, nickname, accepted_domain_full) + '/unfollowed.txt'
acct_dir(base_dir, nickname, accepted_domain_full) + '/unfollowed.txt'
if os.path.isfile(unfollowed_filename):
if followed_nickname + '@' + followed_domain_full in \
open(unfollowed_filename).read():

View File

@ -18,7 +18,7 @@ from utils import getNicknameFromActor
from utils import getDomainFromActor
from utils import loadJson
from utils import saveJson
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from utils import hasActor
@ -30,7 +30,7 @@ def setAvailability(base_dir: str, nickname: str, domain: str,
# avoid giant strings
if len(status) > 128:
return False
actorFilename = acctDir(base_dir, nickname, domain) + '.json'
actorFilename = acct_dir(base_dir, nickname, domain) + '.json'
if not os.path.isfile(actorFilename):
return False
actor_json = loadJson(actorFilename)
@ -43,7 +43,7 @@ def setAvailability(base_dir: str, nickname: str, domain: str,
def getAvailability(base_dir: str, nickname: str, domain: str) -> str:
"""Returns the availability for a given person
"""
actorFilename = acctDir(base_dir, nickname, domain) + '.json'
actorFilename = acct_dir(base_dir, nickname, domain) + '.json'
if not os.path.isfile(actorFilename):
return False
actor_json = loadJson(actorFilename)

View File

@ -30,7 +30,7 @@ from utils import locatePost
from utils import evilIncarnate
from utils import getDomainFromActor
from utils import getNicknameFromActor
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from utils import hasActor
from conversation import muteConversation
@ -80,14 +80,14 @@ def addBlock(base_dir: str, nickname: str, domain: str,
return False
domain = removeDomainPort(domain)
blockingFilename = acctDir(base_dir, nickname, domain) + '/blocking.txt'
blockingFilename = acct_dir(base_dir, nickname, domain) + '/blocking.txt'
blockHandle = blockNickname + '@' + blockDomain
if os.path.isfile(blockingFilename):
if blockHandle + '\n' in open(blockingFilename).read():
return False
# if we are following then unfollow
followingFilename = acctDir(base_dir, nickname, domain) + '/following.txt'
followingFilename = acct_dir(base_dir, nickname, domain) + '/following.txt'
if os.path.isfile(followingFilename):
if blockHandle + '\n' in open(followingFilename).read():
followingStr = ''
@ -109,7 +109,7 @@ def addBlock(base_dir: str, nickname: str, domain: str,
return False
# if they are a follower then remove them
followersFilename = acctDir(base_dir, nickname, domain) + '/followers.txt'
followersFilename = acct_dir(base_dir, nickname, domain) + '/followers.txt'
if os.path.isfile(followersFilename):
if blockHandle + '\n' in open(followersFilename).read():
followersStr = ''
@ -203,7 +203,7 @@ def removeBlock(base_dir: str, nickname: str, domain: str,
"""Unblock the given account
"""
domain = removeDomainPort(domain)
unblockingFilename = acctDir(base_dir, nickname, domain) + '/blocking.txt'
unblockingFilename = acct_dir(base_dir, nickname, domain) + '/blocking.txt'
unblockHandle = unblockNickname + '@' + unblockDomain
if os.path.isfile(unblockingFilename):
if unblockHandle in open(unblockingFilename).read():
@ -397,7 +397,7 @@ def isBlocked(base_dir: str, nickname: str, domain: str,
return True
# account level allow list
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
allowFilename = accountDir + '/allowedinstances.txt'
if os.path.isfile(allowFilename):
if blockDomain not in open(allowFilename).read():

22
blog.py
View File

@ -32,7 +32,7 @@ from utils import locatePost
from utils import loadJson
from utils import firstParagraphFromString
from utils import getActorPropertyUrl
from utils import acctDir
from utils import acct_dir
from posts import createBlogsTimeline
from newswire import rss2Header
from newswire import rss2Footer
@ -54,7 +54,7 @@ def _noOfBlogReplies(base_dir: str, http_prefix: str, translate: {},
boxFound = False
for postBox in tryPostBox:
postFilename = \
acctDir(base_dir, nickname, domain) + '/' + postBox + '/' + \
acct_dir(base_dir, nickname, domain) + '/' + postBox + '/' + \
postId.replace('/', '#') + '.replies'
if os.path.isfile(postFilename):
boxFound = True
@ -63,7 +63,7 @@ def _noOfBlogReplies(base_dir: str, http_prefix: str, translate: {},
# post may exist but has no replies
for postBox in tryPostBox:
postFilename = \
acctDir(base_dir, nickname, domain) + '/' + postBox + '/' + \
acct_dir(base_dir, nickname, domain) + '/' + postBox + '/' + \
postId.replace('/', '#')
if os.path.isfile(postFilename):
return 1
@ -123,7 +123,7 @@ def _getBlogReplies(base_dir: str, http_prefix: str, translate: {},
boxFound = False
for postBox in tryPostBox:
postFilename = \
acctDir(base_dir, nickname, domain) + '/' + postBox + '/' + \
acct_dir(base_dir, nickname, domain) + '/' + postBox + '/' + \
postId.replace('/', '#') + '.replies'
if os.path.isfile(postFilename):
boxFound = True
@ -132,10 +132,10 @@ def _getBlogReplies(base_dir: str, http_prefix: str, translate: {},
# post may exist but has no replies
for postBox in tryPostBox:
postFilename = \
acctDir(base_dir, nickname, domain) + '/' + postBox + '/' + \
acct_dir(base_dir, nickname, domain) + '/' + postBox + '/' + \
postId.replace('/', '#') + '.json'
if os.path.isfile(postFilename):
postFilename = acctDir(base_dir, nickname, domain) + \
postFilename = acct_dir(base_dir, nickname, domain) + \
'/postcache/' + \
postId.replace('/', '#') + '.html'
if os.path.isfile(postFilename):
@ -159,7 +159,7 @@ def _getBlogReplies(base_dir: str, http_prefix: str, translate: {},
replyPostId = replyPostId.replace('\n', '').replace('\r', '')
replyPostId = replyPostId.replace('.json', '')
replyPostId = replyPostId.replace('.replies', '')
postFilename = acctDir(base_dir, nickname, domain) + \
postFilename = acct_dir(base_dir, nickname, domain) + \
'/postcache/' + \
replyPostId.replace('/', '#') + '.html'
if not os.path.isfile(postFilename):
@ -525,7 +525,7 @@ def htmlBlogPage(authorized: bool, session,
blogStr = htmlHeaderWithExternalStyle(cssFilename, instanceTitle, None)
_htmlBlogRemoveCwButton(blogStr, translate)
blogsIndex = acctDir(base_dir, nickname, domain) + '/tlblogs.index'
blogsIndex = acct_dir(base_dir, nickname, domain) + '/tlblogs.index'
if not os.path.isfile(blogsIndex):
return blogStr + htmlFooter()
@ -615,7 +615,7 @@ def htmlBlogPageRSS2(authorized: bool, session,
blogRSS2 = rss2Header(http_prefix, nickname, domain_full,
'Blog', translate)
blogsIndex = acctDir(base_dir, nickname, domain) + '/tlblogs.index'
blogsIndex = acct_dir(base_dir, nickname, domain) + '/tlblogs.index'
if not os.path.isfile(blogsIndex):
if includeHeader:
return blogRSS2 + rss2Footer()
@ -667,7 +667,7 @@ def htmlBlogPageRSS3(authorized: bool, session,
blogRSS3 = ''
blogsIndex = acctDir(base_dir, nickname, domain) + '/tlblogs.index'
blogsIndex = acct_dir(base_dir, nickname, domain) + '/tlblogs.index'
if not os.path.isfile(blogsIndex):
return blogRSS3
@ -937,7 +937,7 @@ def pathContainsBlogLink(base_dir: str,
if not userEnding2[1].isdigit():
return None, None
# check for blog posts
blogIndexFilename = acctDir(base_dir, nickname, domain) + '/tlblogs.index'
blogIndexFilename = acct_dir(base_dir, nickname, domain) + '/tlblogs.index'
if not os.path.isfile(blogIndexFilename):
return None, None
if '#' + userEnding2[1] + '.' not in open(blogIndexFilename).read():

View File

@ -24,7 +24,7 @@ from utils import getCachedPostFilename
from utils import loadJson
from utils import saveJson
from utils import has_object_dict
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from utils import hasActor
from utils import hasObjectStringType
@ -60,7 +60,7 @@ def undoBookmarksCollectionEntry(recentPostsCache: {},
# remove from the index
bookmarksIndexFilename = \
acctDir(base_dir, nickname, domain) + '/bookmarks.index'
acct_dir(base_dir, nickname, domain) + '/bookmarks.index'
if not os.path.isfile(bookmarksIndexFilename):
return
if '/' in postFilename:
@ -224,7 +224,7 @@ def updateBookmarksCollection(recentPostsCache: {},
# prepend to the index
bookmarksIndexFilename = \
acctDir(base_dir, nickname, domain) + '/bookmarks.index'
acct_dir(base_dir, nickname, domain) + '/bookmarks.index'
bookmarkIndex = postFilename.split('/')[-1]
if os.path.isfile(bookmarksIndexFilename):
if bookmarkIndex not in open(bookmarksIndexFilename).read():

View File

@ -12,7 +12,7 @@ import datetime
import random
import math
from random import randint
from utils import acctDir
from utils import acct_dir
# states which the simulated city dweller can be in
PERSON_SLEEP = 0
@ -314,7 +314,7 @@ def getSpoofedCity(city: str, base_dir: str,
image metadata
"""
city = ''
cityFilename = acctDir(base_dir, nickname, domain) + '/city.txt'
cityFilename = acct_dir(base_dir, nickname, domain) + '/city.txt'
if os.path.isfile(cityFilename):
try:
with open(cityFilename, 'r') as fp:

View File

@ -22,7 +22,7 @@ from utils import getLinkPrefixes
from utils import dangerousMarkup
from utils import isPGPEncrypted
from utils import containsPGPPublicKey
from utils import acctDir
from utils import acct_dir
from utils import isfloat
from utils import getCurrencies
from utils import removeHtml
@ -223,7 +223,7 @@ def switchWords(base_dir: str, nickname: str, domain: str, content: str,
if not rules:
switchWordsFilename = \
acctDir(base_dir, nickname, domain) + '/replacewords.txt'
acct_dir(base_dir, nickname, domain) + '/replacewords.txt'
if not os.path.isfile(switchWordsFilename):
return content
try:
@ -784,7 +784,7 @@ def _loadAutoTags(base_dir: str, nickname: str, domain: str) -> []:
"""Loads automatic tags file and returns a list containing
the lines of the file
"""
filename = acctDir(base_dir, nickname, domain) + '/autotags.txt'
filename = acct_dir(base_dir, nickname, domain) + '/autotags.txt'
if not os.path.isfile(filename):
return []
try:
@ -856,7 +856,7 @@ def addHtmlTags(base_dir: str, http_prefix: str,
emojiDict = {}
originalDomain = domain
domain = removeDomainPort(domain)
followingFilename = acctDir(base_dir, nickname, domain) + '/following.txt'
followingFilename = acct_dir(base_dir, nickname, domain) + '/following.txt'
# read the following list so that we can detect just @nick
# in addition to @nick@domain

View File

@ -9,7 +9,7 @@ __module_group__ = "Timeline"
import os
from utils import has_object_dict
from utils import acctDir
from utils import acct_dir
from utils import removeIdEnding
@ -23,7 +23,7 @@ def _getConversationFilename(base_dir: str, nickname: str, domain: str,
return None
if not post_json_object['object'].get('id'):
return None
conversationDir = acctDir(base_dir, nickname, domain) + '/conversation'
conversationDir = acct_dir(base_dir, nickname, domain) + '/conversation'
if not os.path.isdir(conversationDir):
os.mkdir(conversationDir)
conversationId = post_json_object['object']['conversation']
@ -63,7 +63,7 @@ def muteConversation(base_dir: str, nickname: str, domain: str,
conversationId: str) -> None:
"""Mutes the given conversation
"""
conversationDir = acctDir(base_dir, nickname, domain) + '/conversation'
conversationDir = acct_dir(base_dir, nickname, domain) + '/conversation'
conversationFilename = \
conversationDir + '/' + conversationId.replace('/', '#')
if not os.path.isfile(conversationFilename):
@ -81,7 +81,7 @@ def unmuteConversation(base_dir: str, nickname: str, domain: str,
conversationId: str) -> None:
"""Unmutes the given conversation
"""
conversationDir = acctDir(base_dir, nickname, domain) + '/conversation'
conversationDir = acct_dir(base_dir, nickname, domain) + '/conversation'
conversationFilename = \
conversationDir + '/' + conversationId.replace('/', '#')
if not os.path.isfile(conversationFilename):

105
daemon.py
View File

@ -255,7 +255,7 @@ from utils import isfloat
from utils import validPassword
from utils import removeLineEndings
from utils import get_base_content_from_post
from utils import acctDir
from utils import acct_dir
from utils import getImageExtensionFromMimeType
from utils import getImageMimeType
from utils import has_object_dict
@ -472,7 +472,7 @@ class PubServer(BaseHTTPRequestHandler):
"""Sends a reply to a question
"""
votesFilename = \
acctDir(self.server.base_dir, nickname, self.server.domain) + \
acct_dir(self.server.base_dir, nickname, self.server.domain) + \
'/questions.txt'
if os.path.isfile(votesFilename):
@ -1766,7 +1766,7 @@ class PubServer(BaseHTTPRequestHandler):
# This produces a deterministic token based
# on nick+password+salt
saltFilename = \
acctDir(base_dir, loginNickname, domain) + '/.salt'
acct_dir(base_dir, loginNickname, domain) + '/.salt'
salt = createPassword(32)
if os.path.isfile(saltFilename):
try:
@ -2109,7 +2109,7 @@ class PubServer(BaseHTTPRequestHandler):
if saveKeys:
accessKeysFilename = \
acctDir(base_dir, nickname, domain) + '/accessKeys.json'
acct_dir(base_dir, nickname, domain) + '/accessKeys.json'
saveJson(accessKeys, accessKeysFilename)
if not self.server.keyShortcuts.get(nickname):
self.server.keyShortcuts[nickname] = accessKeys.copy()
@ -2492,8 +2492,8 @@ class PubServer(BaseHTTPRequestHandler):
postsToNews = optionsConfirmParams.split('postsToNews=')[1]
if '&' in postsToNews:
postsToNews = postsToNews.split('&')[0]
accountDir = acctDir(self.server.base_dir,
optionsNickname, optionsDomain)
accountDir = acct_dir(self.server.base_dir,
optionsNickname, optionsDomain)
newswireBlockedFilename = accountDir + '/.nonewswire'
if postsToNews == 'on':
if os.path.isfile(newswireBlockedFilename):
@ -2538,8 +2538,8 @@ class PubServer(BaseHTTPRequestHandler):
optionsConfirmParams.split('postsToFeatures=')[1]
if '&' in postsToFeatures:
postsToFeatures = postsToFeatures.split('&')[0]
accountDir = acctDir(self.server.base_dir,
optionsNickname, optionsDomain)
accountDir = acct_dir(self.server.base_dir,
optionsNickname, optionsDomain)
featuresBlockedFilename = accountDir + '/.nofeatures'
if postsToFeatures == 'on':
if os.path.isfile(featuresBlockedFilename):
@ -2584,8 +2584,8 @@ class PubServer(BaseHTTPRequestHandler):
optionsConfirmParams.split('modNewsPosts=')[1]
if '&' in modPostsToNews:
modPostsToNews = modPostsToNews.split('&')[0]
accountDir = acctDir(self.server.base_dir,
optionsNickname, optionsDomain)
accountDir = acct_dir(self.server.base_dir,
optionsNickname, optionsDomain)
newswireModFilename = accountDir + '/.newswiremoderated'
if modPostsToNews != 'on':
if os.path.isfile(newswireModFilename):
@ -3777,7 +3777,7 @@ class PubServer(BaseHTTPRequestHandler):
self.server.POSTbusy = False
return
self.postFromNickname = pathUsersSection.split('/')[0]
accountsDir = acctDir(base_dir, self.postFromNickname, domain)
accountsDir = acct_dir(base_dir, self.postFromNickname, domain)
if not os.path.isdir(accountsDir):
self._404()
self.server.POSTbusy = False
@ -4464,7 +4464,7 @@ class PubServer(BaseHTTPRequestHandler):
nickname = getNicknameFromActor(actorStr)
citationsFilename = \
acctDir(base_dir, nickname, domain) + '/.citations.txt'
acct_dir(base_dir, nickname, domain) + '/.citations.txt'
# remove any existing citations file
if os.path.isfile(citationsFilename):
try:
@ -4783,7 +4783,7 @@ class PubServer(BaseHTTPRequestHandler):
filenameBase)
else:
filenameBase = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/' + mType + '.temp'
filename, attachmentMediaType = \
@ -4883,7 +4883,7 @@ class PubServer(BaseHTTPRequestHandler):
# load the json for the actor for this user
actorFilename = \
acctDir(base_dir, nickname, domain) + '.json'
acct_dir(base_dir, nickname, domain) + '.json'
if os.path.isfile(actorFilename):
actor_json = loadJson(actorFilename)
if actor_json:
@ -4983,7 +4983,7 @@ class PubServer(BaseHTTPRequestHandler):
# change city
if fields.get('cityDropdown'):
cityFilename = \
acctDir(base_dir, nickname, domain) + '/city.txt'
acct_dir(base_dir, nickname, domain) + '/city.txt'
try:
with open(cityFilename, 'w+') as fp:
fp.write(fields['cityDropdown'])
@ -5979,7 +5979,7 @@ class PubServer(BaseHTTPRequestHandler):
# only receive DMs from accounts you follow
followDMsFilename = \
acctDir(base_dir, nickname, domain) + '/.followDMs'
acct_dir(base_dir, nickname, domain) + '/.followDMs'
if onFinalWelcomeScreen:
# initial default setting created via
# the welcome screen
@ -6013,7 +6013,7 @@ class PubServer(BaseHTTPRequestHandler):
# remove Twitter retweets
removeTwitterFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/.removeTwitter'
removeTwitterActive = False
if fields.get('removeTwitter'):
@ -6037,10 +6037,10 @@ class PubServer(BaseHTTPRequestHandler):
# hide Like button
hideLikeButtonFile = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/.hideLikeButton'
notifyLikesFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/.notifyLikes'
hideLikeButtonActive = False
if fields.get('hideLikeButton'):
@ -6071,10 +6071,10 @@ class PubServer(BaseHTTPRequestHandler):
# hide Reaction button
hideReactionButtonFile = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/.hideReactionButton'
notifyReactionsFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/.notifyReactions'
hideReactionButtonActive = False
if fields.get('hideReactionButton'):
@ -6137,7 +6137,7 @@ class PubServer(BaseHTTPRequestHandler):
notifyLikesFilename)
notifyReactionsFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/.notifyReactions'
if onFinalWelcomeScreen:
# default setting from welcome screen
@ -6221,7 +6221,7 @@ class PubServer(BaseHTTPRequestHandler):
# save filtered words list
filterFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/filters.txt'
if fields.get('filteredWords'):
try:
@ -6241,7 +6241,7 @@ class PubServer(BaseHTTPRequestHandler):
# save filtered words within bio list
filterBioFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/filters_bio.txt'
if fields.get('filteredWordsBio'):
try:
@ -6261,7 +6261,7 @@ class PubServer(BaseHTTPRequestHandler):
# word replacements
switchFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/replacewords.txt'
if fields.get('switchWords'):
try:
@ -6281,7 +6281,7 @@ class PubServer(BaseHTTPRequestHandler):
# autogenerated tags
autoTagsFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/autotags.txt'
if fields.get('autoTags'):
try:
@ -6301,7 +6301,7 @@ class PubServer(BaseHTTPRequestHandler):
# autogenerated content warnings
autoCWFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/autocw.txt'
if fields.get('autoCW'):
try:
@ -6321,7 +6321,7 @@ class PubServer(BaseHTTPRequestHandler):
# save blocked accounts list
blockedFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/blocking.txt'
if fields.get('blocked'):
try:
@ -6343,7 +6343,7 @@ class PubServer(BaseHTTPRequestHandler):
# The allow list for incoming DMs,
# if the .followDMs flag file exists
dmAllowedInstancesFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/dmAllowedinstances.txt'
if fields.get('dmAllowedInstances'):
try:
@ -6365,7 +6365,7 @@ class PubServer(BaseHTTPRequestHandler):
# save allowed instances list
# This is the account level allow list
allowedInstancesFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/allowedinstances.txt'
if fields.get('allowedInstances'):
try:
@ -6457,7 +6457,7 @@ class PubServer(BaseHTTPRequestHandler):
# save git project names list
gitProjectsFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/gitprojects.txt'
if fields.get('gitProjects'):
try:
@ -6745,7 +6745,7 @@ class PubServer(BaseHTTPRequestHandler):
if '/' in nickname:
nickname = nickname.split('/')[0]
speakerFilename = \
acctDir(base_dir, nickname, domain) + '/speaker.json'
acct_dir(base_dir, nickname, domain) + '/speaker.json'
if not os.path.isfile(speakerFilename):
self._404()
return
@ -6857,7 +6857,7 @@ class PubServer(BaseHTTPRequestHandler):
if '/' in nickname:
nickname = nickname.split('/')[0]
if not nickname.startswith('rss.'):
accountDir = acctDir(self.server.base_dir, nickname, domain)
accountDir = acct_dir(self.server.base_dir, nickname, domain)
if os.path.isdir(accountDir):
if not self._establishSession("RSS request"):
return
@ -7025,7 +7025,7 @@ class PubServer(BaseHTTPRequestHandler):
if '/' in nickname:
nickname = nickname.split('/')[0]
if not nickname.startswith('rss.'):
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if os.path.isdir(accountDir):
if not self._establishSession("getRSS3Feed"):
self._404()
@ -9451,7 +9451,7 @@ class PubServer(BaseHTTPRequestHandler):
boxname = 'outbox'
# get the replies file
postDir = \
acctDir(base_dir, nickname, domain) + '/' + boxname
acct_dir(base_dir, nickname, domain) + '/' + boxname
postRepliesFilename = \
postDir + '/' + \
http_prefix + ':##' + domain_full + '#users#' + \
@ -9658,7 +9658,7 @@ class PubServer(BaseHTTPRequestHandler):
postSections = namedStatus.split('/')
nickname = postSections[0]
actorFilename = acctDir(base_dir, nickname, domain) + '.json'
actorFilename = acct_dir(base_dir, nickname, domain) + '.json'
if not os.path.isfile(actorFilename):
return False
@ -9766,7 +9766,7 @@ class PubServer(BaseHTTPRequestHandler):
if '/' in namedStatus:
postSections = namedStatus.split('/')
nickname = postSections[0]
actorFilename = acctDir(base_dir, nickname, domain) + '.json'
actorFilename = acct_dir(base_dir, nickname, domain) + '.json'
if os.path.isfile(actorFilename):
actor_json = loadJson(actorFilename)
if actor_json:
@ -9924,7 +9924,7 @@ class PubServer(BaseHTTPRequestHandler):
return False
postFilename = \
acctDir(base_dir, nickname, domain) + '/outbox/' + \
acct_dir(base_dir, nickname, domain) + '/outbox/' + \
http_prefix + ':##' + domain_full + '#users#' + nickname + \
'#statuses#' + statusNumber + '.json'
@ -10082,7 +10082,7 @@ class PubServer(BaseHTTPRequestHandler):
return False
postFilename = \
acctDir(base_dir, nickname, domain) + '/outbox/' + \
acct_dir(base_dir, nickname, domain) + '/outbox/' + \
http_prefix + ':##' + domain_full + '#users#' + nickname + \
'#statuses#' + statusNumber + '.json'
@ -12516,7 +12516,7 @@ class PubServer(BaseHTTPRequestHandler):
nickname = getNicknameFromActor(path)
savePersonQrcode(base_dir, nickname, domain, port)
qrFilename = \
acctDir(base_dir, nickname, domain) + '/qrcode.png'
acct_dir(base_dir, nickname, domain) + '/qrcode.png'
if os.path.isfile(qrFilename):
if self._etag_exists(qrFilename):
# The file has not changed
@ -12556,7 +12556,7 @@ class PubServer(BaseHTTPRequestHandler):
"""
nickname = getNicknameFromActor(path)
bannerFilename = \
acctDir(base_dir, nickname, domain) + '/search_banner.png'
acct_dir(base_dir, nickname, domain) + '/search_banner.png'
if not os.path.isfile(bannerFilename):
if os.path.isfile(base_dir + '/theme/default/search_banner.png'):
copyfile(base_dir + '/theme/default/search_banner.png',
@ -12604,7 +12604,8 @@ class PubServer(BaseHTTPRequestHandler):
self._404()
return True
bannerFilename = \
acctDir(base_dir, nickname, domain) + '/' + side + '_col_image.png'
acct_dir(base_dir, nickname, domain) + '/' + \
side + '_col_image.png'
if os.path.isfile(bannerFilename):
if self._etag_exists(bannerFilename):
# The file has not changed
@ -12813,7 +12814,7 @@ class PubServer(BaseHTTPRequestHandler):
elif avatarFile.startswith('right_col_image'):
avatarFile = 'right_col_image.' + avatarFileExt
avatarFilename = \
acctDir(base_dir, avatarNickname, domain) + '/' + avatarFile
acct_dir(base_dir, avatarNickname, domain) + '/' + avatarFile
if not os.path.isfile(avatarFilename):
originalExt = avatarFileExt
originalAvatarFile = avatarFile
@ -12826,7 +12827,7 @@ class PubServer(BaseHTTPRequestHandler):
originalAvatarFile.replace('.' + originalExt,
'.' + alt)
avatarFilename = \
acctDir(base_dir, avatarNickname, domain) + \
acct_dir(base_dir, avatarNickname, domain) + \
'/' + avatarFile
if os.path.isfile(avatarFilename):
altFound = True
@ -14373,8 +14374,8 @@ class PubServer(BaseHTTPRequestHandler):
self.path.endswith('/followingaccounts'):
nickname = getNicknameFromActor(self.path)
followingFilename = \
acctDir(self.server.base_dir,
nickname, self.server.domain) + '/following.txt'
acct_dir(self.server.base_dir,
nickname, self.server.domain) + '/following.txt'
if not os.path.isfile(followingFilename):
self._404()
return
@ -16484,8 +16485,8 @@ class PubServer(BaseHTTPRequestHandler):
# Note: a .temp extension is used here so that at no time is
# an image with metadata publicly exposed, even for a few mS
filenameBase = \
acctDir(self.server.base_dir,
nickname, self.server.domain) + '/upload.temp'
acct_dir(self.server.base_dir,
nickname, self.server.domain) + '/upload.temp'
filename, attachmentMediaType = \
saveMediaInFormPOST(mediaBytes, self.server.debug,
@ -16582,8 +16583,8 @@ class PubServer(BaseHTTPRequestHandler):
# since epoch when an attempt to post something was made.
# This is then used for active monthly users counts
lastUsedFilename = \
acctDir(self.server.base_dir,
nickname, self.server.domain) + '/.lastUsed'
acct_dir(self.server.base_dir,
nickname, self.server.domain) + '/.lastUsed'
try:
with open(lastUsedFilename, 'w+') as lastUsedFile:
lastUsedFile.write(str(int(time.time())))
@ -16748,8 +16749,8 @@ class PubServer(BaseHTTPRequestHandler):
post_json_object = loadJson(postFilename)
if post_json_object:
cachedFilename = \
acctDir(self.server.base_dir,
nickname, self.server.domain) + \
acct_dir(self.server.base_dir,
nickname, self.server.domain) + \
'/postcache/' + \
fields['postUrl'].replace('/', '#') + '.html'
if os.path.isfile(cachedFilename):

View File

@ -33,7 +33,7 @@ __module_group__ = "Security"
import os
from utils import loadJson
from utils import saveJson
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
@ -41,7 +41,7 @@ def E2EEremoveDevice(base_dir: str, nickname: str, domain: str,
deviceId: str) -> bool:
"""Unregisters a device for e2ee
"""
personDir = acctDir(base_dir, nickname, domain)
personDir = acct_dir(base_dir, nickname, domain)
deviceFilename = personDir + '/devices/' + deviceId + '.json'
if os.path.isfile(deviceFilename):
try:
@ -116,7 +116,7 @@ def E2EEaddDevice(base_dir: str, nickname: str, domain: str,
'?' in deviceId or '#' in deviceId or \
'.' in deviceId:
return False
personDir = acctDir(base_dir, nickname, domain)
personDir = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(personDir):
return False
if not os.path.isdir(personDir + '/devices'):
@ -143,7 +143,7 @@ def E2EEdevicesCollection(base_dir: str, nickname: str, domain: str,
domain_full: str, http_prefix: str) -> {}:
"""Returns a list of registered devices
"""
personDir = acctDir(base_dir, nickname, domain)
personDir = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(personDir):
return {}
personId = local_actor_url(http_prefix, nickname, domain_full)

View File

@ -76,7 +76,7 @@ from utils import getNicknameFromActor
from utils import followPerson
from utils import validNickname
from utils import getProtocolPrefixes
from utils import acctDir
from utils import acct_dir
from media import archiveMedia
from media import getAttachmentMediaType
from delete import sendDeleteViaServer
@ -1235,7 +1235,7 @@ if args.followerspending:
print('Specify a nickname with the --nickname option')
sys.exit()
accountsDir = acctDir(base_dir, args.nickname, domain)
accountsDir = acct_dir(base_dir, args.nickname, domain)
approveFollowsFilename = accountsDir + '/followrequests.txt'
approveCtr = 0
if os.path.isfile(approveFollowsFilename):
@ -2283,7 +2283,7 @@ if args.addaccount:
if len(args.password.strip()) < 8:
print('Password should be at least 8 characters')
sys.exit()
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if os.path.isdir(accountDir):
print('Account already exists')
sys.exit()
@ -2326,7 +2326,7 @@ if args.addgroup:
if len(args.password.strip()) < 8:
print('Password should be at least 8 characters')
sys.exit()
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if os.path.isdir(accountDir):
print('Group already exists')
sys.exit()
@ -2410,7 +2410,7 @@ if args.changepassword:
if len(newPassword) < 8:
print('Password should be at least 8 characters')
sys.exit()
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(accountDir):
print('Account ' + nickname + '@' + domain + ' not found')
sys.exit()

View File

@ -8,13 +8,13 @@ __status__ = "Production"
__module_group__ = "Moderation"
import os
from utils import acctDir
from utils import acct_dir
def addFilter(base_dir: str, nickname: str, domain: str, words: str) -> bool:
"""Adds a filter for particular words within the content of a incoming posts
"""
filtersFilename = acctDir(base_dir, nickname, domain) + '/filters.txt'
filtersFilename = acct_dir(base_dir, nickname, domain) + '/filters.txt'
if os.path.isfile(filtersFilename):
if words in open(filtersFilename).read():
return False
@ -50,7 +50,7 @@ def removeFilter(base_dir: str, nickname: str, domain: str,
words: str) -> bool:
"""Removes a word filter
"""
filtersFilename = acctDir(base_dir, nickname, domain) + '/filters.txt'
filtersFilename = acct_dir(base_dir, nickname, domain) + '/filters.txt'
if not os.path.isfile(filtersFilename):
return False
if words not in open(filtersFilename).read():
@ -154,7 +154,7 @@ def isFilteredBio(base_dir: str, nickname: str, domain: str, bio: str) -> bool:
return False
accountFiltersFilename = \
acctDir(base_dir, nickname, domain) + '/filters_bio.txt'
acct_dir(base_dir, nickname, domain) + '/filters_bio.txt'
return _isFilteredBase(accountFiltersFilename, bio)
@ -172,11 +172,11 @@ def isFiltered(base_dir: str, nickname: str, domain: str,
return False
# optionally remove retweets
removeTwitter = acctDir(base_dir, nickname, domain) + '/.removeTwitter'
removeTwitter = acct_dir(base_dir, nickname, domain) + '/.removeTwitter'
if os.path.isfile(removeTwitter):
if _isTwitterPost(content):
return True
accountFiltersFilename = \
acctDir(base_dir, nickname, domain) + '/filters.txt'
acct_dir(base_dir, nickname, domain) + '/filters.txt'
return _isFilteredBase(accountFiltersFilename, content)

View File

@ -27,7 +27,7 @@ from utils import loadJson
from utils import saveJson
from utils import isAccountDir
from utils import getUserPaths
from utils import acctDir
from utils import acct_dir
from utils import hasGroupType
from utils import local_actor_url
from acceptreject import createAccept
@ -221,7 +221,7 @@ def getFollowerDomains(base_dir: str, nickname: str, domain: str) -> []:
"""Returns a list of domains for followers
"""
domain = removeDomainPort(domain)
followersFile = acctDir(base_dir, nickname, domain) + '/followers.txt'
followersFile = acct_dir(base_dir, nickname, domain) + '/followers.txt'
if not os.path.isfile(followersFile):
return []
@ -254,7 +254,7 @@ def isFollowerOfPerson(base_dir: str, nickname: str, domain: str,
print('No followerNickname for ' + followerDomain)
return False
domain = removeDomainPort(domain)
followersFile = acctDir(base_dir, nickname, domain) + '/followers.txt'
followersFile = acct_dir(base_dir, nickname, domain) + '/followers.txt'
if not os.path.isfile(followersFile):
return False
handle = followerNickname + '@' + followerDomain
@ -749,7 +749,7 @@ def followedAccountAccepts(session, base_dir: str, http_prefix: str,
if removeFollowActivity:
# remove the follow request json
followActivityfilename = \
acctDir(base_dir, nicknameToFollow, domainToFollow) + \
acct_dir(base_dir, nicknameToFollow, domainToFollow) + \
'/requests/' + \
nickname + '@' + domain + '.follow'
if os.path.isfile(followActivityfilename):
@ -797,7 +797,7 @@ def followedAccountRejects(session, base_dir: str, http_prefix: str,
# get the json for the original follow request
followActivityfilename = \
acctDir(base_dir, nicknameToFollow, domainToFollow) + '/requests/' + \
acct_dir(base_dir, nicknameToFollow, domainToFollow) + '/requests/' + \
nickname + '@' + domain + '.follow'
followJson = loadJson(followActivityfilename)
if not followJson:
@ -886,7 +886,7 @@ def sendFollowRequest(session, base_dir: str,
# remove follow handle from unfollowed.txt
unfollowedFilename = \
acctDir(base_dir, nickname, domain) + '/unfollowed.txt'
acct_dir(base_dir, nickname, domain) + '/unfollowed.txt'
if os.path.isfile(unfollowedFilename):
if followHandle in open(unfollowedFilename).read():
unfollowedFile = None
@ -1432,7 +1432,7 @@ def followerApprovalActive(base_dir: str, nickname: str, domain: str) -> bool:
"""Returns true if the given account requires follower approval
"""
manuallyApprovesFollowers = False
actorFilename = acctDir(base_dir, nickname, domain) + '.json'
actorFilename = acct_dir(base_dir, nickname, domain) + '.json'
if os.path.isfile(actorFilename):
actor_json = loadJson(actorFilename)
if actor_json:

8
git.py
View File

@ -9,7 +9,7 @@ __module_group__ = "Profile Metadata"
import os
import html
from utils import acctDir
from utils import acct_dir
from utils import hasObjectStringType
@ -33,7 +33,7 @@ def _getGitProjectName(base_dir: str, nickname: str, domain: str,
holder wants to receive
"""
gitProjectsFilename = \
acctDir(base_dir, nickname, domain) + '/gitprojects.txt'
acct_dir(base_dir, nickname, domain) + '/gitprojects.txt'
if not os.path.isfile(gitProjectsFilename):
return None
subjectLineWords = subject.lower().split(' ')
@ -186,7 +186,7 @@ def receiveGitPatch(base_dir: str, nickname: str, domain: str,
patchLines = patchStr.split('\n')
patchFilename = None
projectDir = None
patchesDir = acctDir(base_dir, nickname, domain) + '/patches'
patchesDir = acct_dir(base_dir, nickname, domain) + '/patches'
# get the subject line and turn it into a filename
for line in patchLines:
if line.startswith('Subject:'):
@ -212,7 +212,7 @@ def receiveGitPatch(base_dir: str, nickname: str, domain: str,
with open(patchFilename, 'w+') as patchFile:
patchFile.write(patchStr)
patchNotifyFilename = \
acctDir(base_dir, nickname, domain) + '/.newPatchContent'
acct_dir(base_dir, nickname, domain) + '/.newPatchContent'
with open(patchNotifyFilename, 'w+') as patchFile:
patchFile.write(patchStr)
return True

View File

@ -17,7 +17,7 @@ from utils import loadJson
from utils import saveJson
from utils import locatePost
from utils import has_object_dict
from utils import acctDir
from utils import acct_dir
def _validUuid(testUuid: str, version: int):
@ -194,7 +194,7 @@ def getTodaysEvents(base_dir: str, nickname: str, domain: str,
dayNumber = currDayOfMonth
calendarFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/calendar/' + str(year) + '/' + str(monthNumber) + '.txt'
events = {}
if not os.path.isfile(calendarFilename):
@ -271,7 +271,7 @@ def dayEventsCheck(base_dir: str, nickname: str, domain: str,
dayNumber = currDate.day
calendarFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/calendar/' + str(year) + '/' + str(monthNumber) + '.txt'
if not os.path.isfile(calendarFilename):
return False
@ -324,7 +324,7 @@ def getThisWeeksEvents(base_dir: str, nickname: str, domain: str) -> {}:
monthNumber = now.month
calendarFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/calendar/' + str(year) + '/' + str(monthNumber) + '.txt'
events = {}
@ -389,7 +389,7 @@ def getCalendarEvents(base_dir: str, nickname: str, domain: str,
Event and Place activities
"""
calendarFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/calendar/' + str(year) + '/' + str(monthNumber) + '.txt'
events = {}
@ -454,7 +454,7 @@ def removeCalendarEvent(base_dir: str, nickname: str, domain: str,
"""Removes a calendar event
"""
calendarFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/calendar/' + str(year) + '/' + str(monthNumber) + '.txt'
if not os.path.isfile(calendarFilename):
return

View File

@ -29,7 +29,7 @@ from utils import getReplyIntervalHours
from utils import canReplyTo
from utils import getUserPaths
from utils import get_base_content_from_post
from utils import acctDir
from utils import acct_dir
from utils import removeDomainPort
from utils import getPortFromDomain
from utils import has_object_dict
@ -143,7 +143,7 @@ def _storeLastPostId(base_dir: str, nickname: str, domain: str,
postId = removeIdEnding(post_json_object['id'])
if not actor:
return
lastpostDir = acctDir(base_dir, nickname, domain) + '/lastpost'
lastpostDir = acct_dir(base_dir, nickname, domain) + '/lastpost'
if not os.path.isdir(lastpostDir):
os.mkdir(lastpostDir)
actorFilename = lastpostDir + '/' + actor.replace('/', '#')
@ -160,7 +160,7 @@ def _updateCachedHashtagSwarm(base_dir: str, nickname: str, domain: str,
"""Updates the hashtag swarm stored as a file
"""
cachedHashtagSwarmFilename = \
acctDir(base_dir, nickname, domain) + '/.hashtagSwarm'
acct_dir(base_dir, nickname, domain) + '/.hashtagSwarm'
saveSwarm = True
if os.path.isfile(cachedHashtagSwarmFilename):
lastModified = fileLastModified(cachedHashtagSwarmFilename)
@ -325,7 +325,7 @@ def validInbox(base_dir: str, nickname: str, domain: str) -> bool:
"""Checks whether files were correctly saved to the inbox
"""
domain = removeDomainPort(domain)
inboxDir = acctDir(base_dir, nickname, domain) + '/inbox'
inboxDir = acct_dir(base_dir, nickname, domain) + '/inbox'
if not os.path.isdir(inboxDir):
return True
for subdir, dirs, files in os.walk(inboxDir):
@ -347,7 +347,7 @@ def validInboxFilenames(base_dir: str, nickname: str, domain: str,
domain names within saved post filenames
"""
domain = removeDomainPort(domain)
inboxDir = acctDir(base_dir, nickname, domain) + '/inbox'
inboxDir = acct_dir(base_dir, nickname, domain) + '/inbox'
if not os.path.isdir(inboxDir):
print('Not an inbox directory: ' + inboxDir)
return True
@ -2771,7 +2771,7 @@ def _updateLastSeen(base_dir: str, handle: str, actor: str) -> None:
nickname = handle.split('@')[0]
domain = handle.split('@')[1]
domain = removeDomainPort(domain)
accountPath = acctDir(base_dir, nickname, domain)
accountPath = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(accountPath):
return
if not isFollowingActor(base_dir, nickname, domain, actor):
@ -2900,7 +2900,7 @@ def _isValidDM(base_dir: str, nickname: str, domain: str, port: int,
# check for the flag file which indicates to
# only receive DMs from people you are following
followDMsFilename = acctDir(base_dir, nickname, domain) + '/.followDMs'
followDMsFilename = acct_dir(base_dir, nickname, domain) + '/.followDMs'
if not os.path.isfile(followDMsFilename):
# dm index will be updated
updateIndexList.append('dm')
@ -2909,7 +2909,7 @@ def _isValidDM(base_dir: str, nickname: str, domain: str, port: int,
return True
# get the file containing following handles
followingFilename = acctDir(base_dir, nickname, domain) + '/following.txt'
followingFilename = acct_dir(base_dir, nickname, domain) + '/following.txt'
# who is sending a DM?
if not post_json_object.get('actor'):
return False
@ -4000,7 +4000,7 @@ def _receiveFollowRequest(session, base_dir: str, http_prefix: str,
print('Follow request does not require approval ' + approveHandle)
# update the followers
accountToBeFollowed = \
acctDir(base_dir, nicknameToFollow, domainToFollow)
acct_dir(base_dir, nicknameToFollow, domainToFollow)
if os.path.isdir(accountToBeFollowed):
followersFilename = accountToBeFollowed + '/followers.txt'

View File

@ -15,7 +15,7 @@ from utils import loadJson
from utils import removeDomainPort
from utils import getPortFromDomain
from utils import getUserPaths
from utils import acctDir
from utils import acct_dir
from threads import threadWithTrace
@ -31,7 +31,7 @@ def manualDenyFollowRequest(session, base_dir: str,
signing_priv_key_pem: str) -> None:
"""Manually deny a follow request
"""
accountsDir = acctDir(base_dir, nickname, domain)
accountsDir = acct_dir(base_dir, nickname, domain)
# has this handle already been rejected?
rejectedFollowsFilename = accountsDir + '/followrejects.txt'

View File

@ -10,7 +10,7 @@ __module_group__ = "API"
import os
from utils import loadJson
from utils import getConfigParam
from utils import acctDir
from utils import acct_dir
from metadata import metaDataInstance
@ -55,7 +55,7 @@ def _getMastoApiV1Account(base_dir: str, nickname: str, domain: str) -> {}:
blob/master/Using-the-API/API.md#account
Authorization has already been performed
"""
accountFilename = acctDir(base_dir, nickname, domain) + '.json'
accountFilename = acct_dir(base_dir, nickname, domain) + '.json'
if not os.path.isfile(accountFilename):
return {}
accountJson = loadJson(accountFilename)

View File

@ -22,7 +22,7 @@ from utils import getVideoExtensions
from utils import getAudioExtensions
from utils import getMediaExtensions
from utils import has_object_dict
from utils import acctDir
from utils import acct_dir
from shutil import copyfile
from shutil import rmtree
from shutil import move
@ -116,7 +116,7 @@ def _spoofMetaData(base_dir: str, nickname: str, domain: str,
return
# get the random seed used to generate a unique pattern for this account
decoySeedFilename = acctDir(base_dir, nickname, domain) + '/decoyseed'
decoySeedFilename = acct_dir(base_dir, nickname, domain) + '/decoyseed'
decoySeed = 63725
if os.path.isfile(decoySeedFilename):
with open(decoySeedFilename, 'r') as fp:

View File

@ -23,8 +23,8 @@ def _getStatusCount(base_dir: str) -> int:
for acct in dirs:
if not isAccountDir(acct):
continue
acctDir = os.path.join(accountsDir, acct + '/outbox')
for subdir2, dirs2, files2 in os.walk(acctDir):
acct_dir = os.path.join(accountsDir, acct + '/outbox')
for subdir2, dirs2, files2 in os.walk(acct_dir):
statusCtr += len(files2)
break
break

View File

@ -11,7 +11,7 @@ import os
from utils import isAccountDir
from utils import getNicknameFromActor
from utils import getDomainFromActor
from utils import acctDir
from utils import acct_dir
from utils import hasGroupType
from webfinger import webfingerHandle
from blocking import isBlocked
@ -28,7 +28,7 @@ def _moveFollowingHandlesForAccount(base_dir: str, nickname: str, domain: str,
"""Goes through all follows for an account and updates any that have moved
"""
ctr = 0
followingFilename = acctDir(base_dir, nickname, domain) + '/following.txt'
followingFilename = acct_dir(base_dir, nickname, domain) + '/following.txt'
if not os.path.isfile(followingFilename):
return ctr
with open(followingFilename, 'r') as f:
@ -116,7 +116,7 @@ def _updateMovedHandle(base_dir: str, nickname: str, domain: str,
debug, group_account, 'following.txt')
return ctr
followingFilename = acctDir(base_dir, nickname, domain) + '/following.txt'
followingFilename = acct_dir(base_dir, nickname, domain) + '/following.txt'
if os.path.isfile(followingFilename):
with open(followingFilename, 'r') as f:
followingHandles = f.readlines()
@ -125,7 +125,7 @@ def _updateMovedHandle(base_dir: str, nickname: str, domain: str,
handleLower = handle.lower()
refollowFilename = \
acctDir(base_dir, nickname, domain) + '/refollow.txt'
acct_dir(base_dir, nickname, domain) + '/refollow.txt'
# unfollow the old handle
with open(followingFilename, 'w+') as f:
@ -153,7 +153,7 @@ def _updateMovedHandle(base_dir: str, nickname: str, domain: str,
f.write(movedToHandle + '\n')
followersFilename = \
acctDir(base_dir, nickname, domain) + '/followers.txt'
acct_dir(base_dir, nickname, domain) + '/followers.txt'
if os.path.isfile(followersFilename):
with open(followersFilename, 'r') as f:
followerHandles = f.readlines()

View File

@ -31,7 +31,7 @@ from utils import isSuspended
from utils import containsInvalidChars
from utils import removeHtml
from utils import isAccountDir
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from blocking import isBlockedDomain
from blocking import isBlockedHashtag
@ -1019,7 +1019,7 @@ def _addAccountBlogsToNewswire(base_dir: str, nickname: str, domain: str,
# local blogs can potentially be moderated
moderatedFilename = \
acctDir(base_dir, nickname, domain) + '/.newswiremoderated'
acct_dir(base_dir, nickname, domain) + '/.newswiremoderated'
if os.path.isfile(moderatedFilename):
moderated = True

View File

@ -9,7 +9,7 @@ __module_group__ = "Calendar"
import os
from utils import removeDomainPort
from utils import acctDir
from utils import acct_dir
def _notifyOnPostArrival(base_dir: str, nickname: str, domain: str,
@ -21,7 +21,7 @@ def _notifyOnPostArrival(base_dir: str, nickname: str, domain: str,
"""
# check that a following file exists
domain = removeDomainPort(domain)
followingFilename = acctDir(base_dir, nickname, domain) + '/following.txt'
followingFilename = acct_dir(base_dir, nickname, domain) + '/following.txt'
if not os.path.isfile(followingFilename):
print("WARN: following.txt doesn't exist for " +
nickname + '@' + domain)
@ -34,7 +34,7 @@ def _notifyOnPostArrival(base_dir: str, nickname: str, domain: str,
return
notifyOnPostFilename = \
acctDir(base_dir, nickname, domain) + '/notifyOnPost.txt'
acct_dir(base_dir, nickname, domain) + '/notifyOnPost.txt'
# get the contents of the notifyOnPost file, which is
# a set of handles
@ -95,7 +95,7 @@ def notifyWhenPersonPosts(base_dir: str, nickname: str, domain: str,
if followingNickname == nickname and followingDomain == domain:
return False
notifyOnPostFilename = \
acctDir(base_dir, nickname, domain) + '/notifyOnPost.txt'
acct_dir(base_dir, nickname, domain) + '/notifyOnPost.txt'
handle = followingNickname + '@' + followingDomain
if not os.path.isfile(notifyOnPostFilename):
# create a new notifyOnPost file

View File

@ -27,7 +27,7 @@ from utils import dangerousMarkup
from utils import isFeaturedWriter
from utils import loadJson
from utils import saveJson
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from utils import hasActor
from blocking import isBlockedDomain
@ -119,7 +119,7 @@ def _outboxPersonReceiveUpdate(recentPostsCache: {},
return
updatedActorJson = message_json['object']
# load actor from file
actorFilename = acctDir(base_dir, nickname, domain) + '.json'
actorFilename = acct_dir(base_dir, nickname, domain) + '.json'
if not os.path.isfile(actorFilename):
print('actorFilename not found: ' + actorFilename)
return

View File

@ -55,7 +55,7 @@ from utils import getProtocolPrefixes
from utils import hasUsersPath
from utils import getImageExtensions
from utils import isImageFile
from utils import acctDir
from utils import acct_dir
from utils import getUserPaths
from utils import getGroupPaths
from utils import local_actor_url
@ -168,7 +168,7 @@ def _accountExists(base_dir: str, nickname: str, domain: str) -> bool:
"""Returns true if the given account exists
"""
domain = removeDomainPort(domain)
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
return os.path.isdir(accountDir) or \
os.path.isdir(base_dir + '/deactivated/' + nickname + '@' + domain)
@ -583,7 +583,7 @@ def savePersonQrcode(base_dir: str,
"""Saves a qrcode image for the handle of the person
This helps to transfer onion or i2p handles to a mobile device
"""
qrcodeFilename = acctDir(base_dir, nickname, domain) + '/qrcode.png'
qrcodeFilename = acct_dir(base_dir, nickname, domain) + '/qrcode.png'
if os.path.isfile(qrcodeFilename):
return
handle = getFullDomain('@' + nickname + '@' + domain, port)
@ -635,12 +635,13 @@ def createPerson(base_dir: str, nickname: str, domain: str, port: int,
if not os.path.isdir(base_dir + '/accounts'):
os.mkdir(base_dir + '/accounts')
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(accountDir):
os.mkdir(accountDir)
if manual_follower_approval:
followDMsFilename = acctDir(base_dir, nickname, domain) + '/.followDMs'
followDMsFilename = \
acct_dir(base_dir, nickname, domain) + '/.followDMs'
try:
with open(followDMsFilename, 'w+') as fFile:
fFile.write('\n')
@ -650,7 +651,7 @@ def createPerson(base_dir: str, nickname: str, domain: str, port: int,
# notify when posts are liked
if nickname != 'news':
notifyLikesFilename = \
acctDir(base_dir, nickname, domain) + '/.notifyLikes'
acct_dir(base_dir, nickname, domain) + '/.notifyLikes'
try:
with open(notifyLikesFilename, 'w+') as nFile:
nFile.write('\n')
@ -660,7 +661,7 @@ def createPerson(base_dir: str, nickname: str, domain: str, port: int,
# notify when posts have emoji reactions
if nickname != 'news':
notifyReactionsFilename = \
acctDir(base_dir, nickname, domain) + '/.notifyReactions'
acct_dir(base_dir, nickname, domain) + '/.notifyReactions'
try:
with open(notifyReactionsFilename, 'w+') as nFile:
nFile.write('\n')
@ -673,13 +674,13 @@ def createPerson(base_dir: str, nickname: str, domain: str, port: int,
if nickname != 'news':
if os.path.isfile(base_dir + '/img/default-avatar.png'):
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
copyfile(base_dir + '/img/default-avatar.png',
accountDir + '/avatar.png')
else:
newsAvatar = base_dir + '/theme/' + theme + '/icons/avatar_news.png'
if os.path.isfile(newsAvatar):
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
copyfile(newsAvatar, accountDir + '/avatar.png')
defaultProfileImageFilename = base_dir + '/theme/default/image.png'
@ -688,7 +689,7 @@ def createPerson(base_dir: str, nickname: str, domain: str, port: int,
defaultProfileImageFilename = \
base_dir + '/theme/' + theme + '/image.png'
if os.path.isfile(defaultProfileImageFilename):
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
copyfile(defaultProfileImageFilename, accountDir + '/image.png')
defaultBannerFilename = base_dir + '/theme/default/banner.png'
if theme:
@ -696,7 +697,7 @@ def createPerson(base_dir: str, nickname: str, domain: str, port: int,
defaultBannerFilename = \
base_dir + '/theme/' + theme + '/banner.png'
if os.path.isfile(defaultBannerFilename):
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
copyfile(defaultBannerFilename, accountDir + '/banner.png')
if nickname != 'news' and remainingConfigExists:
registrationsRemaining -= 1
@ -1074,13 +1075,13 @@ def suspendAccount(base_dir: str, nickname: str, domain: str) -> None:
if moderator.strip('\n').strip('\r') == nickname:
return
saltFilename = acctDir(base_dir, nickname, domain) + '/.salt'
saltFilename = acct_dir(base_dir, nickname, domain) + '/.salt'
if os.path.isfile(saltFilename):
try:
os.remove(saltFilename)
except OSError:
print('EX: suspendAccount unable to delete ' + saltFilename)
tokenFilename = acctDir(base_dir, nickname, domain) + '/.token'
tokenFilename = acct_dir(base_dir, nickname, domain) + '/.token'
if os.path.isfile(tokenFilename):
try:
os.remove(tokenFilename)
@ -1304,7 +1305,7 @@ def isPersonSnoozed(base_dir: str, nickname: str, domain: str,
snoozeActor: str) -> bool:
"""Returns true if the given actor is snoozed
"""
snoozedFilename = acctDir(base_dir, nickname, domain) + '/snoozed.txt'
snoozedFilename = acct_dir(base_dir, nickname, domain) + '/snoozed.txt'
if not os.path.isfile(snoozedFilename):
return False
if snoozeActor + ' ' not in open(snoozedFilename).read():
@ -1347,7 +1348,7 @@ def personSnooze(base_dir: str, nickname: str, domain: str,
snoozeActor: str) -> None:
"""Temporarily ignores the given actor
"""
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(accountDir):
print('ERROR: unknown account ' + accountDir)
return
@ -1367,7 +1368,7 @@ def personUnsnooze(base_dir: str, nickname: str, domain: str,
snoozeActor: str) -> None:
"""Undoes a temporarily ignore of the given actor
"""
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(accountDir):
print('ERROR: unknown account ' + accountDir)
return
@ -1402,7 +1403,7 @@ def setPersonNotes(base_dir: str, nickname: str, domain: str,
return False
if handle.startswith('@'):
handle = handle[1:]
notesDir = acctDir(base_dir, nickname, domain) + '/notes'
notesDir = acct_dir(base_dir, nickname, domain) + '/notes'
if not os.path.isdir(notesDir):
os.mkdir(notesDir)
notesFilename = notesDir + '/' + handle + '.txt'

View File

@ -8,7 +8,7 @@ __status__ = "Production"
__module_group__ = "Core"
import os
from utils import acctDir
from utils import acct_dir
def setPetName(base_dir: str, nickname: str, domain: str,
@ -23,7 +23,7 @@ def setPetName(base_dir: str, nickname: str, domain: str,
handle = handle[1:]
if petname.startswith('@'):
petname = petname[1:]
petnamesFilename = acctDir(base_dir, nickname, domain) + '/petnames.txt'
petnamesFilename = acct_dir(base_dir, nickname, domain) + '/petnames.txt'
entry = petname + ' ' + handle + '\n'
# does this entry already exist?
@ -75,7 +75,7 @@ def getPetName(base_dir: str, nickname: str, domain: str,
return ''
if handle.startswith('@'):
handle = handle[1:]
petnamesFilename = acctDir(base_dir, nickname, domain) + '/petnames.txt'
petnamesFilename = acct_dir(base_dir, nickname, domain) + '/petnames.txt'
if not os.path.isfile(petnamesFilename):
return ''
@ -102,7 +102,7 @@ def _getPetNameHandle(base_dir: str, nickname: str, domain: str,
"""
if petname.startswith('@'):
petname = petname[1:]
petnamesFilename = acctDir(base_dir, nickname, domain) + '/petnames.txt'
petnamesFilename = acct_dir(base_dir, nickname, domain) + '/petnames.txt'
if not os.path.isfile(petnamesFilename):
return ''

View File

@ -67,7 +67,7 @@ from utils import locateNewsArrival
from utils import votesOnNewswireItem
from utils import removeHtml
from utils import dangerousMarkup
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from media import attachMedia
from media import replaceYouTube
@ -1009,7 +1009,7 @@ def _loadAutoCW(base_dir: str, nickname: str, domain: str) -> []:
"""Loads automatic CWs file and returns a list containing
the lines of the file
"""
filename = acctDir(base_dir, nickname, domain) + '/autocw.txt'
filename = acct_dir(base_dir, nickname, domain) + '/autocw.txt'
if not os.path.isfile(filename):
return []
with open(filename, 'r') as f:
@ -1638,7 +1638,7 @@ def pinPost(base_dir: str, nickname: str, domain: str,
pinnedContent: str, followersOnly: bool) -> None:
"""Pins the given post Id to the profile of then given account
"""
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
pinnedFilename = accountDir + '/pinToProfile.txt'
try:
with open(pinnedFilename, 'w+') as pinFile:
@ -1650,7 +1650,7 @@ def pinPost(base_dir: str, nickname: str, domain: str,
def undoPinnedPost(base_dir: str, nickname: str, domain: str) -> None:
"""Removes pinned content for then given account
"""
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
pinnedFilename = accountDir + '/pinToProfile.txt'
if os.path.isfile(pinnedFilename):
try:
@ -1664,7 +1664,7 @@ def getPinnedPostAsJson(base_dir: str, http_prefix: str,
domain_full: str, system_language: str) -> {}:
"""Returns the pinned profile post as json
"""
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
pinnedFilename = accountDir + '/pinToProfile.txt'
pinnedPostJson = {}
actor = local_actor_url(http_prefix, nickname, domain_full)
@ -1728,7 +1728,7 @@ def regenerateIndexForBox(base_dir: str,
"""Generates an index for the given box if it doesn't exist
Used by unit tests to artificially create an index
"""
boxDir = acctDir(base_dir, nickname, domain) + '/' + boxName
boxDir = acct_dir(base_dir, nickname, domain) + '/' + boxName
boxIndexFilename = boxDir + '.index'
if not os.path.isdir(boxDir):
@ -1810,7 +1810,7 @@ def _appendCitationsToBlogPost(base_dir: str,
"""
# append citations tags, stored in a file
citationsFilename = \
acctDir(base_dir, nickname, domain) + '/.citations.txt'
acct_dir(base_dir, nickname, domain) + '/.citations.txt'
if not os.path.isfile(citationsFilename):
return
citationsSeparator = '#####'
@ -3724,7 +3724,7 @@ def _createBoxIndexed(recentPostsCache: {},
postUrlsInBox = []
indexFilename = \
acctDir(base_dir, timelineNickname, originalDomain) + \
acct_dir(base_dir, timelineNickname, originalDomain) + \
'/' + indexBoxName + '.index'
totalPostsCount = 0
postsAddedToTimeline = 0
@ -4444,7 +4444,7 @@ def populateRepliesJson(base_dir: str, nickname: str, domain: str,
for boxname in repliesBoxes:
messageId2 = messageId.replace('\n', '').replace('\r', '')
searchFilename = \
acctDir(base_dir, nickname, domain) + '/' + \
acct_dir(base_dir, nickname, domain) + '/' + \
boxname + '/' + \
messageId2.replace('/', '#') + '.json'
if os.path.isfile(searchFilename):
@ -4747,7 +4747,7 @@ def isMuted(base_dir: str, nickname: str, domain: str, postId: str,
"""
if conversationId:
convMutedFilename = \
acctDir(base_dir, nickname, domain) + '/conversation/' + \
acct_dir(base_dir, nickname, domain) + '/conversation/' + \
conversationId.replace('/', '#') + '.muted'
if os.path.isfile(convMutedFilename):
return True
@ -5108,7 +5108,7 @@ def postIsMuted(base_dir: str, nickname: str, domain: str,
return isMuted
isMuted = False
postDir = acctDir(base_dir, nickname, domain)
postDir = acct_dir(base_dir, nickname, domain)
muteFilename = \
postDir + '/inbox/' + messageId.replace('/', '#') + '.json.muted'
if os.path.isfile(muteFilename):
@ -5206,7 +5206,7 @@ def editedPostFilename(base_dir: str, nickname: str, domain: str,
return ''
actor = post_json_object['object']['attributedTo']
actorFilename = \
acctDir(base_dir, nickname, domain) + '/lastpost/' + \
acct_dir(base_dir, nickname, domain) + '/lastpost/' + \
actor.replace('/', '#')
if not os.path.isfile(actorFilename):
return ''

View File

@ -12,7 +12,7 @@ from utils import loadJson
from utils import saveJson
from utils import getStatusNumber
from utils import removeDomainPort
from utils import acctDir
from utils import acct_dir
def _clearRoleStatus(base_dir: str, role: str) -> None:
@ -99,7 +99,7 @@ def _addRole(base_dir: str, nickname: str, domain: str,
f.write(roleNickname + '\n')
else:
with open(roleFile, 'w+') as f:
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if os.path.isdir(accountDir):
f.write(nickname + '\n')
@ -231,7 +231,7 @@ def setRole(base_dir: str, nickname: str, domain: str,
# avoid giant strings
if len(role) > 128:
return False
actorFilename = acctDir(base_dir, nickname, domain) + '.json'
actorFilename = acct_dir(base_dir, nickname, domain) + '.json'
if not os.path.isfile(actorFilename):
return False

View File

@ -14,7 +14,7 @@ from utils import has_object_dict
from utils import getStatusNumber
from utils import loadJson
from utils import isAccountDir
from utils import acctDir
from utils import acct_dir
from outbox import postMessageToOutbox
@ -202,7 +202,7 @@ def removeScheduledPosts(base_dir: str, nickname: str, domain: str) -> None:
"""
# remove the index
scheduleIndexFilename = \
acctDir(base_dir, nickname, domain) + '/schedule.index'
acct_dir(base_dir, nickname, domain) + '/schedule.index'
if os.path.isfile(scheduleIndexFilename):
try:
os.remove(scheduleIndexFilename)
@ -210,7 +210,7 @@ def removeScheduledPosts(base_dir: str, nickname: str, domain: str) -> None:
print('EX: removeScheduledPosts unable to delete ' +
scheduleIndexFilename)
# remove the scheduled posts
scheduledDir = acctDir(base_dir, nickname, domain) + '/scheduled'
scheduledDir = acct_dir(base_dir, nickname, domain) + '/scheduled'
if not os.path.isdir(scheduledDir):
return
for scheduledPostFilename in os.listdir(scheduledDir):

View File

@ -33,7 +33,7 @@ from utils import saveJson
from utils import getImageExtensions
from utils import removeDomainPort
from utils import isAccountDir
from utils import acctDir
from utils import acct_dir
from utils import isfloat
from utils import getCategoryTypes
from utils import getSharesFilesList
@ -125,7 +125,7 @@ def removeSharedItem(base_dir: str, nickname: str, domain: str,
"""Removes a share for a person
"""
sharesFilename = \
acctDir(base_dir, nickname, domain) + '/' + sharesFileType + '.json'
acct_dir(base_dir, nickname, domain) + '/' + sharesFileType + '.json'
if not os.path.isfile(sharesFilename):
print('ERROR: remove shared item, missing ' +
sharesFileType + '.json ' + sharesFilename)
@ -317,7 +317,7 @@ def addShare(base_dir: str,
print('Shared item was filtered due to content')
return
sharesFilename = \
acctDir(base_dir, nickname, domain) + '/' + sharesFileType + '.json'
acct_dir(base_dir, nickname, domain) + '/' + sharesFileType + '.json'
sharesJson = {}
if os.path.isfile(sharesFilename):
sharesJson = loadJson(sharesFilename, 1, 2)
@ -338,7 +338,7 @@ def addShare(base_dir: str,
moveImage = False
if not imageFilename:
sharesImageFilename = \
acctDir(base_dir, nickname, domain) + '/upload'
acct_dir(base_dir, nickname, domain) + '/upload'
formats = getImageExtensions()
for ext in formats:
if os.path.isfile(sharesImageFilename + '.' + ext):
@ -490,7 +490,7 @@ def getSharesFeedForPerson(base_dir: str,
handleDomain = removeDomainPort(domain)
sharesFilename = \
acctDir(base_dir, nickname, handleDomain) + '/' + \
acct_dir(base_dir, nickname, handleDomain) + '/' + \
sharesFileType + '.json'
if headerOnly:
@ -1192,7 +1192,7 @@ def sharesCatalogAccountEndpoint(base_dir: str, http_prefix: str,
currDateStr = currDate.strftime("%Y-%m-%d")
sharesFilename = \
acctDir(base_dir, nickname, domain) + '/' + sharesFileType + '.json'
acct_dir(base_dir, nickname, domain) + '/' + sharesFileType + '.json'
if not os.path.isfile(sharesFilename):
if debug:
print(sharesFileType + '.json file not found: ' + sharesFilename)
@ -1286,7 +1286,7 @@ def sharesCatalogEndpoint(base_dir: str, http_prefix: str,
owner = local_actor_url(http_prefix, nickname, domain_full)
sharesFilename = \
acctDir(base_dir, nickname, domain) + '/' + \
acct_dir(base_dir, nickname, domain) + '/' + \
sharesFileType + '.json'
if not os.path.isfile(sharesFilename):
continue

View File

@ -19,7 +19,7 @@ from utils import getDomainFromActor
from utils import loadJson
from utils import getOccupationSkills
from utils import setOccupationSkillsList
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from utils import hasActor
@ -119,7 +119,7 @@ def setSkillLevel(base_dir: str, nickname: str, domain: str,
"""
if skillLevelPercent < 0 or skillLevelPercent > 100:
return False
actorFilename = acctDir(base_dir, nickname, domain) + '.json'
actorFilename = acct_dir(base_dir, nickname, domain) + '.json'
if not os.path.isfile(actorFilename):
return False
@ -131,7 +131,7 @@ def setSkillLevel(base_dir: str, nickname: str, domain: str,
def getSkills(base_dir: str, nickname: str, domain: str) -> []:
"""Returns the skills for a given person
"""
actorFilename = acctDir(base_dir, nickname, domain) + '.json'
actorFilename = acct_dir(base_dir, nickname, domain) + '.json'
if not os.path.isfile(actorFilename):
return False

View File

@ -24,7 +24,7 @@ from utils import loadJson
from utils import saveJson
from utils import isPGPEncrypted
from utils import has_object_dict
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from content import htmlReplaceQuoteMarks
@ -359,7 +359,7 @@ def getSSMLbox(base_dir: str, path: str,
if '/' in nickname:
nickname = nickname.split('/')[0]
speakerFilename = \
acctDir(base_dir, nickname, domain) + '/speaker.json'
acct_dir(base_dir, nickname, domain) + '/speaker.json'
if not os.path.isfile(speakerFilename):
return None
speakerJson = loadJson(speakerFilename)
@ -495,7 +495,7 @@ def _postToSpeakerJson(base_dir: str, http_prefix: str,
followRequestsExist = False
followRequestsList = []
accountsDir = acctDir(base_dir, nickname, domain_full)
accountsDir = acct_dir(base_dir, nickname, domain_full)
approveFollowsFilename = accountsDir + '/followrequests.txt'
if os.path.isfile(approveFollowsFilename):
with open(approveFollowsFilename, 'r') as fp:
@ -548,5 +548,5 @@ def updateSpeaker(base_dir: str, http_prefix: str,
post_json_object, person_cache,
translate, announcingActor,
theme_name)
speakerFilename = acctDir(base_dir, nickname, domain) + '/speaker.json'
speakerFilename = acct_dir(base_dir, nickname, domain) + '/speaker.json'
saveJson(speakerJson, speakerFilename)

View File

@ -84,7 +84,7 @@ from utils import getStatusNumber
from utils import getFollowersOfPerson
from utils import removeHtml
from utils import dangerousMarkup
from utils import acctDir
from utils import acct_dir
from pgp import extractPGPPublicKey
from pgp import pgpPublicKeyUpload
from utils import containsPGPPublicKey
@ -2618,7 +2618,7 @@ def _testFollows(base_dir: str) -> None:
followPerson(base_dir, nickname, domain, 'giraffe', 'trees.com',
federation_list, False, False)
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
f = open(accountDir + '/following.txt', 'r')
domainFound = False
for followingDomain in f:
@ -2654,7 +2654,7 @@ def _testFollows(base_dir: str) -> None:
followerOfPerson(base_dir, nickname, domain, 'giraffe', 'trees.com',
federation_list, False, False)
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
f = open(accountDir + '/followers.txt', 'r')
for followerDomain in f:
testDomain = followerDomain.split('@')[1]

View File

@ -13,7 +13,7 @@ from utils import loadJson
from utils import saveJson
from utils import getImageExtensions
from utils import copytree
from utils import acctDir
from utils import acct_dir
from utils import dangerousSVG
from utils import local_actor_url
from shutil import copyfile
@ -799,7 +799,7 @@ def setNewsAvatar(base_dir: str, name: str,
print('EX: setNewsAvatar unable to delete ' + filename)
if os.path.isdir(base_dir + '/cache/avatars'):
copyfile(newFilename, filename)
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
copyfile(newFilename, accountDir + '/avatar.png')

View File

@ -118,7 +118,7 @@ def get_base_content_from_post(post_json_object: {},
return this_post_json['content']
def acctDir(base_dir: str, nickname: str, domain: str) -> str:
def acct_dir(base_dir: str, nickname: str, domain: str) -> str:
return base_dir + '/accounts/' + nickname + '@' + domain
@ -127,7 +127,7 @@ def isFeaturedWriter(base_dir: str, nickname: str, domain: str) -> bool:
timeline on news instances?
"""
featuresBlockedFilename = \
acctDir(base_dir, nickname, domain) + '/.nofeatures'
acct_dir(base_dir, nickname, domain) + '/.nofeatures'
return not os.path.isfile(featuresBlockedFilename)
@ -259,7 +259,7 @@ def isDormant(base_dir: str, nickname: str, domain: str, actor: str,
"""Is the given followed actor dormant, from the standpoint
of the given account
"""
lastSeenFilename = acctDir(base_dir, nickname, domain) + \
lastSeenFilename = acct_dir(base_dir, nickname, domain) + \
'/lastseen/' + actor.replace('/', '#') + '.txt'
if not os.path.isfile(lastSeenFilename):
@ -550,7 +550,7 @@ def getFollowersList(base_dir: str,
followFile='following.txt') -> []:
"""Returns a list of followers for the given account
"""
filename = acctDir(base_dir, nickname, domain) + '/' + followFile
filename = acct_dir(base_dir, nickname, domain) + '/' + followFile
if not os.path.isfile(filename):
return []
@ -1105,7 +1105,7 @@ def _setDefaultPetName(base_dir: str, nickname: str, domain: str,
This helps especially when using onion or i2p address
"""
domain = removeDomainPort(domain)
userPath = acctDir(base_dir, nickname, domain)
userPath = acct_dir(base_dir, nickname, domain)
petnamesFilename = userPath + '/petnames.txt'
petnameLookupEntry = followNickname + ' ' + \
@ -1340,7 +1340,7 @@ def locatePost(base_dir: str, nickname: str, domain: str,
# search boxes
boxes = ('inbox', 'outbox', 'tlblogs')
accountDir = acctDir(base_dir, nickname, domain) + '/'
accountDir = acct_dir(base_dir, nickname, domain) + '/'
for boxName in boxes:
postFilename = accountDir + boxName + '/' + postUrl
if os.path.isfile(postFilename):
@ -1384,7 +1384,7 @@ def getReplyIntervalHours(base_dir: str, nickname: str, domain: str,
during which replies are allowed
"""
replyIntervalFilename = \
acctDir(base_dir, nickname, domain) + '/.replyIntervalHours'
acct_dir(base_dir, nickname, domain) + '/.replyIntervalHours'
if os.path.isfile(replyIntervalFilename):
with open(replyIntervalFilename, 'r') as fp:
hoursStr = fp.read()
@ -1400,7 +1400,7 @@ def setReplyIntervalHours(base_dir: str, nickname: str, domain: str,
during which replies are allowed
"""
replyIntervalFilename = \
acctDir(base_dir, nickname, domain) + '/.replyIntervalHours'
acct_dir(base_dir, nickname, domain) + '/.replyIntervalHours'
with open(replyIntervalFilename, 'w+') as fp:
try:
fp.write(str(replyIntervalHours))
@ -1513,7 +1513,8 @@ def _isReplyToBlogPost(base_dir: str, nickname: str, domain: str,
return False
if not isinstance(post_json_object['object']['inReplyTo'], str):
return False
blogsIndexFilename = acctDir(base_dir, nickname, domain) + '/tlblogs.index'
blogsIndexFilename = \
acct_dir(base_dir, nickname, domain) + '/tlblogs.index'
if not os.path.isfile(blogsIndexFilename):
return False
postId = removeIdEnding(post_json_object['object']['inReplyTo'])
@ -1555,7 +1556,7 @@ def _isBookmarked(base_dir: str, nickname: str, domain: str,
"""Returns True if the given post is bookmarked
"""
bookmarksIndexFilename = \
acctDir(base_dir, nickname, domain) + '/bookmarks.index'
acct_dir(base_dir, nickname, domain) + '/bookmarks.index'
if os.path.isfile(bookmarksIndexFilename):
bookmarkIndex = postFilename.split('/')[-1] + '\n'
if bookmarkIndex in open(bookmarksIndexFilename).read():
@ -1675,7 +1676,7 @@ def _deleteConversationPost(base_dir: str, nickname: str, domain: str,
return False
if not post_json_object['object'].get('id'):
return False
conversationDir = acctDir(base_dir, nickname, domain) + '/conversation'
conversationDir = acct_dir(base_dir, nickname, domain) + '/conversation'
conversationId = post_json_object['object']['conversation']
conversationId = conversationId.replace('/', '#')
postId = post_json_object['object']['id']
@ -1983,7 +1984,7 @@ def copytree(src: str, dst: str, symlinks: str = False, ignore: bool = None):
def getCachedPostDirectory(base_dir: str, nickname: str, domain: str) -> str:
"""Returns the directory where the html post cache exists
"""
htmlPostCacheDir = acctDir(base_dir, nickname, domain) + '/postcache'
htmlPostCacheDir = acct_dir(base_dir, nickname, domain) + '/postcache'
return htmlPostCacheDir
@ -2101,10 +2102,10 @@ def _searchVirtualBoxPosts(base_dir: str, nickname: str, domain: str,
"""Searches through a virtual box, which is typically an index on the inbox
"""
indexFilename = \
acctDir(base_dir, nickname, domain) + '/' + boxName + '.index'
acct_dir(base_dir, nickname, domain) + '/' + boxName + '.index'
if boxName == 'bookmarks':
boxName = 'inbox'
path = acctDir(base_dir, nickname, domain) + '/' + boxName
path = acct_dir(base_dir, nickname, domain) + '/' + boxName
if not os.path.isdir(path):
return []
@ -2153,7 +2154,7 @@ def searchBoxPosts(base_dir: str, nickname: str, domain: str,
"""Search your posts and return a list of the filenames
containing matching strings
"""
path = acctDir(base_dir, nickname, domain) + '/' + boxName
path = acct_dir(base_dir, nickname, domain) + '/' + boxName
# is this a virtual box, such as direct messages?
if not os.path.isdir(path):
if os.path.isfile(path + '.index'):
@ -2707,7 +2708,7 @@ def dmAllowedFromDomain(base_dir: str,
a few particular instances that you trust
"""
dmAllowedInstancesFilename = \
acctDir(base_dir, nickname, domain) + '/dmAllowedInstances.txt'
acct_dir(base_dir, nickname, domain) + '/dmAllowedInstances.txt'
if not os.path.isfile(dmAllowedInstancesFilename):
return False
if sendingActorDomain + '\n' in open(dmAllowedInstancesFilename).read():
@ -3031,7 +3032,7 @@ def isGroupActor(base_dir: str, actor: str, person_cache: {},
def isGroupAccount(base_dir: str, nickname: str, domain: str) -> bool:
"""Returns true if the given account is a group
"""
accountFilename = acctDir(base_dir, nickname, domain) + '.json'
accountFilename = acct_dir(base_dir, nickname, domain) + '.json'
if not os.path.isfile(accountFilename):
return False
if '"type": "Group"' in open(accountFilename).read():

View File

@ -11,7 +11,7 @@ import os
from utils import isAccountDir
from utils import loadJson
from utils import getConfigParam
from utils import acctDir
from utils import acct_dir
from webapp_utils import htmlHeaderWithExternalStyle
from webapp_utils import htmlFooter
@ -47,7 +47,7 @@ def htmlAccessKeys(cssCache: {}, base_dir: str,
"""Show and edit key shortcuts
"""
accessKeysFilename = \
acctDir(base_dir, nickname, domain) + '/accessKeys.json'
acct_dir(base_dir, nickname, domain) + '/accessKeys.json'
if os.path.isfile(accessKeysFilename):
accessKeysFromFile = loadJson(accessKeysFilename)
if accessKeysFromFile:

View File

@ -19,7 +19,7 @@ from utils import loadJson
from utils import weekDayOfMonthStart
from utils import getAltPath
from utils import removeDomainPort
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from utils import replaceUsersWithAt
from happening import getTodaysEvents
@ -103,7 +103,7 @@ def _htmlCalendarDay(person_cache: {}, cssCache: {}, translate: {},
monthName: str, actor: str) -> str:
"""Show a day within the calendar
"""
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
calendarFile = accountDir + '/.newCalendar'
if os.path.isfile(calendarFile):
try:

View File

@ -21,7 +21,7 @@ from utils import getNicknameFromActor
from utils import isEditor
from utils import getConfigParam
from utils import removeDomainPort
from utils import acctDir
from utils import acct_dir
from posts import isModerator
from newswire import getNewswireFaviconUrl
from webapp_utils import getRightImageFile
@ -343,7 +343,7 @@ def htmlCitations(base_dir: str, nickname: str, domain: str,
# create a list of dates for citations
# these can then be used to re-select checkboxes later
citationsFilename = \
acctDir(base_dir, nickname, domain) + '/.citations.txt'
acct_dir(base_dir, nickname, domain) + '/.citations.txt'
citationsSelected = []
if os.path.isfile(citationsFilename):
citationsSeparator = '#####'

View File

@ -16,7 +16,7 @@ from utils import locatePost
from utils import loadJson
from utils import getConfigParam
from utils import getAltPath
from utils import acctDir
from utils import acct_dir
from webapp_utils import setCustomBackground
from webapp_utils import htmlHeaderWithExternalStyle
from webapp_utils import htmlFooter
@ -116,7 +116,7 @@ def htmlConfirmRemoveSharedItem(cssCache: {}, translate: {}, base_dir: str,
domain, port = getDomainFromActor(actor)
domain_full = getFullDomain(domain, port)
sharesFile = \
acctDir(base_dir, nickname, domain) + '/' + sharesFileType + '.json'
acct_dir(base_dir, nickname, domain) + '/' + sharesFileType + '.json'
if not os.path.isfile(sharesFile):
print('ERROR: no ' + sharesFileType + ' file ' + sharesFile)
return None

View File

@ -14,7 +14,7 @@ from utils import getNicknameFromActor
from utils import getDomainFromActor
from utils import getMediaFormats
from utils import getConfigParam
from utils import acctDir
from utils import acct_dir
from utils import getCurrencies
from utils import getCategoryTypes
from webapp_utils import getBannerFile
@ -32,7 +32,7 @@ def _htmlFollowingDataList(base_dir: str, nickname: str,
"""
listStr = '<datalist id="followingHandles">\n'
followingFilename = \
acctDir(base_dir, nickname, domain) + '/following.txt'
acct_dir(base_dir, nickname, domain) + '/following.txt'
msg = None
if os.path.isfile(followingFilename):
with open(followingFilename, 'r') as followingFile:
@ -43,7 +43,7 @@ def _htmlFollowingDataList(base_dir: str, nickname: str,
if msg:
# include petnames
petnamesFilename = \
acctDir(base_dir, nickname, domain) + '/petnames.txt'
acct_dir(base_dir, nickname, domain) + '/petnames.txt'
if os.path.isfile(petnamesFilename):
followingList = []
with open(petnamesFilename, 'r') as petnamesFile:
@ -572,7 +572,7 @@ def htmlNewPost(cssCache: {}, media_instance: bool, translate: {},
citationsStr = ''
if endpoint == 'newblog':
citationsFilename = \
acctDir(base_dir, nickname, domain) + '/.citations.txt'
acct_dir(base_dir, nickname, domain) + '/.citations.txt'
if os.path.isfile(citationsFilename):
citationsStr = '<div class="container">\n'
citationsStr += '<p><label class="labels">' + \

View File

@ -10,7 +10,7 @@ __module_group__ = "Timeline"
import os
import time
from utils import acctDir
from utils import acct_dir
from datetime import datetime
from datetime import timedelta
from happening import dayEventsCheck
@ -93,7 +93,7 @@ def headerButtonsTimeline(defaultTimeline: str,
'</span></button></a>'
repliesIndexFilename = \
acctDir(base_dir, nickname, domain) + '/tlreplies.index'
acct_dir(base_dir, nickname, domain) + '/tlreplies.index'
if os.path.isfile(repliesIndexFilename):
tlStr += \
'<a href="' + usersPath + '/tlreplies" tabindex="-1">' + \

View File

@ -8,14 +8,14 @@ __status__ = "Production"
__module_group__ = "Timeline"
import os
from utils import acctDir
from utils import acct_dir
def isMinimal(base_dir: str, domain: str, nickname: str) -> bool:
"""Returns true if minimal buttons should be shown
for the given account
"""
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(accountDir):
return True
minimalFilename = accountDir + '/.notminimal'
@ -28,7 +28,7 @@ def setMinimal(base_dir: str, domain: str, nickname: str,
minimal: bool) -> None:
"""Sets whether an account should display minimal buttons
"""
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(accountDir):
return
minimalFilename = accountDir + '/.notminimal'

View File

@ -19,7 +19,7 @@ from utils import removeHtml
from utils import getDomainFromActor
from utils import getNicknameFromActor
from utils import isFeaturedWriter
from utils import acctDir
from utils import acct_dir
from blocking import isBlocked
from follow import isFollowerOfPerson
from follow import isFollowingActor
@ -406,7 +406,7 @@ def htmlPersonOptions(defaultTimeline: str,
personNotes = ''
if originPathStr == '/users/' + nickname:
personNotesFilename = \
acctDir(base_dir, nickname, domain) + \
acct_dir(base_dir, nickname, domain) + \
'/notes/' + handle + '.txt'
if os.path.isfile(personNotesFilename):
with open(personNotesFilename, 'r') as fp:

View File

@ -50,7 +50,7 @@ from utils import updateRecentPostsCache
from utils import removeIdEnding
from utils import getNicknameFromActor
from utils import getDomainFromActor
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from content import limitRepeatedWords
from content import replaceEmojiFromTags
@ -1668,14 +1668,14 @@ def individualPostAsHtml(signing_priv_key_pem: str,
# whether to show a like button
hideLikeButtonFile = \
acctDir(base_dir, nickname, domain) + '/.hideLikeButton'
acct_dir(base_dir, nickname, domain) + '/.hideLikeButton'
showLikeButton = True
if os.path.isfile(hideLikeButtonFile):
showLikeButton = False
# whether to show a reaction button
hideReactionButtonFile = \
acctDir(base_dir, nickname, domain) + '/.hideReactionButton'
acct_dir(base_dir, nickname, domain) + '/.hideReactionButton'
showReactionButton = True
if os.path.isfile(hideReactionButtonFile):
showReactionButton = False

View File

@ -25,7 +25,7 @@ from utils import removeHtml
from utils import loadJson
from utils import getConfigParam
from utils import getImageFormats
from utils import acctDir
from utils import acct_dir
from utils import getSupportedLanguages
from utils import local_actor_url
from utils import getReplyIntervalHours
@ -731,7 +731,7 @@ def htmlProfile(signing_priv_key_pem: str,
# are there any follow requests?
followRequestsFilename = \
acctDir(base_dir, nickname, domain) + '/followrequests.txt'
acct_dir(base_dir, nickname, domain) + '/followrequests.txt'
if os.path.isfile(followRequestsFilename):
with open(followRequestsFilename, 'r') as f:
for line in f:
@ -835,7 +835,7 @@ def htmlProfile(signing_priv_key_pem: str,
'://' + domain_full + '/users/')
# get pinned post content
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
pinnedFilename = accountDir + '/pinToProfile.txt'
pinnedContent = None
if os.path.isfile(pinnedFilename):
@ -1561,7 +1561,7 @@ def _htmlEditProfileGitProjects(base_dir: str, nickname: str, domain: str,
"""
gitProjectsStr = ''
gitProjectsFilename = \
acctDir(base_dir, nickname, domain) + '/gitprojects.txt'
acct_dir(base_dir, nickname, domain) + '/gitprojects.txt'
if os.path.isfile(gitProjectsFilename):
with open(gitProjectsFilename, 'r') as gitProjectsFile:
gitProjectsStr = gitProjectsFile.read()
@ -1605,56 +1605,56 @@ def _htmlEditProfileFiltering(base_dir: str, nickname: str, domain: str,
"""
filterStr = ''
filterFilename = \
acctDir(base_dir, nickname, domain) + '/filters.txt'
acct_dir(base_dir, nickname, domain) + '/filters.txt'
if os.path.isfile(filterFilename):
with open(filterFilename, 'r') as filterfile:
filterStr = filterfile.read()
filterBioStr = ''
filterBioFilename = \
acctDir(base_dir, nickname, domain) + '/filters_bio.txt'
acct_dir(base_dir, nickname, domain) + '/filters_bio.txt'
if os.path.isfile(filterBioFilename):
with open(filterBioFilename, 'r') as filterfile:
filterBioStr = filterfile.read()
switchStr = ''
switchFilename = \
acctDir(base_dir, nickname, domain) + '/replacewords.txt'
acct_dir(base_dir, nickname, domain) + '/replacewords.txt'
if os.path.isfile(switchFilename):
with open(switchFilename, 'r') as switchfile:
switchStr = switchfile.read()
autoTags = ''
autoTagsFilename = \
acctDir(base_dir, nickname, domain) + '/autotags.txt'
acct_dir(base_dir, nickname, domain) + '/autotags.txt'
if os.path.isfile(autoTagsFilename):
with open(autoTagsFilename, 'r') as autoTagsFile:
autoTags = autoTagsFile.read()
autoCW = ''
autoCWFilename = \
acctDir(base_dir, nickname, domain) + '/autocw.txt'
acct_dir(base_dir, nickname, domain) + '/autocw.txt'
if os.path.isfile(autoCWFilename):
with open(autoCWFilename, 'r') as autoCWFile:
autoCW = autoCWFile.read()
blockedStr = ''
blockedFilename = \
acctDir(base_dir, nickname, domain) + '/blocking.txt'
acct_dir(base_dir, nickname, domain) + '/blocking.txt'
if os.path.isfile(blockedFilename):
with open(blockedFilename, 'r') as blockedfile:
blockedStr = blockedfile.read()
dmAllowedInstancesStr = ''
dmAllowedInstancesFilename = \
acctDir(base_dir, nickname, domain) + '/dmAllowedInstances.txt'
acct_dir(base_dir, nickname, domain) + '/dmAllowedInstances.txt'
if os.path.isfile(dmAllowedInstancesFilename):
with open(dmAllowedInstancesFilename, 'r') as dmAllowedInstancesFile:
dmAllowedInstancesStr = dmAllowedInstancesFile.read()
allowedInstancesStr = ''
allowedInstancesFilename = \
acctDir(base_dir, nickname, domain) + '/allowedinstances.txt'
acct_dir(base_dir, nickname, domain) + '/allowedinstances.txt'
if os.path.isfile(allowedInstancesFilename):
with open(allowedInstancesFilename, 'r') as allowedInstancesFile:
allowedInstancesStr = allowedInstancesFile.read()
@ -1675,7 +1675,7 @@ def _htmlEditProfileFiltering(base_dir: str, nickname: str, domain: str,
'</label><br>\n'
city = ''
cityFilename = acctDir(base_dir, nickname, domain) + '/city.txt'
cityFilename = acct_dir(base_dir, nickname, domain) + '/city.txt'
if os.path.isfile(cityFilename):
with open(cityFilename, 'r') as fp:
city = fp.read().replace('\n', '')
@ -2107,7 +2107,7 @@ def htmlEditProfile(cssCache: {}, translate: {}, base_dir: str, path: str,
return ''
domain_full = getFullDomain(domain, port)
actorFilename = acctDir(base_dir, nickname, domain) + '.json'
actorFilename = acct_dir(base_dir, nickname, domain) + '.json'
if not os.path.isfile(actorFilename):
return ''
@ -2164,7 +2164,7 @@ def htmlEditProfile(cssCache: {}, translate: {}, base_dir: str, path: str,
elif actor_json['type'] == 'Group':
isGroup = 'checked'
isBot = ''
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if os.path.isfile(accountDir + '/.followDMs'):
followDMs = 'checked'
if os.path.isfile(accountDir + '/.removeTwitter'):

View File

@ -10,7 +10,7 @@ __module_group__ = "Web Interface"
import os
from question import isQuestion
from utils import removeIdEnding
from utils import acctDir
from utils import acct_dir
def insertQuestion(base_dir: str, translate: {},
@ -31,7 +31,7 @@ def insertQuestion(base_dir: str, translate: {},
pageNumberStr = '?page=' + str(pageNumber)
votesFilename = \
acctDir(base_dir, nickname, domain) + '/questions.txt'
acct_dir(base_dir, nickname, domain) + '/questions.txt'
showQuestionResults = False
if os.path.isfile(votesFilename):

View File

@ -24,7 +24,7 @@ from utils import isPublicPost
from utils import firstParagraphFromString
from utils import searchBoxPosts
from utils import getAltPath
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from skills import noOfActorSkills
from skills import getSkillsFromList
@ -427,7 +427,7 @@ def htmlSearch(cssCache: {}, translate: {},
followStr += ' </form>\n'
cachedHashtagSwarmFilename = \
acctDir(base_dir, searchNickname, domain) + '/.hashtagSwarm'
acct_dir(base_dir, searchNickname, domain) + '/.hashtagSwarm'
swarmStr = ''
if os.path.isfile(cachedHashtagSwarmFilename):
try:
@ -738,7 +738,7 @@ def htmlHashtagSearch(cssCache: {},
# check that the directory for the nickname exists
if nickname:
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(accountDir):
nickname = None
@ -922,7 +922,7 @@ def rssHashtagSearch(nickname: str, domain: str, port: int,
# check that the directory for the nickname exists
if nickname:
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(accountDir):
nickname = None

View File

@ -16,7 +16,7 @@ from utils import getConfigParam
from utils import getFullDomain
from utils import isEditor
from utils import removeIdEnding
from utils import acctDir
from utils import acct_dir
from utils import isfloat
from utils import local_actor_url
from follow import followerApprovalActive
@ -457,7 +457,7 @@ def htmlTimeline(cssCache: {}, defaultTimeline: str,
timelineStartTime = time.time()
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
# should the calendar icon be highlighted?
newCalendarEvent = False
@ -621,7 +621,7 @@ def htmlTimeline(cssCache: {}, defaultTimeline: str,
# show an icon for new follow approvals
followApprovals = ''
followRequestsFilename = \
acctDir(base_dir, nickname, domain) + '/followrequests.txt'
acct_dir(base_dir, nickname, domain) + '/followrequests.txt'
if os.path.isfile(followRequestsFilename):
with open(followRequestsFilename, 'r') as f:
for line in f:

View File

@ -17,7 +17,7 @@ from utils import getProtocolPrefixes
from utils import loadJson
from utils import getCachedPostFilename
from utils import getConfigParam
from utils import acctDir
from utils import acct_dir
from utils import getNicknameFromActor
from utils import isfloat
from utils import getAudioExtensions
@ -336,7 +336,7 @@ def scheduledPostsExist(base_dir: str, nickname: str, domain: str) -> bool:
"""Returns true if there are posts scheduled to be delivered
"""
scheduleIndexFilename = \
acctDir(base_dir, nickname, domain) + '/schedule.index'
acct_dir(base_dir, nickname, domain) + '/schedule.index'
if not os.path.isfile(scheduleIndexFilename):
return False
if '#users#' in open(scheduleIndexFilename).read():
@ -496,28 +496,28 @@ def _getImageFile(base_dir: str, name: str, directory: str,
def getBannerFile(base_dir: str,
nickname: str, domain: str, theme: str) -> (str, str):
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
return _getImageFile(base_dir, 'banner', accountDir,
nickname, domain, theme)
def getSearchBannerFile(base_dir: str,
nickname: str, domain: str, theme: str) -> (str, str):
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
return _getImageFile(base_dir, 'search_banner', accountDir,
nickname, domain, theme)
def getLeftImageFile(base_dir: str,
nickname: str, domain: str, theme: str) -> (str, str):
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
return _getImageFile(base_dir, 'left_col_image', accountDir,
nickname, domain, theme)
def getRightImageFile(base_dir: str,
nickname: str, domain: str, theme: str) -> (str, str):
accountDir = acctDir(base_dir, nickname, domain)
accountDir = acct_dir(base_dir, nickname, domain)
return _getImageFile(base_dir, 'right_col_image',
accountDir, nickname, domain, theme)
@ -1510,7 +1510,7 @@ def htmlShowShare(base_dir: str, domain: str, nickname: str,
if '://' + domain_full + '/' in shareUrl:
# shared item on this instance
sharesFilename = \
acctDir(base_dir, contactNickname, domain) + '/' + \
acct_dir(base_dir, contactNickname, domain) + '/' + \
sharesFileType + '.json'
if not os.path.isfile(sharesFilename):
return None

View File

@ -11,7 +11,7 @@ import os
from shutil import copyfile
from utils import getConfigParam
from utils import removeHtml
from utils import acctDir
from utils import acct_dir
from webapp_utils import htmlHeaderWithExternalStyle
from webapp_utils import htmlFooter
from markdown import markdownToHtml
@ -20,7 +20,7 @@ from markdown import markdownToHtml
def isWelcomeScreenComplete(base_dir: str, nickname: str, domain: str) -> bool:
"""Returns true if the welcome screen is complete for the given account
"""
accountPath = acctDir(base_dir, nickname, domain)
accountPath = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(accountPath):
return
completeFilename = accountPath + '/.welcome_complete'
@ -31,7 +31,7 @@ def welcomeScreenIsComplete(base_dir: str,
nickname: str, domain: str) -> None:
"""Indicates that the welcome screen has been shown for a given account
"""
accountPath = acctDir(base_dir, nickname, domain)
accountPath = acct_dir(base_dir, nickname, domain)
if not os.path.isdir(accountPath):
return
completeFilename = accountPath + '/.welcome_complete'

View File

@ -14,7 +14,7 @@ from utils import loadJson
from utils import getConfigParam
from utils import getImageExtensions
from utils import getImageFormats
from utils import acctDir
from utils import acct_dir
from utils import local_actor_url
from webapp_utils import htmlHeaderWithExternalStyle
from webapp_utils import htmlFooter
@ -72,7 +72,7 @@ def htmlWelcomeProfile(base_dir: str, nickname: str, domain: str,
# get the url of the avatar
for ext in getImageExtensions():
avatarFilename = \
acctDir(base_dir, nickname, domain) + '/avatar.' + ext
acct_dir(base_dir, nickname, domain) + '/avatar.' + ext
if os.path.isfile(avatarFilename):
break
avatarUrl = \
@ -99,7 +99,7 @@ def htmlWelcomeProfile(base_dir: str, nickname: str, domain: str,
'name="previewAvatar">' + translate['Preview'] + '</button> '
profileForm += '</center>\n'
actorFilename = acctDir(base_dir, nickname, domain) + '.json'
actorFilename = acct_dir(base_dir, nickname, domain) + '.json'
actor_json = loadJson(actorFilename)
displayNickname = actor_json['name']
profileForm += '<div class="container">\n'