-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathchange_asset_parameters.py
68 lines (55 loc) · 1.81 KB
/
change_asset_parameters.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import json
import click
from uptick.decorators import unlock, online
from uptick.main import main
from pprint import pprint
from bitshares.utils import formatTimeFromNow
from bitshares.asset import Asset
from bitshares.account import Account
from bitsharesbase.operations import Asset_update, Asset_update_bitasset
@main.command()
@click.option("--expiration", default=60 * 60 * 24 * 2)
@click.option("--account", default="xeroc")
@click.option("--review_period", default=3600)
@click.pass_context
@online
@unlock
def update(ctx, expiration, account, review_period):
""" Update parameters here
"""
asset = Asset("RUB", full=True)
bitasset = asset["bitasset_data"]
similar_to_asset = Asset("RUBLE", full=True)
similar_to_bitasset = similar_to_asset["bitasset_data"]
ops = list()
# ops.append(
# Asset_update(
# **{
# "fee": {"amount": 0, "asset_id": "1.3.0"},
# "issuer": asset["issuer"],
# "asset_to_update": asset["id"],
# "new_options": similar_to_asset["options"],
# "extensions": [],
# }
# )
# )
ops.append(
Asset_update_bitasset(
**{
"fee": {"amount": 0, "asset_id": "1.3.0"},
"issuer": asset["issuer"],
"asset_to_update": asset["id"],
"new_options": similar_to_bitasset["options"],
"extensions": [],
}
)
)
account = Account(account)
proposal = ctx.blockchain.new_proposal(
proposer=account, proposal_review=review_period, proposal_expiration=expiration
)
ctx.blockchain.finalizeOp(ops, account, "active", append_to=proposal)
tx = proposal.broadcast()
click.echo(json.dumps(tx, indent=4))
if __name__ == "__main__":
main()