forked from LBRYCommunity/lbry-sdk
Adds comment_edit
command
This commit is contained in:
parent
163d176f0a
commit
7e1b1ca730
1 changed files with 55 additions and 0 deletions
|
@ -4533,6 +4533,7 @@ class Daemon(metaclass=JSONRPCServerType):
|
||||||
"channel_name": (str) Name of the channel this was posted under, prepended with a '@',
|
"channel_name": (str) Name of the channel this was posted under, prepended with a '@',
|
||||||
"channel_id": (str) The Channel Claim ID that this comment was posted under,
|
"channel_id": (str) The Channel Claim ID that this comment was posted under,
|
||||||
"signature": (str) The signature of the comment,
|
"signature": (str) The signature of the comment,
|
||||||
|
"signing_ts": (str) The timestamp used to sign the comment,
|
||||||
"channel_url": (str) Channel's URI in the ClaimTrie,
|
"channel_url": (str) Channel's URI in the ClaimTrie,
|
||||||
"parent_id": (str) Comment this is replying to, (None) if this is the root,
|
"parent_id": (str) Comment this is replying to, (None) if this is the root,
|
||||||
"timestamp": (int) The time at which comment was entered into the server at, in nanoseconds.
|
"timestamp": (int) The time at which comment was entered into the server at, in nanoseconds.
|
||||||
|
@ -4558,6 +4559,60 @@ class Daemon(metaclass=JSONRPCServerType):
|
||||||
response['is_claim_signature_valid'] = comment_client.is_comment_signed_by_channel(response, channel)
|
response['is_claim_signature_valid'] = comment_client.is_comment_signed_by_channel(response, channel)
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
@requires(WALLET_COMPONENT)
|
||||||
|
async def jsonrpc_comment_edit(self, comment, comment_id, wallet_id=None):
|
||||||
|
"""
|
||||||
|
Edit a comment published as one of your channels.
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
comment_edit (<comment> | --comment=<comment>)
|
||||||
|
(<comment_id> | --comment_id=<comment_id>)
|
||||||
|
[--wallet_id=<wallet_id>]
|
||||||
|
|
||||||
|
Options:
|
||||||
|
--comment=<comment> : (str) New comment replacing the old one
|
||||||
|
--comment_id=<comment_id> : (str) Hash identifying the comment to edit
|
||||||
|
--wallet_id=<wallet_id : (str) restrict operation to specific wallet
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
(dict) Comment object if edit was successful, (None) otherwise
|
||||||
|
{
|
||||||
|
"comment": (str) The actual string as inputted by the user,
|
||||||
|
"comment_id": (str) The Comment's unique identifier,
|
||||||
|
"channel_name": (str) Name of the channel this was posted under, prepended with a '@',
|
||||||
|
"channel_id": (str) The Channel Claim ID that this comment was posted under,
|
||||||
|
"signature": (str) The signature of the comment,
|
||||||
|
"signing_ts": (str) Timestamp used to sign the most recent signature,
|
||||||
|
"channel_url": (str) Channel's URI in the ClaimTrie,
|
||||||
|
"parent_id": (str) Comment this is replying to, (None) if this is the root,
|
||||||
|
"timestamp": (int) The time at which comment was entered into the server at, in nanoseconds.
|
||||||
|
}
|
||||||
|
"""
|
||||||
|
channel = await comment_client.jsonrpc_post(
|
||||||
|
self.conf.comment_server,
|
||||||
|
'get_channel_from_comment_id',
|
||||||
|
comment_id=comment_id
|
||||||
|
)
|
||||||
|
if 'error' in channel:
|
||||||
|
return
|
||||||
|
|
||||||
|
wallet = self.wallet_manager.get_wallet_or_default(wallet_id)
|
||||||
|
# channel = await self.get_channel_or_none(wallet, None, **channel)
|
||||||
|
channel_claim = await self.get_channel_or_none(wallet, [], **channel)
|
||||||
|
if channel_claim is None:
|
||||||
|
return
|
||||||
|
|
||||||
|
edited_comment = {
|
||||||
|
'comment_id': comment_id,
|
||||||
|
'comment': comment,
|
||||||
|
'channel_id': channel_claim.claim_id,
|
||||||
|
'channel_name': channel_claim.claim_name
|
||||||
|
}
|
||||||
|
comment_client.sign_comment(edited_comment, channel_claim)
|
||||||
|
return await comment_client.jsonrpc_post(
|
||||||
|
self.conf.comment_server, 'edit_comment', edited_comment
|
||||||
|
)
|
||||||
|
|
||||||
@requires(WALLET_COMPONENT)
|
@requires(WALLET_COMPONENT)
|
||||||
async def jsonrpc_comment_abandon(self, comment_id, wallet_id=None):
|
async def jsonrpc_comment_abandon(self, comment_id, wallet_id=None):
|
||||||
"""
|
"""
|
||||||
|
|
Loading…
Reference in a new issue