admin.gno
0.55 Kb ยท 24 lines
1package guestbook
2
3import (
4 "gno.land/p/demo/ownable"
5 "gno.land/p/demo/seqid"
6)
7
8var owner = ownable.NewWithOrigin()
9
10// AdminDelete removes the guestbook message with the given ID.
11// The user will still be marked as having submitted a message, so they
12// won't be able to re-submit a new message.
13func AdminDelete(cur realm, signatureID string) {
14 owner.AssertOwnedByPrevious()
15 id, err := seqid.FromString(signatureID)
16 if err != nil {
17 panic(err)
18 }
19 idb := id.Binary()
20 if !guestbook.Has(idb) {
21 panic("signature does not exist")
22 }
23 guestbook.Remove(idb)
24}