forked from indymedia/epicyon
Reduce duplicate prefixes
parent
c68b94f9b1
commit
6e769484aa
|
@ -11,6 +11,7 @@ import email.parser
|
|||
from shutil import copyfile
|
||||
from utils import loadJson
|
||||
from utils import fileLastModified
|
||||
from utils import getLinkPrefixes
|
||||
|
||||
|
||||
def switchWords(baseDir: str, nickname: str, domain: str, content: str) -> str:
|
||||
|
@ -129,8 +130,7 @@ def addWebLinks(content: str) -> str:
|
|||
if ':' not in content:
|
||||
return content
|
||||
|
||||
prefixes = ('https://', 'http://', 'dat://', 'i2p://', 'gnunet://',
|
||||
'hyper://', 'gemini://', 'gopher://', 'briar:')
|
||||
prefixes = getLinkPrefixes()
|
||||
|
||||
# do any of these prefixes exist within the content?
|
||||
prefixFound = False
|
||||
|
|
|
@ -49,6 +49,7 @@ from utils import getDomainFromActor
|
|||
from utils import getNicknameFromActor
|
||||
from utils import followPerson
|
||||
from utils import validNickname
|
||||
from utils import getProtocolPrefixes
|
||||
from media import archiveMedia
|
||||
from media import getAttachmentMediaType
|
||||
from delete import sendDeleteViaServer
|
||||
|
@ -1041,8 +1042,7 @@ if args.actor:
|
|||
args.actor.startswith('http') or \
|
||||
args.actor.startswith('dat'):
|
||||
# format: https://domain/@nick
|
||||
prefixes = ('https://', 'http://', 'dat://', 'i2p://', 'gnunet://',
|
||||
'hyper://', 'gemini://', 'gopher://')
|
||||
prefixes = getProtocolPrefixes()
|
||||
for prefix in prefixes:
|
||||
args.actor = args.actor.replace(prefix, '')
|
||||
args.actor = args.actor.replace('/@', '/users/')
|
||||
|
|
4
inbox.py
4
inbox.py
|
@ -10,6 +10,7 @@ import json
|
|||
import os
|
||||
import datetime
|
||||
import time
|
||||
from utils import getProtocolPrefixes
|
||||
from utils import isBlogPost
|
||||
from utils import removeAvatarFromCache
|
||||
from utils import isPublicPost
|
||||
|
@ -1359,8 +1360,7 @@ def receiveAnnounce(recentPostsCache: {},
|
|||
messageJson['type'])
|
||||
return False
|
||||
|
||||
prefixes = ('https://', 'http://', 'dat://', 'i2p://', 'gnunet://',
|
||||
'hyper://', 'gemini://', 'gopher://')
|
||||
prefixes = getProtocolPrefixes()
|
||||
# is the domain of the announce actor blocked?
|
||||
objectDomain = messageJson['object']
|
||||
for prefix in prefixes:
|
||||
|
|
14
utils.py
14
utils.py
|
@ -15,6 +15,20 @@ from pprint import pprint
|
|||
from calendar import monthrange
|
||||
|
||||
|
||||
def getProtocolPrefixes() -> []:
|
||||
"""Returns a list of valid prefixes
|
||||
"""
|
||||
return ('https://', 'http://', 'dat://', 'i2p://', 'gnunet://',
|
||||
'hyper://', 'gemini://', 'gopher://')
|
||||
|
||||
|
||||
def getLinkPrefixes() -> []:
|
||||
"""Returns a list of valid web link prefixes
|
||||
"""
|
||||
return ('https://', 'http://', 'dat://', 'i2p://', 'gnunet://',
|
||||
'hyper://', 'gemini://', 'gopher://', 'briar:')
|
||||
|
||||
|
||||
def removeAvatarFromCache(baseDir: str, actorStr: str) -> None:
|
||||
"""Removes any existing avatar entries from the cache
|
||||
This avoids duplicate entries with differing extensions
|
||||
|
|
|
@ -21,13 +21,13 @@ from cache import getWebfingerFromCache
|
|||
from utils import loadJson
|
||||
from utils import loadJsonOnionify
|
||||
from utils import saveJson
|
||||
from utils import getProtocolPrefixes
|
||||
|
||||
|
||||
def parseHandle(handle: str) -> (str, str):
|
||||
if '.' not in handle:
|
||||
return None, None
|
||||
prefixes = ('https://', 'http://', 'dat://', 'i2p://', 'gnunet://',
|
||||
'hyper://', 'gemini://', 'gopher://')
|
||||
prefixes = getProtocolPrefixes()
|
||||
handleStr = handle
|
||||
for prefix in prefixes:
|
||||
handleStr = handleStr.replace(prefix, '')
|
||||
|
|
|
@ -24,6 +24,7 @@ from ssb import getSSBAddress
|
|||
from tox import getToxAddress
|
||||
from matrix import getMatrixAddress
|
||||
from donate import getDonationUrl
|
||||
from utils import getProtocolPrefixes
|
||||
from utils import getFileCaseInsensitive
|
||||
from utils import searchBoxPosts
|
||||
from utils import isBlogPost
|
||||
|
@ -100,8 +101,7 @@ def getBlogAddress(actorJson: {}) -> str:
|
|||
if propertyValue['type'] != 'PropertyValue':
|
||||
continue
|
||||
propertyValue['value'] = propertyValue['value'].strip()
|
||||
prefixes = ('https://', 'http://', 'dat://', 'i2p://', 'gnunet://',
|
||||
'hyper://', 'gemini://', 'gopher://')
|
||||
prefixes = getProtocolPrefixes()
|
||||
prefixFound = False
|
||||
for prefix in prefixes:
|
||||
if propertyValue['value'].startswith(prefix):
|
||||
|
@ -139,9 +139,7 @@ def setBlogAddress(actorJson: {}, blogAddress: str) -> None:
|
|||
if propertyFound:
|
||||
actorJson['attachment'].remove(propertyFound)
|
||||
|
||||
prefixes = ('https://', 'http://', 'dat://', 'i2p://',
|
||||
'gnunet://', 'hyper://', 'gemini://',
|
||||
'gopher://')
|
||||
prefixes = getProtocolPrefixes()
|
||||
prefixFound = False
|
||||
for prefix in prefixes:
|
||||
if blogAddress.startswith(prefix):
|
||||
|
@ -4007,9 +4005,7 @@ def individualPostAsHtml(recentPostsCache: {}, maxRecentPosts: int,
|
|||
else:
|
||||
postDomain = \
|
||||
postJsonObject['object']['inReplyTo']
|
||||
prefixes = ('https://', 'http://', 'dat://', 'i2p://',
|
||||
'gnunet://', 'hyper://', 'gemini://',
|
||||
'gopher://')
|
||||
prefixes = getProtocolPrefixes()
|
||||
for prefix in prefixes:
|
||||
postDomain = postDomain.replace(prefix, '')
|
||||
if '/' in postDomain:
|
||||
|
|
Loading…
Reference in New Issue