TransactionSEALED
$*?$▒#░□╱$$▫□&○░╳?@▫%■█░&▫●?$●▒&!▓▫▓%!▒&░%~◆◆▒╳▫#╳╲○#▫○░%▪╳!?◇▓□
Transaction ID
Execution Fee
0.00000924 FLOWScript Arguments
0clubIDUInt64
2789
1clubNameString
Stockholm METASQUAD
2clubDescriptionString
3stadiumString
Bluegold Arena
4logoVersionString
471b1d61885ecec6aa83ef258cde9a6b
5divisionUInt32
7
6ownerAddrAddress
Cadence Script
1import MFLClub from 0x8ebcbfd516b1da27
2import MFLAdmin from 0x8ebcbfd516b1da27
3
4/**
5 This tx updates the metadata of a club.
6 **/
7
8 transaction(clubID: UInt64, clubName: String, clubDescription: String, stadium: String, logoVersion: String, division: UInt32, ownerAddr: Address) {
9 let adminProxyRef: auth(MFLAdmin.AdminProxyAction) &MFLAdmin.AdminProxy
10 let ownerCollectionRef: &MFLClub.Collection
11
12 prepare(acct: auth(BorrowValue) &Account) {
13 self.adminProxyRef = acct.storage.borrow<auth(MFLAdmin.AdminProxyAction) &MFLAdmin.AdminProxy>(from: MFLAdmin.AdminProxyStoragePath) ?? panic("Could not borrow admin proxy reference")
14 self.ownerCollectionRef = getAccount(ownerAddr).capabilities.borrow<&MFLClub.Collection>(
15 MFLClub.CollectionPublicPath
16 ) ?? panic("Could not get receiver reference to the NFT Collection")
17 }
18
19 execute {
20 let clubAdminClaimCap = self.adminProxyRef.getClaimCapability(name: "ClubAdminClaim") ?? panic("ClubAdminClaim capability not found")
21 let clubAdminClaimRef = clubAdminClaimCap.borrow<auth(MFLClub.ClubAdminAction) &MFLClub.ClubAdmin>() ?? panic("Could not borrow ClubAdmin")
22
23 let clubData = MFLClub.getClubData(id: clubID) ?? panic("Club not found")
24 let clubMetadata = clubData.getMetadata()
25 clubMetadata.insert(key: "name", clubName)
26 clubMetadata.insert(key: "description", clubDescription)
27 clubMetadata.insert(key: "stadium", stadium)
28 clubMetadata.insert(key: "logoVersion", logoVersion)
29 clubMetadata.insert(key: "division", division)
30
31 clubAdminClaimRef.updateClubMetadata(id: clubID, metadata: clubMetadata, collectionRefOptional: self.ownerCollectionRef)
32 }
33 }