Skip to content

Commit 776912b

Browse files
authored
Ens setname bugfix (HemeraProtocol#158)
* add contract😒
1 parent c0c22c9 commit 776912b

File tree

2 files changed

+39
-1
lines changed

2 files changed

+39
-1
lines changed

indexer/modules/custom/hemera_ens/ens_conf.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@
5151
"0xc55079a6ab7a123746806748d847228afe1d2397": "BulkRegister",
5252
"0x000000000000509081d6fcd3ee63e791ad1db763": "NOT Verified",
5353
"0xc71930b83cbabfeb35bedaaf2122e41595179b14": "NOT Verified",
54+
"0xb3f4598d27bc18f3a7e155dba5e31083c9e1ec3f": "NOT Verified",
55+
"0xfc0a4a934410f34a9bb8b4f28bed6b960c943a7e": "NOT Verified",
5456
}
5557

5658

indexer/modules/custom/hemera_ens/ens_handler.py

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,42 @@ def process(self, transaction, logs):
197197
method="setName",
198198
)
199199
]
200+
elif method == "setNameForAddr":
201+
d_tnx = self.decode_transaction(transaction)
202+
ens_middle = AttrDict(dic)
203+
ens_middle.log_index = -1
204+
name = None
205+
if d_tnx[1].get("name"):
206+
name = d_tnx[1]["name"]
207+
if not name or len(name) - 4 != name.find("."):
208+
return []
209+
address = None
210+
if d_tnx[1].get("addr"):
211+
address = d_tnx[1]["addr"]
212+
if not address:
213+
return []
214+
ens_middle.reverse_name = name
215+
ens_middle.node = namehash(name)
216+
ens_middle.address = address.lower()
217+
return [
218+
ENSMiddleD(
219+
transaction_hash=ens_middle.transaction_hash,
220+
log_index=ens_middle.log_index,
221+
transaction_index=ens_middle.transaction_index,
222+
block_number=ens_middle.block_number,
223+
block_hash=ens_middle.block_hash,
224+
block_timestamp=ens_middle.block_timestamp,
225+
from_address=ens_middle.from_address,
226+
to_address=ens_middle.to_address,
227+
reverse_name=ens_middle.reverse_name,
228+
address=ens_middle.address,
229+
node=ens_middle.node,
230+
reverse_node=None,
231+
reverse_base_node=REVERSE_BASE_NODE,
232+
event_name=None,
233+
method="setNameForAddr",
234+
)
235+
]
200236
res = []
201237
start = 0
202238
for idx, single_log in enumerate(logs):
@@ -282,7 +318,7 @@ def resolve_middle(self, record):
282318
node = record.get("node")
283319
if not node:
284320
raise Exception("pass")
285-
if event_name == "NameChanged" or record["method"] == "setName":
321+
if event_name == "NameChanged" or record["method"] == "setName" or record["method"] == "setNameForAddr":
286322
return ENSAddressD(
287323
address=address,
288324
reverse_node=record["reverse_node"],

0 commit comments

Comments
 (0)