mirror of https://gitlab.com/bashrc2/epicyon
Snake case
parent
133566c821
commit
1872d25cd1
4
auth.py
4
auth.py
|
@ -240,7 +240,7 @@ def createPassword(length: int):
|
|||
return ''.join((secrets.choice(validChars) for i in range(length)))
|
||||
|
||||
|
||||
def recordLoginFailure(base_dir: str, ipAddress: str,
|
||||
def record_login_failure(base_dir: str, ipAddress: str,
|
||||
countDict: {}, failTime: int,
|
||||
logToFile: bool) -> None:
|
||||
"""Keeps ip addresses and the number of times login failures
|
||||
|
@ -287,4 +287,4 @@ def recordLoginFailure(base_dir: str, ipAddress: str,
|
|||
ipAddress + ' port 443: ' +
|
||||
'Too many authentication failures [preauth]\n')
|
||||
except OSError:
|
||||
print('EX: recordLoginFailure failed ' + str(failureLog))
|
||||
print('EX: record_login_failure failed ' + str(failureLog))
|
||||
|
|
116
daemon.py
116
daemon.py
|
@ -96,24 +96,24 @@ from posts import populate_replies_json
|
|||
from posts import add_to_field
|
||||
from posts import expire_cache
|
||||
from inbox import clear_queue_items
|
||||
from inbox import inboxPermittedMessage
|
||||
from inbox import inboxMessageHasParams
|
||||
from inbox import runInboxQueue
|
||||
from inbox import runInboxQueueWatchdog
|
||||
from inbox import savePostToInboxQueue
|
||||
from inbox import populateReplies
|
||||
from follow import followerApprovalActive
|
||||
from follow import isFollowingActor
|
||||
from follow import getFollowingFeed
|
||||
from follow import sendFollowRequest
|
||||
from follow import unfollowAccount
|
||||
from follow import createInitialLastSeen
|
||||
from skills import getSkillsFromList
|
||||
from skills import noOfActorSkills
|
||||
from skills import actorHasSkill
|
||||
from skills import actorSkillValue
|
||||
from skills import setActorSkillLevel
|
||||
from auth import recordLoginFailure
|
||||
from inbox import inbox_permitted_message
|
||||
from inbox import inbox_message_has_params
|
||||
from inbox import run_inbox_queue
|
||||
from inbox import run_inbox_queue_watchdog
|
||||
from inbox import save_post_to_inbox_queue
|
||||
from inbox import populate_replies
|
||||
from follow import follower_approval_active
|
||||
from follow import is_following_actor
|
||||
from follow import get_following_feed
|
||||
from follow import send_follow_request
|
||||
from follow import unfollow_account
|
||||
from follow import create_initial_last_seen
|
||||
from skills import get_skills_from_list
|
||||
from skills import no_of_actor_skills
|
||||
from skills import actor_has_skill
|
||||
from skills import actor_skill_value
|
||||
from skills import set_actor_skill_level
|
||||
from auth import record_login_failure
|
||||
from auth import authorize
|
||||
from auth import createPassword
|
||||
from auth import createBasicAuthHeader
|
||||
|
@ -530,7 +530,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
if post_filename:
|
||||
post_json_object = load_json(post_filename)
|
||||
if post_json_object:
|
||||
populateReplies(self.server.base_dir,
|
||||
populate_replies(self.server.base_dir,
|
||||
self.server.http_prefix,
|
||||
self.server.domain_full,
|
||||
post_json_object,
|
||||
|
@ -1533,7 +1533,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
self.server.blockedCacheUpdateSecs)
|
||||
|
||||
queueFilename = \
|
||||
savePostToInboxQueue(self.server.base_dir,
|
||||
save_post_to_inbox_queue(self.server.base_dir,
|
||||
self.server.http_prefix,
|
||||
nickname,
|
||||
self.server.domain_full,
|
||||
|
@ -1741,7 +1741,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
self.server.last_login_failure = failTime
|
||||
if not domain.endswith('.onion'):
|
||||
if not is_local_network_address(ipAddress):
|
||||
recordLoginFailure(base_dir, ipAddress,
|
||||
record_login_failure(base_dir, ipAddress,
|
||||
self.server.login_failure_count,
|
||||
failTime,
|
||||
self.server.log_login_failures)
|
||||
|
@ -2961,7 +2961,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
group_account = has_group_type(self.server.base_dir,
|
||||
followingActor,
|
||||
self.server.person_cache)
|
||||
unfollowAccount(self.server.base_dir, self.postToNickname,
|
||||
unfollow_account(self.server.base_dir, self.postToNickname,
|
||||
self.server.domain,
|
||||
followingNickname, followingDomainFull,
|
||||
self.server.debug, group_account)
|
||||
|
@ -3042,7 +3042,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
followerNickname + ' to ' + followingActor)
|
||||
if not self.server.signing_priv_key_pem:
|
||||
print('Sending follow request with no signing key')
|
||||
sendFollowRequest(self.server.session,
|
||||
send_follow_request(self.server.session,
|
||||
base_dir, followerNickname,
|
||||
domain, port,
|
||||
http_prefix,
|
||||
|
@ -3511,7 +3511,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
profilePathStr = path.replace('/searchhandle', '')
|
||||
|
||||
# are we already following the searched for handle?
|
||||
if isFollowingActor(base_dir, nickname, domain, searchStr):
|
||||
if is_following_actor(base_dir, nickname, domain, searchStr):
|
||||
if not has_users_path(searchStr):
|
||||
searchNickname = get_nickname_from_actor(searchStr)
|
||||
searchDomain, searchPort = \
|
||||
|
@ -4934,7 +4934,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
|
||||
# set skill levels
|
||||
skillCtr = 1
|
||||
actorSkillsCtr = noOfActorSkills(actor_json)
|
||||
actorSkillsCtr = no_of_actor_skills(actor_json)
|
||||
while skillCtr < 10:
|
||||
skillName = \
|
||||
fields.get('skillName' + str(skillCtr))
|
||||
|
@ -4949,20 +4949,20 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
if not skillValue:
|
||||
skillCtr += 1
|
||||
continue
|
||||
if not actorHasSkill(actor_json, skillName):
|
||||
if not actor_has_skill(actor_json, skillName):
|
||||
actorChanged = True
|
||||
else:
|
||||
if actorSkillValue(actor_json, skillName) != \
|
||||
if actor_skill_value(actor_json, skillName) != \
|
||||
int(skillValue):
|
||||
actorChanged = True
|
||||
setActorSkillLevel(actor_json,
|
||||
set_actor_skill_level(actor_json,
|
||||
skillName, int(skillValue))
|
||||
skillsStr = self.server.translate['Skills']
|
||||
skillsStr = skillsStr.lower()
|
||||
setHashtagCategory(base_dir, skillName,
|
||||
skillsStr, False)
|
||||
skillCtr += 1
|
||||
if noOfActorSkills(actor_json) != \
|
||||
if no_of_actor_skills(actor_json) != \
|
||||
actorSkillsCtr:
|
||||
actorChanged = True
|
||||
|
||||
|
@ -7738,7 +7738,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
print('Announced post cache: ' + str(cachedPostFilename))
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir,
|
||||
follower_approval_active(base_dir,
|
||||
self.postToNickname, domain)
|
||||
showRepeats = not is_dm(announceJson)
|
||||
individualPostAsHtml(self.server.signing_priv_key_pem, False,
|
||||
|
@ -8199,7 +8199,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
print('Liked post cache: ' + str(cachedPostFilename))
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir,
|
||||
follower_approval_active(base_dir,
|
||||
self.postToNickname, domain)
|
||||
showRepeats = not is_dm(likedPostJson)
|
||||
individualPostAsHtml(self.server.signing_priv_key_pem, False,
|
||||
|
@ -8355,7 +8355,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
if likedPostJson:
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir,
|
||||
follower_approval_active(base_dir,
|
||||
self.postToNickname, domain)
|
||||
showRepeats = not is_dm(likedPostJson)
|
||||
individualPostAsHtml(self.server.signing_priv_key_pem, False,
|
||||
|
@ -8538,7 +8538,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
print('Reaction post cache: ' + str(cachedPostFilename))
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir,
|
||||
follower_approval_active(base_dir,
|
||||
self.postToNickname, domain)
|
||||
showRepeats = not is_dm(reactionPostJson)
|
||||
individualPostAsHtml(self.server.signing_priv_key_pem, False,
|
||||
|
@ -8712,7 +8712,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
if reactionPostJson:
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir,
|
||||
follower_approval_active(base_dir,
|
||||
self.postToNickname, domain)
|
||||
showRepeats = not is_dm(reactionPostJson)
|
||||
individualPostAsHtml(self.server.signing_priv_key_pem, False,
|
||||
|
@ -8932,7 +8932,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
print('Bookmarked post cache: ' + str(cachedPostFilename))
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir,
|
||||
follower_approval_active(base_dir,
|
||||
self.postToNickname, domain)
|
||||
showRepeats = not is_dm(bookmarkPostJson)
|
||||
individualPostAsHtml(self.server.signing_priv_key_pem, False,
|
||||
|
@ -9060,7 +9060,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
print('Unbookmarked post cache: ' + str(cachedPostFilename))
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir,
|
||||
follower_approval_active(base_dir,
|
||||
self.postToNickname, domain)
|
||||
showRepeats = not is_dm(bookmarkPostJson)
|
||||
individualPostAsHtml(self.server.signing_priv_key_pem, False,
|
||||
|
@ -9255,7 +9255,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
print('mutePost: Muted post cache: ' + str(cachedPostFilename))
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir,
|
||||
follower_approval_active(base_dir,
|
||||
nickname, domain)
|
||||
showRepeats = not is_dm(mutePostJson)
|
||||
showPublicOnly = False
|
||||
|
@ -9366,7 +9366,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
str(cachedPostFilename))
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, nickname, domain)
|
||||
follower_approval_active(base_dir, nickname, domain)
|
||||
showRepeats = not is_dm(mutePostJson)
|
||||
showPublicOnly = False
|
||||
storeToCache = True
|
||||
|
@ -9768,7 +9768,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
if os.path.isfile(actorFilename):
|
||||
actor_json = load_json(actorFilename)
|
||||
if actor_json:
|
||||
if noOfActorSkills(actor_json) > 0:
|
||||
if no_of_actor_skills(actor_json) > 0:
|
||||
if self._requestHTTP():
|
||||
getPerson = \
|
||||
person_lookup(domain,
|
||||
|
@ -9797,7 +9797,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
self.server.keyShortcuts[nickname]
|
||||
actorSkillsList = \
|
||||
get_occupation_skills(actor_json)
|
||||
skills = getSkillsFromList(actorSkillsList)
|
||||
skills = get_skills_from_list(actorSkillsList)
|
||||
city = getSpoofedCity(self.server.city,
|
||||
base_dir,
|
||||
nickname, domain)
|
||||
|
@ -9855,7 +9855,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
if self._secure_mode():
|
||||
actorSkillsList = \
|
||||
get_occupation_skills(actor_json)
|
||||
skills = getSkillsFromList(actorSkillsList)
|
||||
skills = get_skills_from_list(actorSkillsList)
|
||||
msg = json.dumps(skills,
|
||||
ensure_ascii=False)
|
||||
msg = msg.encode('utf-8')
|
||||
|
@ -11915,7 +11915,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
"""Shows the following feed
|
||||
"""
|
||||
following = \
|
||||
getFollowingFeed(base_dir, domain, port, path,
|
||||
get_following_feed(base_dir, domain, port, path,
|
||||
http_prefix, authorized, follows_per_page,
|
||||
'following')
|
||||
if following:
|
||||
|
@ -11925,7 +11925,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
searchPath = path
|
||||
# get a page of following, not the summary
|
||||
following = \
|
||||
getFollowingFeed(base_dir,
|
||||
get_following_feed(base_dir,
|
||||
domain,
|
||||
port,
|
||||
path + '?page=true',
|
||||
|
@ -12034,7 +12034,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
"""Shows the followers feed
|
||||
"""
|
||||
followers = \
|
||||
getFollowingFeed(base_dir, domain, port, path, http_prefix,
|
||||
get_following_feed(base_dir, domain, port, path, http_prefix,
|
||||
authorized, follows_per_page, 'followers')
|
||||
if followers:
|
||||
if self._requestHTTP():
|
||||
|
@ -12043,7 +12043,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
searchPath = path
|
||||
# get a page of followers, not the summary
|
||||
followers = \
|
||||
getFollowingFeed(base_dir,
|
||||
get_following_feed(base_dir,
|
||||
domain,
|
||||
port,
|
||||
path + '?page=1',
|
||||
|
@ -13216,7 +13216,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
"""Returns json collection for following.txt
|
||||
"""
|
||||
followingJson = \
|
||||
getFollowingFeed(base_dir, domain, port, path, http_prefix,
|
||||
get_following_feed(base_dir, domain, port, path, http_prefix,
|
||||
True, followingItemsPerPage, listName)
|
||||
if not followingJson:
|
||||
if debug:
|
||||
|
@ -16662,7 +16662,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
if self._postToOutbox(message_json,
|
||||
self.server.project_version,
|
||||
nickname):
|
||||
populateReplies(self.server.base_dir,
|
||||
populate_replies(self.server.base_dir,
|
||||
self.server.http_prefix,
|
||||
self.server.domain_full,
|
||||
message_json,
|
||||
|
@ -16739,7 +16739,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
self.server.project_version,
|
||||
nickname):
|
||||
refresh_newswire(self.server.base_dir)
|
||||
populateReplies(self.server.base_dir,
|
||||
populate_replies(self.server.base_dir,
|
||||
self.server.http_prefix,
|
||||
self.server.domain_full,
|
||||
message_json,
|
||||
|
@ -16891,7 +16891,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
if self._postToOutbox(message_json,
|
||||
self.server.project_version,
|
||||
nickname):
|
||||
populateReplies(self.server.base_dir,
|
||||
populate_replies(self.server.base_dir,
|
||||
self.server.http_prefix,
|
||||
self.server.domain,
|
||||
message_json,
|
||||
|
@ -16943,7 +16943,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
if self._postToOutbox(message_json,
|
||||
self.server.project_version,
|
||||
nickname):
|
||||
populateReplies(self.server.base_dir,
|
||||
populate_replies(self.server.base_dir,
|
||||
self.server.http_prefix,
|
||||
self.server.domain,
|
||||
message_json,
|
||||
|
@ -17004,7 +17004,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
if self._postToOutbox(message_json,
|
||||
self.server.project_version,
|
||||
nickname):
|
||||
populateReplies(self.server.base_dir,
|
||||
populate_replies(self.server.base_dir,
|
||||
self.server.http_prefix,
|
||||
self.server.domain,
|
||||
message_json,
|
||||
|
@ -18275,7 +18275,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
|
||||
if self.path.endswith('/inbox') or \
|
||||
self.path == '/sharedInbox':
|
||||
if not inboxMessageHasParams(message_json):
|
||||
if not inbox_message_has_params(message_json):
|
||||
if self.server.debug:
|
||||
print("DEBUG: inbox message doesn't have the " +
|
||||
"required parameters")
|
||||
|
@ -18285,7 +18285,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
return
|
||||
|
||||
fitnessPerformance(POSTstartTime, self.server.fitness,
|
||||
'_POST', 'inboxMessageHasParams',
|
||||
'_POST', 'inbox_message_has_params',
|
||||
self.server.debug)
|
||||
|
||||
headerSignature = self._getheaderSignatureInput()
|
||||
|
@ -18305,7 +18305,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
self.server.debug)
|
||||
|
||||
if not self.server.unit_test:
|
||||
if not inboxPermittedMessage(self.server.domain,
|
||||
if not inbox_permitted_message(self.server.domain,
|
||||
message_json,
|
||||
self.server.federation_list):
|
||||
if self.server.debug:
|
||||
|
@ -18317,7 +18317,7 @@ class PubServer(BaseHTTPRequestHandler):
|
|||
return
|
||||
|
||||
fitnessPerformance(POSTstartTime, self.server.fitness,
|
||||
'_POST', 'inboxPermittedMessage',
|
||||
'_POST', 'inbox_permitted_message',
|
||||
self.server.debug)
|
||||
|
||||
if self.server.debug:
|
||||
|
@ -18934,11 +18934,11 @@ def runDaemon(content_license_url: str,
|
|||
httpd.peertube_instances = []
|
||||
loadPeertubeInstances(base_dir, httpd.peertube_instances)
|
||||
|
||||
createInitialLastSeen(base_dir, http_prefix)
|
||||
create_initial_last_seen(base_dir, http_prefix)
|
||||
|
||||
print('Creating inbox queue')
|
||||
httpd.thrInboxQueue = \
|
||||
threadWithTrace(target=runInboxQueue,
|
||||
threadWithTrace(target=run_inbox_queue,
|
||||
args=(httpd.recent_posts_cache,
|
||||
httpd.max_recent_posts,
|
||||
project_version,
|
||||
|
@ -19004,7 +19004,7 @@ def runDaemon(content_license_url: str,
|
|||
if not unit_test:
|
||||
print('Creating inbox queue watchdog')
|
||||
httpd.thrWatchdog = \
|
||||
threadWithTrace(target=runInboxQueueWatchdog,
|
||||
threadWithTrace(target=run_inbox_queue_watchdog,
|
||||
args=(project_version, httpd), daemon=True)
|
||||
httpd.thrWatchdog.start()
|
||||
|
||||
|
|
|
@ -38,7 +38,7 @@ from follow import denyFollowRequestViaServer
|
|||
from follow import getFollowRequestsViaServer
|
||||
from follow import getFollowingViaServer
|
||||
from follow import getFollowersViaServer
|
||||
from follow import sendFollowRequestViaServer
|
||||
from follow import send_follow_requestViaServer
|
||||
from follow import sendUnfollowRequestViaServer
|
||||
from posts import sendBlockViaServer
|
||||
from posts import sendUndoBlockViaServer
|
||||
|
@ -2221,7 +2221,7 @@ def runDesktopClient(base_dir: str, proxy_type: str, http_prefix: str,
|
|||
_sayCommand(sayStr, sayStr,
|
||||
screenreader, system_language, espeak)
|
||||
sessionFollow = create_session(proxy_type)
|
||||
sendFollowRequestViaServer(base_dir,
|
||||
send_follow_requestViaServer(base_dir,
|
||||
sessionFollow,
|
||||
nickname, password,
|
||||
domain, port,
|
||||
|
|
|
@ -54,7 +54,7 @@ from follow import getFollowingViaServer
|
|||
from follow import getFollowersViaServer
|
||||
from follow import clearFollows
|
||||
from follow import followerOfPerson
|
||||
from follow import sendFollowRequestViaServer
|
||||
from follow import send_follow_requestViaServer
|
||||
from follow import sendUnfollowRequestViaServer
|
||||
from tests import testSharedItemsFederation
|
||||
from tests import testGroupFollow
|
||||
|
@ -1897,7 +1897,7 @@ if args.follow:
|
|||
if args.secure_mode:
|
||||
signing_priv_key_pem = get_instance_actor_key(base_dir, domain)
|
||||
|
||||
sendFollowRequestViaServer(base_dir, session,
|
||||
send_follow_requestViaServer(base_dir, session,
|
||||
args.nickname, args.password,
|
||||
domain, port,
|
||||
followNickname, followDomain, followPort,
|
||||
|
|
38
follow.py
38
follow.py
|
@ -38,7 +38,7 @@ from session import getJson
|
|||
from session import postJson
|
||||
|
||||
|
||||
def createInitialLastSeen(base_dir: str, http_prefix: str) -> None:
|
||||
def create_initial_last_seen(base_dir: str, http_prefix: str) -> None:
|
||||
"""Creates initial lastseen files for all follows.
|
||||
The lastseen files are used to generate the Zzz icons on
|
||||
follows/following lists on the profile screen.
|
||||
|
@ -59,7 +59,7 @@ def createInitialLastSeen(base_dir: str, http_prefix: str) -> None:
|
|||
with open(followingFilename, 'r') as fp:
|
||||
followingHandles = fp.readlines()
|
||||
except OSError:
|
||||
print('EX: createInitialLastSeen ' + followingFilename)
|
||||
print('EX: create_initial_last_seen ' + followingFilename)
|
||||
for handle in followingHandles:
|
||||
if '#' in handle:
|
||||
continue
|
||||
|
@ -78,7 +78,7 @@ def createInitialLastSeen(base_dir: str, http_prefix: str) -> None:
|
|||
with open(lastSeenFilename, 'w+') as fp:
|
||||
fp.write(str(100))
|
||||
except OSError:
|
||||
print('EX: createInitialLastSeen 2 ' +
|
||||
print('EX: create_initial_last_seen 2 ' +
|
||||
lastSeenFilename)
|
||||
break
|
||||
|
||||
|
@ -164,7 +164,7 @@ def _removeFromFollowRejects(base_dir: str,
|
|||
acceptHandle, 'followrejects', debug)
|
||||
|
||||
|
||||
def isFollowingActor(base_dir: str,
|
||||
def is_following_actor(base_dir: str,
|
||||
nickname: str, domain: str, actor: str) -> bool:
|
||||
"""Is the given nickname following the given actor?
|
||||
The actor can also be a handle: nickname@domain
|
||||
|
@ -283,7 +283,7 @@ def isFollowerOfPerson(base_dir: str, nickname: str, domain: str,
|
|||
return alreadyFollowing
|
||||
|
||||
|
||||
def unfollowAccount(base_dir: str, nickname: str, domain: str,
|
||||
def unfollow_account(base_dir: str, nickname: str, domain: str,
|
||||
followNickname: str, followDomain: str,
|
||||
debug: bool, group_account: bool,
|
||||
followFile: str = 'following.txt') -> bool:
|
||||
|
@ -315,7 +315,7 @@ def unfollowAccount(base_dir: str, nickname: str, domain: str,
|
|||
with open(filename, 'r') as f:
|
||||
lines = f.readlines()
|
||||
except OSError:
|
||||
print('EX: unfollowAccount ' + filename)
|
||||
print('EX: unfollow_account ' + filename)
|
||||
if lines:
|
||||
try:
|
||||
with open(filename, 'w+') as f:
|
||||
|
@ -353,7 +353,7 @@ def unfollowerOfAccount(base_dir: str, nickname: str, domain: str,
|
|||
debug: bool, group_account: bool) -> bool:
|
||||
"""Remove a follower of a person
|
||||
"""
|
||||
return unfollowAccount(base_dir, nickname, domain,
|
||||
return unfollow_account(base_dir, nickname, domain,
|
||||
followerNickname, followerDomain,
|
||||
debug, group_account, 'followers.txt')
|
||||
|
||||
|
@ -424,7 +424,7 @@ def getNoOfFollowers(base_dir: str,
|
|||
authenticated, 'followers.txt')
|
||||
|
||||
|
||||
def getFollowingFeed(base_dir: str, domain: str, port: int, path: str,
|
||||
def get_following_feed(base_dir: str, domain: str, port: int, path: str,
|
||||
http_prefix: str, authorized: bool,
|
||||
follows_per_page=12,
|
||||
followFile='following') -> {}:
|
||||
|
@ -448,7 +448,7 @@ def getFollowingFeed(base_dir: str, domain: str, port: int, path: str,
|
|||
try:
|
||||
pageNumber = int(pageNumber)
|
||||
except BaseException:
|
||||
print('EX: getFollowingFeed unable to convert to int ' +
|
||||
print('EX: get_following_feed unable to convert to int ' +
|
||||
str(pageNumber))
|
||||
pass
|
||||
path = path.split('?page=')[0]
|
||||
|
@ -517,7 +517,7 @@ def getFollowingFeed(base_dir: str, domain: str, port: int, path: str,
|
|||
with open(filename, 'r') as f:
|
||||
lines = f.readlines()
|
||||
except OSError:
|
||||
print('EX: getFollowingFeed ' + filename)
|
||||
print('EX: get_following_feed ' + filename)
|
||||
for line in lines:
|
||||
if '#' not in line:
|
||||
if '@' in line and not line.startswith('http'):
|
||||
|
@ -846,8 +846,9 @@ def followedAccountRejects(session, base_dir: str, http_prefix: str,
|
|||
6393063)
|
||||
|
||||
|
||||
def sendFollowRequest(session, base_dir: str,
|
||||
nickname: str, domain: str, port: int, http_prefix: str,
|
||||
def send_follow_request(session, base_dir: str,
|
||||
nickname: str, domain: str, port: int,
|
||||
http_prefix: str,
|
||||
followNickname: str, followDomain: str,
|
||||
followedActor: str,
|
||||
followPort: int, followHttpPrefix: str,
|
||||
|
@ -881,7 +882,7 @@ def sendFollowRequest(session, base_dir: str,
|
|||
print('Follow request being sent to group account')
|
||||
else:
|
||||
if debug:
|
||||
print('DEBUG: sendFollowRequest - assuming single user instance')
|
||||
print('DEBUG: send_follow_request - assuming single user instance')
|
||||
followedId = followHttpPrefix + '://' + requestDomain
|
||||
singleUserNickname = 'dev'
|
||||
followHandle = singleUserNickname + '@' + requestDomain
|
||||
|
@ -896,7 +897,7 @@ def sendFollowRequest(session, base_dir: str,
|
|||
with open(unfollowedFilename, 'r') as fp:
|
||||
unfollowedFile = fp.read()
|
||||
except OSError:
|
||||
print('EX: sendFollowRequest ' + unfollowedFilename)
|
||||
print('EX: send_follow_request ' + unfollowedFilename)
|
||||
if unfollowedFile:
|
||||
unfollowedFile = \
|
||||
unfollowedFile.replace(followHandle + '\n', '')
|
||||
|
@ -939,7 +940,7 @@ def sendFollowRequest(session, base_dir: str,
|
|||
return newFollowJson
|
||||
|
||||
|
||||
def sendFollowRequestViaServer(base_dir: str, session,
|
||||
def send_follow_requestViaServer(base_dir: str, session,
|
||||
fromNickname: str, password: str,
|
||||
fromDomain: str, fromPort: int,
|
||||
followNickname: str, followDomain: str,
|
||||
|
@ -951,7 +952,7 @@ def sendFollowRequestViaServer(base_dir: str, session,
|
|||
"""Creates a follow request via c2s
|
||||
"""
|
||||
if not session:
|
||||
print('WARN: No session for sendFollowRequestViaServer')
|
||||
print('WARN: No session for send_follow_requestViaServer')
|
||||
return 6
|
||||
|
||||
fromDomainFull = get_full_domain(fromDomain, fromPort)
|
||||
|
@ -1419,7 +1420,7 @@ def outboxUndoFollow(base_dir: str, message_json: {}, debug: bool) -> None:
|
|||
|
||||
group_account = \
|
||||
has_group_type(base_dir, message_json['object']['object'], None)
|
||||
if unfollowAccount(base_dir, nicknameFollower, domainFollowerFull,
|
||||
if unfollow_account(base_dir, nicknameFollower, domainFollowerFull,
|
||||
nicknameFollowing, domainFollowingFull,
|
||||
debug, group_account):
|
||||
if debug:
|
||||
|
@ -1431,7 +1432,8 @@ def outboxUndoFollow(base_dir: str, message_json: {}, debug: bool) -> None:
|
|||
nicknameFollowing + '@' + domainFollowingFull)
|
||||
|
||||
|
||||
def followerApprovalActive(base_dir: str, nickname: str, domain: str) -> bool:
|
||||
def follower_approval_active(base_dir: str,
|
||||
nickname: str, domain: str) -> bool:
|
||||
"""Returns true if the given account requires follower approval
|
||||
"""
|
||||
manuallyApprovesFollowers = False
|
||||
|
|
66
inbox.py
66
inbox.py
|
@ -66,8 +66,8 @@ from categories import setHashtagCategory
|
|||
from httpsig import getDigestAlgorithmFromHeaders
|
||||
from httpsig import verifyPostHeaders
|
||||
from session import create_session
|
||||
from follow import followerApprovalActive
|
||||
from follow import isFollowingActor
|
||||
from follow import follower_approval_active
|
||||
from follow import is_following_actor
|
||||
from follow import getFollowersOfActor
|
||||
from follow import unfollowerOfAccount
|
||||
from follow import isFollowerOfPerson
|
||||
|
@ -377,13 +377,13 @@ def validInboxFilenames(base_dir: str, nickname: str, domain: str,
|
|||
return True
|
||||
|
||||
|
||||
def inboxMessageHasParams(message_json: {}) -> bool:
|
||||
def inbox_message_has_params(message_json: {}) -> bool:
|
||||
"""Checks whether an incoming message contains expected parameters
|
||||
"""
|
||||
expectedParams = ['actor', 'type', 'object']
|
||||
for param in expectedParams:
|
||||
if not message_json.get(param):
|
||||
# print('inboxMessageHasParams: ' +
|
||||
# print('inbox_message_has_params: ' +
|
||||
# param + ' ' + str(message_json))
|
||||
return False
|
||||
|
||||
|
@ -418,7 +418,7 @@ def inboxMessageHasParams(message_json: {}) -> bool:
|
|||
return True
|
||||
|
||||
|
||||
def inboxPermittedMessage(domain: str, message_json: {},
|
||||
def inbox_permitted_message(domain: str, message_json: {},
|
||||
federation_list: []) -> bool:
|
||||
""" check that we are receiving from a permitted domain
|
||||
"""
|
||||
|
@ -449,7 +449,7 @@ def inboxPermittedMessage(domain: str, message_json: {},
|
|||
return True
|
||||
|
||||
|
||||
def savePostToInboxQueue(base_dir: str, http_prefix: str,
|
||||
def save_post_to_inbox_queue(base_dir: str, http_prefix: str,
|
||||
nickname: str, domain: str,
|
||||
post_json_object: {},
|
||||
originalPostJsonObject: {},
|
||||
|
@ -1092,7 +1092,7 @@ def _receiveLike(recent_posts_cache: {},
|
|||
show_published_date_only = False
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, handleName, domain)
|
||||
follower_approval_active(base_dir, handleName, domain)
|
||||
notDM = not is_dm(likedPostJson)
|
||||
individualPostAsHtml(signing_priv_key_pem, False,
|
||||
recent_posts_cache, max_recent_posts,
|
||||
|
@ -1205,7 +1205,7 @@ def _receiveUndoLike(recent_posts_cache: {},
|
|||
show_published_date_only = False
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, handleName, domain)
|
||||
follower_approval_active(base_dir, handleName, domain)
|
||||
notDM = not is_dm(likedPostJson)
|
||||
individualPostAsHtml(signing_priv_key_pem, False,
|
||||
recent_posts_cache, max_recent_posts,
|
||||
|
@ -1354,7 +1354,7 @@ def _receiveReaction(recent_posts_cache: {},
|
|||
show_published_date_only = False
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, handleName, domain)
|
||||
follower_approval_active(base_dir, handleName, domain)
|
||||
notDM = not is_dm(reactionPostJson)
|
||||
individualPostAsHtml(signing_priv_key_pem, False,
|
||||
recent_posts_cache, max_recent_posts,
|
||||
|
@ -1485,7 +1485,7 @@ def _receiveUndoReaction(recent_posts_cache: {},
|
|||
show_published_date_only = False
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, handleName, domain)
|
||||
follower_approval_active(base_dir, handleName, domain)
|
||||
notDM = not is_dm(reactionPostJson)
|
||||
individualPostAsHtml(signing_priv_key_pem, False,
|
||||
recent_posts_cache, max_recent_posts,
|
||||
|
@ -1595,7 +1595,7 @@ def _receiveBookmark(recent_posts_cache: {},
|
|||
show_published_date_only = False
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, nickname, domain)
|
||||
follower_approval_active(base_dir, nickname, domain)
|
||||
notDM = not is_dm(bookmarkedPostJson)
|
||||
individualPostAsHtml(signing_priv_key_pem, False,
|
||||
recent_posts_cache, max_recent_posts,
|
||||
|
@ -1708,7 +1708,7 @@ def _receiveUndoBookmark(recent_posts_cache: {},
|
|||
show_published_date_only = False
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, nickname, domain)
|
||||
follower_approval_active(base_dir, nickname, domain)
|
||||
notDM = not is_dm(bookmarkedPostJson)
|
||||
individualPostAsHtml(signing_priv_key_pem, False,
|
||||
recent_posts_cache, max_recent_posts,
|
||||
|
@ -1912,7 +1912,7 @@ def _receiveAnnounce(recent_posts_cache: {},
|
|||
show_published_date_only = False
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, nickname, domain)
|
||||
follower_approval_active(base_dir, nickname, domain)
|
||||
notDM = True
|
||||
if debug:
|
||||
print('Generating html for announce ' + message_json['id'])
|
||||
|
@ -2119,7 +2119,7 @@ def _postAllowsComments(post_filename: str) -> bool:
|
|||
return jsonPostAllowsComments(post_json_object)
|
||||
|
||||
|
||||
def populateReplies(base_dir: str, http_prefix: str, domain: str,
|
||||
def populate_replies(base_dir: str, http_prefix: str, domain: str,
|
||||
message_json: {}, max_replies: int, debug: bool) -> bool:
|
||||
"""Updates the list of replies for a post on this domain if
|
||||
a reply to it arrives
|
||||
|
@ -2780,7 +2780,7 @@ def _updateLastSeen(base_dir: str, handle: str, actor: str) -> None:
|
|||
accountPath = acct_dir(base_dir, nickname, domain)
|
||||
if not os.path.isdir(accountPath):
|
||||
return
|
||||
if not isFollowingActor(base_dir, nickname, domain, actor):
|
||||
if not is_following_actor(base_dir, nickname, domain, actor):
|
||||
return
|
||||
lastSeenPath = accountPath + '/lastseen'
|
||||
if not os.path.isdir(lastSeenPath):
|
||||
|
@ -2950,7 +2950,7 @@ def _isValidDM(base_dir: str, nickname: str, domain: str, port: int,
|
|||
# get the handle of the DM sender
|
||||
sendH = sendingActorNickname + '@' + sendingActorDomain
|
||||
# check the follow
|
||||
if not isFollowingActor(base_dir, nickname, domain, sendH):
|
||||
if not is_following_actor(base_dir, nickname, domain, sendH):
|
||||
# DMs may always be allowed from some domains
|
||||
if not dm_allowed_from_domain(base_dir,
|
||||
nickname, domain,
|
||||
|
@ -3032,7 +3032,7 @@ def _receiveQuestionVote(base_dir: str, nickname: str, domain: str,
|
|||
show_published_date_only = False
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, nickname, domain)
|
||||
follower_approval_active(base_dir, nickname, domain)
|
||||
notDM = not is_dm(questionJson)
|
||||
individualPostAsHtml(signing_priv_key_pem, False,
|
||||
recent_posts_cache, max_recent_posts,
|
||||
|
@ -3462,7 +3462,7 @@ def _inboxAfterInitial(recent_posts_cache: {}, max_recent_posts: int,
|
|||
|
||||
# list of indexes to be updated
|
||||
updateIndexList = ['inbox']
|
||||
populateReplies(base_dir, http_prefix, domain, post_json_object,
|
||||
populate_replies(base_dir, http_prefix, domain, post_json_object,
|
||||
max_replies, debug)
|
||||
|
||||
_receiveQuestionVote(base_dir, nickname, domain,
|
||||
|
@ -3680,18 +3680,18 @@ def _restoreQueueItems(base_dir: str, queue: []) -> None:
|
|||
print('Restored ' + str(len(queue)) + ' inbox queue items')
|
||||
|
||||
|
||||
def runInboxQueueWatchdog(project_version: str, httpd) -> None:
|
||||
def run_inbox_queue_watchdog(project_version: str, httpd) -> None:
|
||||
"""This tries to keep the inbox thread running even if it dies
|
||||
"""
|
||||
print('Starting inbox queue watchdog')
|
||||
inbox_queueOriginal = httpd.thrInboxQueue.clone(runInboxQueue)
|
||||
inbox_queueOriginal = httpd.thrInboxQueue.clone(run_inbox_queue)
|
||||
httpd.thrInboxQueue.start()
|
||||
while True:
|
||||
time.sleep(20)
|
||||
if not httpd.thrInboxQueue.is_alive() or httpd.restartInboxQueue:
|
||||
httpd.restartInboxQueueInProgress = True
|
||||
httpd.thrInboxQueue.kill()
|
||||
httpd.thrInboxQueue = inbox_queueOriginal.clone(runInboxQueue)
|
||||
httpd.thrInboxQueue = inbox_queueOriginal.clone(run_inbox_queue)
|
||||
httpd.inbox_queue.clear()
|
||||
httpd.thrInboxQueue.start()
|
||||
print('Restarting inbox queue...')
|
||||
|
@ -4078,7 +4078,7 @@ def _receiveFollowRequest(session, base_dir: str, http_prefix: str,
|
|||
signing_priv_key_pem)
|
||||
|
||||
|
||||
def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
||||
def run_inbox_queue(recent_posts_cache: {}, max_recent_posts: int,
|
||||
project_version: str,
|
||||
base_dir: str, http_prefix: str,
|
||||
send_threads: [], postLog: [],
|
||||
|
@ -4187,7 +4187,7 @@ def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
|||
# Load the queue json
|
||||
queueJson = load_json(queueFilename, 1)
|
||||
if not queueJson:
|
||||
print('Queue: runInboxQueue failed to load inbox queue item ' +
|
||||
print('Queue: run_inbox_queue failed to load inbox queue item ' +
|
||||
queueFilename)
|
||||
# Assume that the file is probably corrupt/unreadable
|
||||
if len(queue) > 0:
|
||||
|
@ -4197,7 +4197,7 @@ def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
|||
try:
|
||||
os.remove(queueFilename)
|
||||
except OSError:
|
||||
print('EX: runInboxQueue 1 unable to delete ' +
|
||||
print('EX: run_inbox_queue 1 unable to delete ' +
|
||||
str(queueFilename))
|
||||
continue
|
||||
|
||||
|
@ -4271,7 +4271,7 @@ def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
|||
try:
|
||||
os.remove(queueFilename)
|
||||
except OSError:
|
||||
print('EX: runInboxQueue 2 unable to delete ' +
|
||||
print('EX: run_inbox_queue 2 unable to delete ' +
|
||||
str(queueFilename))
|
||||
if len(queue) > 0:
|
||||
queue.pop(0)
|
||||
|
@ -4324,7 +4324,7 @@ def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
|||
try:
|
||||
os.remove(queueFilename)
|
||||
except OSError:
|
||||
print('EX: runInboxQueue 3 unable to delete ' +
|
||||
print('EX: run_inbox_queue 3 unable to delete ' +
|
||||
str(queueFilename))
|
||||
if len(queue) > 0:
|
||||
queue.pop(0)
|
||||
|
@ -4345,7 +4345,7 @@ def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
|||
try:
|
||||
os.remove(queueFilename)
|
||||
except OSError:
|
||||
print('EX: runInboxQueue 4 unable to delete ' +
|
||||
print('EX: run_inbox_queue 4 unable to delete ' +
|
||||
str(queueFilename))
|
||||
if len(queue) > 0:
|
||||
queue.pop(0)
|
||||
|
@ -4375,7 +4375,7 @@ def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
|||
try:
|
||||
os.remove(queueFilename)
|
||||
except OSError:
|
||||
print('EX: runInboxQueue 5 unable to delete ' +
|
||||
print('EX: run_inbox_queue 5 unable to delete ' +
|
||||
str(queueFilename))
|
||||
if len(queue) > 0:
|
||||
queue.pop(0)
|
||||
|
@ -4397,7 +4397,7 @@ def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
|||
try:
|
||||
os.remove(queueFilename)
|
||||
except OSError:
|
||||
print('EX: runInboxQueue 6 unable to delete ' +
|
||||
print('EX: run_inbox_queue 6 unable to delete ' +
|
||||
str(queueFilename))
|
||||
if len(queue) > 0:
|
||||
queue.pop(0)
|
||||
|
@ -4419,7 +4419,7 @@ def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
|||
try:
|
||||
os.remove(queueFilename)
|
||||
except OSError:
|
||||
print('EX: runInboxQueue 7 unable to delete ' +
|
||||
print('EX: run_inbox_queue 7 unable to delete ' +
|
||||
str(queueFilename))
|
||||
if len(queue) > 0:
|
||||
queue.pop(0)
|
||||
|
@ -4441,7 +4441,7 @@ def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
|||
try:
|
||||
os.remove(queueFilename)
|
||||
except OSError:
|
||||
print('EX: runInboxQueue 8 unable to delete ' +
|
||||
print('EX: run_inbox_queue 8 unable to delete ' +
|
||||
str(queueFilename))
|
||||
if len(queue) > 0:
|
||||
queue.pop(0)
|
||||
|
@ -4460,7 +4460,7 @@ def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
|||
try:
|
||||
os.remove(queueFilename)
|
||||
except OSError:
|
||||
print('EX: runInboxQueue 9 unable to delete ' +
|
||||
print('EX: run_inbox_queue 9 unable to delete ' +
|
||||
str(queueFilename))
|
||||
if len(queue) > 0:
|
||||
queue.pop(0)
|
||||
|
@ -4541,7 +4541,7 @@ def runInboxQueue(recent_posts_cache: {}, max_recent_posts: int,
|
|||
try:
|
||||
os.remove(queueFilename)
|
||||
except OSError:
|
||||
print('EX: runInboxQueue 10 unable to delete ' +
|
||||
print('EX: run_inbox_queue 10 unable to delete ' +
|
||||
str(queueFilename))
|
||||
if len(queue) > 0:
|
||||
queue.pop(0)
|
||||
|
|
|
@ -16,7 +16,7 @@ from utils import has_group_type
|
|||
from webfinger import webfingerHandle
|
||||
from blocking import isBlocked
|
||||
from posts import getUserUrl
|
||||
from follow import unfollowAccount
|
||||
from follow import unfollow_account
|
||||
from person import getActorJson
|
||||
|
||||
|
||||
|
@ -111,7 +111,7 @@ def _updateMovedHandle(base_dir: str, nickname: str, domain: str,
|
|||
movedToNickname, movedToDomain):
|
||||
# someone that you follow has moved to a blocked domain
|
||||
# so just unfollow them
|
||||
unfollowAccount(base_dir, nickname, domain,
|
||||
unfollow_account(base_dir, nickname, domain,
|
||||
movedToNickname, movedToDomainFull,
|
||||
debug, group_account, 'following.txt')
|
||||
return ctr
|
||||
|
@ -136,7 +136,7 @@ def _updateMovedHandle(base_dir: str, nickname: str, domain: str,
|
|||
else:
|
||||
handleNickname = handle.split('@')[0]
|
||||
handleDomain = handle.split('@')[1]
|
||||
unfollowAccount(base_dir, nickname, domain,
|
||||
unfollow_account(base_dir, nickname, domain,
|
||||
handleNickname,
|
||||
handleDomain,
|
||||
debug, group_account, 'following.txt')
|
||||
|
|
|
@ -43,7 +43,7 @@ from inbox import inboxUpdateIndex
|
|||
from announce import outboxAnnounce
|
||||
from announce import outboxUndoAnnounce
|
||||
from follow import outboxUndoFollow
|
||||
from follow import followerApprovalActive
|
||||
from follow import follower_approval_active
|
||||
from skills import outboxSkills
|
||||
from availability import outboxAvailability
|
||||
from like import outboxLike
|
||||
|
@ -451,7 +451,7 @@ def postMessageToOutbox(session, translate: {},
|
|||
pageNumber = 1
|
||||
showIndividualPostIcons = True
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir,
|
||||
follower_approval_active(base_dir,
|
||||
postToNickname, domain)
|
||||
individualPostAsHtml(signing_priv_key_pem,
|
||||
False, recent_posts_cache,
|
||||
|
|
|
@ -67,7 +67,7 @@ from pprint import pprint
|
|||
from cache import getPersonFromCache
|
||||
from cache import storePersonInCache
|
||||
from filters import isFilteredBio
|
||||
from follow import isFollowingActor
|
||||
from follow import is_following_actor
|
||||
|
||||
|
||||
def generateRSAKey() -> (str, str):
|
||||
|
@ -1669,7 +1669,7 @@ def validSendingActor(session, base_dir: str,
|
|||
sendingActor = post_json_object['actor']
|
||||
|
||||
# If you are following them then allow their posts
|
||||
if isFollowingActor(base_dir, nickname, domain, sendingActor):
|
||||
if is_following_actor(base_dir, nickname, domain, sendingActor):
|
||||
return True
|
||||
|
||||
# sending to yourself (reminder)
|
||||
|
|
18
skills.py
18
skills.py
|
@ -35,7 +35,7 @@ def setSkillsFromDict(actor_json: {}, skillsDict: {}) -> []:
|
|||
return skillsList
|
||||
|
||||
|
||||
def getSkillsFromList(skillsList: []) -> {}:
|
||||
def get_skills_from_list(skillsList: []) -> {}:
|
||||
"""Returns a dict of skills from a list
|
||||
"""
|
||||
if isinstance(skillsList, list):
|
||||
|
@ -54,11 +54,11 @@ def getSkillsFromList(skillsList: []) -> {}:
|
|||
return skillsDict
|
||||
|
||||
|
||||
def actorSkillValue(actor_json: {}, skillName: str) -> int:
|
||||
def actor_skill_value(actor_json: {}, skillName: str) -> int:
|
||||
"""Returns The skill level from an actor
|
||||
"""
|
||||
ocSkillsList = get_occupation_skills(actor_json)
|
||||
skillsDict = getSkillsFromList(ocSkillsList)
|
||||
skillsDict = get_skills_from_list(ocSkillsList)
|
||||
if not skillsDict:
|
||||
return 0
|
||||
skillName = skillName.lower()
|
||||
|
@ -67,7 +67,7 @@ def actorSkillValue(actor_json: {}, skillName: str) -> int:
|
|||
return 0
|
||||
|
||||
|
||||
def noOfActorSkills(actor_json: {}) -> int:
|
||||
def no_of_actor_skills(actor_json: {}) -> int:
|
||||
"""Returns the number of skills that an actor has
|
||||
"""
|
||||
if actor_json.get('hasOccupation'):
|
||||
|
@ -76,7 +76,7 @@ def noOfActorSkills(actor_json: {}) -> int:
|
|||
return 0
|
||||
|
||||
|
||||
def setActorSkillLevel(actor_json: {},
|
||||
def set_actor_skill_level(actor_json: {},
|
||||
skill: str, skillLevelPercent: int) -> bool:
|
||||
"""Set a skill level for a person
|
||||
Setting skill level to zero removes it
|
||||
|
@ -97,7 +97,7 @@ def setActorSkillLevel(actor_json: {},
|
|||
'skills': []
|
||||
}]
|
||||
ocSkillsList = get_occupation_skills(actor_json)
|
||||
skillsDict = getSkillsFromList(ocSkillsList)
|
||||
skillsDict = get_skills_from_list(ocSkillsList)
|
||||
if not skillsDict.get(skill):
|
||||
if len(skillsDict.items()) >= 32:
|
||||
print('WARN: Maximum number of skills reached for ' +
|
||||
|
@ -124,7 +124,7 @@ def setSkillLevel(base_dir: str, nickname: str, domain: str,
|
|||
return False
|
||||
|
||||
actor_json = load_json(actorFilename)
|
||||
return setActorSkillLevel(actor_json,
|
||||
return set_actor_skill_level(actor_json,
|
||||
skill, skillLevelPercent)
|
||||
|
||||
|
||||
|
@ -140,7 +140,7 @@ def getSkills(base_dir: str, nickname: str, domain: str) -> []:
|
|||
if not actor_json.get('hasOccupation'):
|
||||
return None
|
||||
ocSkillsList = get_occupation_skills(actor_json)
|
||||
return getSkillsFromList(ocSkillsList)
|
||||
return get_skills_from_list(ocSkillsList)
|
||||
return None
|
||||
|
||||
|
||||
|
@ -265,7 +265,7 @@ def sendSkillViaServer(base_dir: str, session, nickname: str, password: str,
|
|||
return newSkillJson
|
||||
|
||||
|
||||
def actorHasSkill(actor_json: {}, skillName: str) -> bool:
|
||||
def actor_has_skill(actor_json: {}, skillName: str) -> bool:
|
||||
"""Returns true if the given actor has the given skill
|
||||
"""
|
||||
ocSkillsList = get_occupation_skills(actor_json)
|
||||
|
|
36
tests.py
36
tests.py
|
@ -51,7 +51,7 @@ from posts import sendPostViaServer
|
|||
from posts import secondsBetweenPublished
|
||||
from follow import clearFollows
|
||||
from follow import clearFollowers
|
||||
from follow import sendFollowRequestViaServer
|
||||
from follow import send_follow_requestViaServer
|
||||
from follow import sendUnfollowRequestViaServer
|
||||
from siteactive import siteIsActive
|
||||
from utils import get_sha_256
|
||||
|
@ -89,18 +89,18 @@ from pgp import extractPGPPublicKey
|
|||
from pgp import pgpPublicKeyUpload
|
||||
from utils import contains_pgp_public_key
|
||||
from follow import followerOfPerson
|
||||
from follow import unfollowAccount
|
||||
from follow import unfollow_account
|
||||
from follow import unfollowerOfAccount
|
||||
from follow import sendFollowRequest
|
||||
from follow import send_follow_request
|
||||
from person import createPerson
|
||||
from person import createGroup
|
||||
from person import setDisplayNickname
|
||||
from person import setBio
|
||||
# from person import generateRSAKey
|
||||
from skills import setSkillLevel
|
||||
from skills import actorSkillValue
|
||||
from skills import actor_skill_value
|
||||
from skills import setSkillsFromDict
|
||||
from skills import actorHasSkill
|
||||
from skills import actor_has_skill
|
||||
from roles import setRolesFromList
|
||||
from roles import setRole
|
||||
from roles import actorHasRole
|
||||
|
@ -1526,7 +1526,7 @@ def testFollowBetweenServers(base_dir: str) -> None:
|
|||
bobActor = http_prefix + '://' + bobAddress + '/users/bob'
|
||||
signing_priv_key_pem = None
|
||||
sendResult = \
|
||||
sendFollowRequest(sessionAlice, aliceDir,
|
||||
send_follow_request(sessionAlice, aliceDir,
|
||||
'alice', aliceDomain, alicePort, http_prefix,
|
||||
'bob', bobDomain, bobActor,
|
||||
bobPort, http_prefix,
|
||||
|
@ -1743,7 +1743,7 @@ def testSharedItemsFederation(base_dir: str) -> None:
|
|||
alicePostLog = []
|
||||
bobActor = http_prefix + '://' + bobAddress + '/users/bob'
|
||||
sendResult = \
|
||||
sendFollowRequest(sessionAlice, aliceDir,
|
||||
send_follow_request(sessionAlice, aliceDir,
|
||||
'alice', aliceDomain, alicePort, http_prefix,
|
||||
'bob', bobDomain, bobActor,
|
||||
bobPort, http_prefix,
|
||||
|
@ -2182,7 +2182,7 @@ def testGroupFollow(base_dir: str) -> None:
|
|||
http_prefix + '://' + testgroupAddress + '/users/testgroup'
|
||||
signing_priv_key_pem = None
|
||||
sendResult = \
|
||||
sendFollowRequest(sessionAlice, aliceDir,
|
||||
send_follow_request(sessionAlice, aliceDir,
|
||||
'alice', aliceDomain, alicePort, http_prefix,
|
||||
'testgroup', testgroupDomain, testgroupActor,
|
||||
testgroupPort, http_prefix,
|
||||
|
@ -2259,7 +2259,7 @@ def testGroupFollow(base_dir: str) -> None:
|
|||
http_prefix + '://' + testgroupAddress + '/users/testgroup'
|
||||
signing_priv_key_pem = None
|
||||
sendResult = \
|
||||
sendFollowRequest(sessionBob, bobDir,
|
||||
send_follow_request(sessionBob, bobDir,
|
||||
'bob', bobDomain, bobPort, http_prefix,
|
||||
'testgroup', testgroupDomain, testgroupActor,
|
||||
testgroupPort, http_prefix,
|
||||
|
@ -2631,7 +2631,7 @@ def _testFollows(base_dir: str) -> None:
|
|||
assert(False)
|
||||
|
||||
assert(domainFound)
|
||||
unfollowAccount(base_dir, nickname, domain, 'batman', 'mesh.com',
|
||||
unfollow_account(base_dir, nickname, domain, 'batman', 'mesh.com',
|
||||
True, False)
|
||||
|
||||
domainFound = False
|
||||
|
@ -2955,7 +2955,7 @@ def testClientToServer(base_dir: str):
|
|||
|
||||
print('\n\nAlice follows Bob')
|
||||
signing_priv_key_pem = None
|
||||
sendFollowRequestViaServer(aliceDir, sessionAlice,
|
||||
send_follow_requestViaServer(aliceDir, sessionAlice,
|
||||
'alice', password,
|
||||
aliceDomain, alicePort,
|
||||
'bob', bobDomain, bobPort,
|
||||
|
@ -2997,7 +2997,7 @@ def testClientToServer(base_dir: str):
|
|||
aliceDomain, alicePort)
|
||||
|
||||
print('\n\nEVENT: Bob follows Alice')
|
||||
sendFollowRequestViaServer(aliceDir, sessionAlice,
|
||||
send_follow_requestViaServer(aliceDir, sessionAlice,
|
||||
'bob', 'bobpass',
|
||||
bobDomain, bobPort,
|
||||
'alice', aliceDomain, alicePort,
|
||||
|
@ -4612,8 +4612,8 @@ def _testFunctions():
|
|||
'remove_value',
|
||||
'normalize',
|
||||
'get_document_loader',
|
||||
'runInboxQueueWatchdog',
|
||||
'runInboxQueue',
|
||||
'run_inbox_queue_watchdog',
|
||||
'run_inbox_queue',
|
||||
'runPostSchedule',
|
||||
'runPostScheduleWatchdog',
|
||||
'str2bool',
|
||||
|
@ -5474,10 +5474,10 @@ def _testSkills() -> None:
|
|||
'gardening': 70
|
||||
}
|
||||
setSkillsFromDict(actor_json, skillsDict)
|
||||
assert actorHasSkill(actor_json, 'bakery')
|
||||
assert actorHasSkill(actor_json, 'gardening')
|
||||
assert actorSkillValue(actor_json, 'bakery') == 40
|
||||
assert actorSkillValue(actor_json, 'gardening') == 70
|
||||
assert actor_has_skill(actor_json, 'bakery')
|
||||
assert actor_has_skill(actor_json, 'gardening')
|
||||
assert actor_skill_value(actor_json, 'bakery') == 40
|
||||
assert actor_skill_value(actor_json, 'gardening') == 70
|
||||
|
||||
|
||||
def _testRoles() -> None:
|
||||
|
|
|
@ -22,7 +22,7 @@ from utils import is_featured_writer
|
|||
from utils import acct_dir
|
||||
from blocking import isBlocked
|
||||
from follow import isFollowerOfPerson
|
||||
from follow import isFollowingActor
|
||||
from follow import is_following_actor
|
||||
from followingCalendar import receivingCalendarEvents
|
||||
from notifyOnPost import notifyWhenPersonPosts
|
||||
from webapp_utils import htmlHeaderWithExternalStyle
|
||||
|
@ -88,7 +88,7 @@ def htmlPersonOptions(defaultTimeline: str,
|
|||
if '?' in nickname:
|
||||
nickname = nickname.split('?')[0]
|
||||
followerDomain, followerPort = get_domain_from_actor(optionsActor)
|
||||
if isFollowingActor(base_dir, nickname, domain, optionsActor):
|
||||
if is_following_actor(base_dir, nickname, domain, optionsActor):
|
||||
followStr = 'Unfollow'
|
||||
if isGroup:
|
||||
followStr = 'Leave'
|
||||
|
@ -259,7 +259,7 @@ def htmlPersonOptions(defaultTimeline: str,
|
|||
translate['Submit'] + '</button><br>\n'
|
||||
|
||||
# Notify when a post arrives from this person
|
||||
if isFollowingActor(base_dir, nickname, domain, optionsActor):
|
||||
if is_following_actor(base_dir, nickname, domain, optionsActor):
|
||||
checkboxStr = \
|
||||
' <input type="checkbox" class="profilecheckbox" ' + \
|
||||
'name="notifyOnPost" checked> 🔔' + \
|
||||
|
|
|
@ -18,7 +18,7 @@ from cache import getPersonFromCache
|
|||
from bookmarks import bookmarkedByPerson
|
||||
from like import likedByPerson
|
||||
from like import noOfLikes
|
||||
from follow import isFollowingActor
|
||||
from follow import is_following_actor
|
||||
from posts import postIsMuted
|
||||
from posts import getPersonBox
|
||||
from posts import downloadAnnounce
|
||||
|
@ -2044,7 +2044,7 @@ def htmlIndividualPost(css_cache: {},
|
|||
followStr += \
|
||||
' <input type="hidden" name="searchtext" value="' + \
|
||||
byStrHandle + '">\n'
|
||||
if not isFollowingActor(base_dir, nickname, domain_full, byStr):
|
||||
if not is_following_actor(base_dir, nickname, domain_full, byStr):
|
||||
translateFollowStr = 'Follow'
|
||||
if translate.get(translateFollowStr):
|
||||
translateFollowStr = translate[translateFollowStr]
|
||||
|
|
|
@ -26,8 +26,8 @@ from utils import search_box_posts
|
|||
from utils import get_alt_path
|
||||
from utils import acct_dir
|
||||
from utils import local_actor_url
|
||||
from skills import noOfActorSkills
|
||||
from skills import getSkillsFromList
|
||||
from skills import no_of_actor_skills
|
||||
from skills import get_skills_from_list
|
||||
from categories import getHashtagCategory
|
||||
from feeds import rss2TagHeader
|
||||
from feeds import rss2TagFooter
|
||||
|
@ -478,12 +478,12 @@ def htmlSkillsSearch(actor: str,
|
|||
actor_json = load_json(actorFilename)
|
||||
if actor_json:
|
||||
if actor_json.get('id') and \
|
||||
noOfActorSkills(actor_json) > 0 and \
|
||||
no_of_actor_skills(actor_json) > 0 and \
|
||||
actor_json.get('name') and \
|
||||
actor_json.get('icon'):
|
||||
actor = actor_json['id']
|
||||
actorSkillsList = actor_json['hasOccupation']['skills']
|
||||
skills = getSkillsFromList(actorSkillsList)
|
||||
skills = get_skills_from_list(actorSkillsList)
|
||||
for skillName, skillLevel in skills.items():
|
||||
skillName = skillName.lower()
|
||||
if not (skillName in skillsearch or
|
||||
|
@ -515,13 +515,13 @@ def htmlSkillsSearch(actor: str,
|
|||
if cachedActorJson.get('actor'):
|
||||
actor_json = cachedActorJson['actor']
|
||||
if actor_json.get('id') and \
|
||||
noOfActorSkills(actor_json) > 0 and \
|
||||
no_of_actor_skills(actor_json) > 0 and \
|
||||
actor_json.get('name') and \
|
||||
actor_json.get('icon'):
|
||||
actor = actor_json['id']
|
||||
actorSkillsList = \
|
||||
actor_json['hasOccupation']['skills']
|
||||
skills = getSkillsFromList(actorSkillsList)
|
||||
skills = get_skills_from_list(actorSkillsList)
|
||||
for skillName, skillLevel in skills.items():
|
||||
skillName = skillName.lower()
|
||||
if not (skillName in skillsearch or
|
||||
|
|
|
@ -19,7 +19,7 @@ from utils import remove_id_ending
|
|||
from utils import acct_dir
|
||||
from utils import is_float
|
||||
from utils import local_actor_url
|
||||
from follow import followerApprovalActive
|
||||
from follow import follower_approval_active
|
||||
from person import isPersonSnoozed
|
||||
from markdown import markdownToHtml
|
||||
from webapp_utils import htmlKeyboardNavigation
|
||||
|
@ -1148,7 +1148,7 @@ def htmlShares(css_cache: {}, defaultTimeline: str,
|
|||
"""Show the shares timeline as html
|
||||
"""
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, nickname, domain)
|
||||
follower_approval_active(base_dir, nickname, domain)
|
||||
artist = is_artist(base_dir, nickname)
|
||||
|
||||
return htmlTimeline(css_cache, defaultTimeline,
|
||||
|
@ -1206,7 +1206,7 @@ def htmlWanted(css_cache: {}, defaultTimeline: str,
|
|||
"""Show the wanted timeline as html
|
||||
"""
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, nickname, domain)
|
||||
follower_approval_active(base_dir, nickname, domain)
|
||||
artist = is_artist(base_dir, nickname)
|
||||
|
||||
return htmlTimeline(css_cache, defaultTimeline,
|
||||
|
@ -1265,7 +1265,7 @@ def htmlInbox(css_cache: {}, defaultTimeline: str,
|
|||
"""Show the inbox as html
|
||||
"""
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, nickname, domain)
|
||||
follower_approval_active(base_dir, nickname, domain)
|
||||
artist = is_artist(base_dir, nickname)
|
||||
|
||||
return htmlTimeline(css_cache, defaultTimeline,
|
||||
|
@ -1324,7 +1324,7 @@ def htmlBookmarks(css_cache: {}, defaultTimeline: str,
|
|||
"""Show the bookmarks as html
|
||||
"""
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, nickname, domain)
|
||||
follower_approval_active(base_dir, nickname, domain)
|
||||
artist = is_artist(base_dir, nickname)
|
||||
|
||||
return htmlTimeline(css_cache, defaultTimeline,
|
||||
|
@ -1700,7 +1700,7 @@ def htmlOutbox(css_cache: {}, defaultTimeline: str,
|
|||
"""Show the Outbox as html
|
||||
"""
|
||||
manuallyApproveFollowers = \
|
||||
followerApprovalActive(base_dir, nickname, domain)
|
||||
follower_approval_active(base_dir, nickname, domain)
|
||||
artist = is_artist(base_dir, nickname)
|
||||
return htmlTimeline(css_cache, defaultTimeline,
|
||||
recent_posts_cache, max_recent_posts,
|
||||
|
|
Loading…
Reference in New Issue