Search Apps Documentation Source Content File Folder Download Copy Actions Download State String Boolean Number Struct Map Slice Pointer Function Closure Reference Nil Package Type Interface Unknown

badges_reads.gno

1.18 Kb · 16 lines
 1package memba_weighted_host
 2
 3import "strconv"
 4
 5func (h *Host) badgesConfigJSON() string {
 6	if h.badgesPolicy == nil {
 7		return ""
 8	}
 9	return `,"badgesPolicy":{"target":` + quoteJSON(BadgesPath) + `,"successor":` + quoteJSON(string(h.badgesPolicy.Successor())) + `,"adminCategory":"critical","unpauseCategory":"financial","emergencyPause":true,"returnStagesOnly":true,"invalidatesOtherProposals":true}`
10}
11func badgesStateJSON(s BadgesState) string {
12	return `{"owner":` + quoteJSON(string(s.Owner)) + `,"pendingOwner":` + quoteJSON(string(s.PendingOwner)) + `,"paused":` + strconv.FormatBool(s.Paused) + `,"adminCount":` + quoteJSON(strconv.Itoa(s.AdminCount)) + `,"ownerAdmin":` + strconv.FormatBool(s.OwnerAdmin) + `,"daoAdmin":` + strconv.FormatBool(s.DAOAdmin) + `,"successorAdmin":` + strconv.FormatBool(s.SuccessorAdmin) + `,"subjectAdmin":` + strconv.FormatBool(s.SubjectAdmin) + `}`
13}
14func badgesActionJSON(a BadgesAction, s BadgesState) string {
15	return `{"type":"badges","target":` + quoteJSON(BadgesPath) + `,"operation":` + quoteJSON(string(a.Kind())) + `,"recipient":` + quoteJSON(string(a.Recipient())) + `,"subject":` + quoteJSON(string(a.Subject())) + `,"before":` + badgesStateJSON(s) + `}`
16}