forked from indymedia/epicyon
Remove some checks from the Like object urls so that non-mastodon posts can be liked
parent
fd61e985cf
commit
cc704314a9
15
daemon.py
15
daemon.py
|
@ -1547,13 +1547,14 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
likeActor= \
|
likeActor= \
|
||||||
self.server.httpPrefix+'://'+ \
|
self.server.httpPrefix+'://'+ \
|
||||||
self.server.domainFull+'/users/'+self.postToNickname
|
self.server.domainFull+'/users/'+self.postToNickname
|
||||||
self.server.actorLiked=self.path.split('?actor=')[1]
|
actorLiked=self.path.split('?actor=')[1]
|
||||||
if '?' in self.server.actorLiked:
|
if '?' in actorLiked:
|
||||||
self.server.actorLiked=self.server.actorLiked.split('?')[0]
|
actorLiked=actorLiked.split('?')[0]
|
||||||
likeJson= {
|
likeJson= {
|
||||||
"@context": "https://www.w3.org/ns/activitystreams",
|
"@context": "https://www.w3.org/ns/activitystreams",
|
||||||
'type': 'Like',
|
'type': 'Like',
|
||||||
'actor': likeActor,
|
'actor': likeActor,
|
||||||
|
'to': [actorLiked],
|
||||||
'object': likeUrl
|
'object': likeUrl
|
||||||
}
|
}
|
||||||
self._postToOutboxThread(likeJson)
|
self._postToOutboxThread(likeJson)
|
||||||
|
@ -1593,19 +1594,21 @@ class PubServer(BaseHTTPRequestHandler):
|
||||||
undoActor= \
|
undoActor= \
|
||||||
self.server.httpPrefix+'://'+ \
|
self.server.httpPrefix+'://'+ \
|
||||||
self.server.domainFull+'/users/'+self.postToNickname
|
self.server.domainFull+'/users/'+self.postToNickname
|
||||||
|
actorLiked=self.path.split('?actor=')[1]
|
||||||
|
if '?' in actorLiked:
|
||||||
|
actorLiked=actorLiked.split('?')[0]
|
||||||
undoLikeJson= {
|
undoLikeJson= {
|
||||||
"@context": "https://www.w3.org/ns/activitystreams",
|
"@context": "https://www.w3.org/ns/activitystreams",
|
||||||
'type': 'Undo',
|
'type': 'Undo',
|
||||||
'actor': undoActor,
|
'actor': undoActor,
|
||||||
|
'to': [actorLiked],
|
||||||
'object': {
|
'object': {
|
||||||
'type': 'Like',
|
'type': 'Like',
|
||||||
'actor': undoActor,
|
'actor': undoActor,
|
||||||
|
'to': [actorLiked],
|
||||||
'object': likeUrl
|
'object': likeUrl
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
self.server.actorLiked=self.path.split('?actor=')[1]
|
|
||||||
if '?' in self.server.actorLiked:
|
|
||||||
self.server.actorLiked=self.server.actorLiked.split('?')[0]
|
|
||||||
self._postToOutboxThread(undoLikeJson)
|
self._postToOutboxThread(undoLikeJson)
|
||||||
self.server.GETbusy=False
|
self.server.GETbusy=False
|
||||||
self._redirect_headers(actor+'/'+timelineStr+ \
|
self._redirect_headers(actor+'/'+timelineStr+ \
|
||||||
|
|
20
like.py
20
like.py
|
@ -549,16 +549,6 @@ def outboxLike(baseDir: str,httpPrefix: str, \
|
||||||
print('DEBUG: c2s like request arrived in outbox')
|
print('DEBUG: c2s like request arrived in outbox')
|
||||||
|
|
||||||
messageId=messageJson['object'].replace('/activity','')
|
messageId=messageJson['object'].replace('/activity','')
|
||||||
if '/statuses/' not in messageId:
|
|
||||||
if debug:
|
|
||||||
print('DEBUG: c2s like object is not a status')
|
|
||||||
return
|
|
||||||
if '/users/' not in messageId and \
|
|
||||||
'/channel/' not in messageId and \
|
|
||||||
'/profile/' not in messageId:
|
|
||||||
if debug:
|
|
||||||
print('DEBUG: c2s like object has no nickname')
|
|
||||||
return
|
|
||||||
if ':' in domain:
|
if ':' in domain:
|
||||||
domain=domain.split(':')[0]
|
domain=domain.split(':')[0]
|
||||||
postFilename=locatePost(baseDir,nickname,domain,messageId)
|
postFilename=locatePost(baseDir,nickname,domain,messageId)
|
||||||
|
@ -607,16 +597,6 @@ def outboxUndoLike(baseDir: str,httpPrefix: str, \
|
||||||
print('DEBUG: c2s undo like request arrived in outbox')
|
print('DEBUG: c2s undo like request arrived in outbox')
|
||||||
|
|
||||||
messageId=messageJson['object']['object'].replace('/activity','')
|
messageId=messageJson['object']['object'].replace('/activity','')
|
||||||
if '/statuses/' not in messageId:
|
|
||||||
if debug:
|
|
||||||
print('DEBUG: c2s undo like object is not a status')
|
|
||||||
return
|
|
||||||
if '/users/' not in messageId and \
|
|
||||||
'/channel/' not in messageId and \
|
|
||||||
'/profile/' not in messageId:
|
|
||||||
if debug:
|
|
||||||
print('DEBUG: c2s undo like object has no nickname')
|
|
||||||
return
|
|
||||||
if ':' in domain:
|
if ':' in domain:
|
||||||
domain=domain.split(':')[0]
|
domain=domain.split(':')[0]
|
||||||
postFilename=locatePost(baseDir,nickname,domain,messageId)
|
postFilename=locatePost(baseDir,nickname,domain,messageId)
|
||||||
|
|
Loading…
Reference in New Issue