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

memba_dao_candidature_v3 state

Back to all declarations

MinDeposit

int64

// 10 GNOT in ugnot

Value

10000000

DepositMultiply

int64

// 10x on re-application

Value

10

MaxApplyCount

untyped bigint

// Maximum re-applications (prevents int64 overflow at 10^17)

Value

(10 <untyped> bigint)

MaxBioLen

untyped bigint

Value

(5000 <untyped> bigint)

MaxSkillsLen

untyped bigint

Value

(5000 <untyped> bigint)

MaxAdmins

untyped bigint

// Maximum number of admin addresses

Value

(20 <untyped> bigint)

MaxApplications

untyped bigint

// Global cap to prevent unbounded state growth

Value

(1000 <untyped> bigint)

Application

type

Value

memba_dao_candidature_v3.Application

applications

*avl.Tree

// address -> \*Application

Open
OID
065b80…c03b:34
applications details

Inspect pointer

applyCount

*avl.Tree

// address -> int (total apply count, persists across withdrawals)

Open
OID
065b80…c03b:36
applyCount details

Inspect pointer

admins

*avl.Tree

// address -> bool (authorized callers for MarkApproved/MarkRejected)

Open
OID
065b80…c03b:38
admins details

Inspect pointer

paused

bool

Value

false

owner

.uverse.address

Value

<gnolang.StringValue>

Apply

func(bio string, skills string)

Apply submits a membership application with a deposit. The caller must send at least MinDeposit \* (10 ^ previousAttempts) ugnot.

Open
OID
065b80…c03b:14
Apply details

Inspect func

Withdraw

func()

Withdraw allows an applicant to withdraw their pending application and reclaim deposit.

Open
OID
065b80…c03b:15
Withdraw details

Inspect func

MarkApproved

func(applicant .uverse.address)

MarkApproved is called by authorized admins to mark an application as approved. Only addresses in the admin allowlist can call this function.

Open
OID
065b80…c03b:16
MarkApproved details

Inspect func

MarkRejected

func(applicant .uverse.address)

MarkRejected is called by authorized admins to mark an application as rejected. Only addresses in the admin allowlist can call this function.

Open
OID
065b80…c03b:17
MarkRejected details

Inspect func

AddAdmin

func(addr .uverse.address)

AddAdmin adds an address to the admin allowlist. Only the owner can call this.

Open
OID
065b80…c03b:18
AddAdmin details

Inspect func

RemoveAdmin

func(addr .uverse.address)

RemoveAdmin removes an address from the admin allowlist. Only the owner can call this.

Open
OID
065b80…c03b:19
RemoveAdmin details

Inspect func

TransferOwnership

func(newOwner .uverse.address)

TransferOwnership transfers realm ownership to a new address. The new owner is also added as admin. The old owner remains as admin (the new owner can remove them via RemoveAdmin if desired). Only the current owner can call this.

Open
OID
065b80…c03b:20
TransferOwnership details

Inspect func

IsAdmin

func(addr .uverse.address) bool

IsAdmin returns whether an address is in the admin allowlist.

Open
OID
065b80…c03b:21
IsAdmin details

Inspect func

ListAdmins

func() string

ListAdmins returns all admin addresses as a comma-separated string.

Open
OID
065b80…c03b:23
ListAdmins details

Inspect func

GetApplication

func(addr string) string

GetApplication returns the application for a given address (or empty if none).

Open
OID
065b80…c03b:24
GetApplication details

Inspect func

renderApplication

func(addr string) string
Open
OID
065b80…c03b:27
renderApplication details

Inspect func

sanitizeForRender

func(s string) string

sanitizeForRender strips markdown-sensitive characters to prevent injection.

Open
OID
065b80…c03b:28
sanitizeForRender details

Inspect func

assertCallerIsAdmin

func()
Open
OID
065b80…c03b:29
assertCallerIsAdmin details

Inspect func

assertCallerIsOwner

func()
Open
OID
065b80…c03b:30
assertCallerIsOwner details

Inspect func

assertValidAddress

func(addr .uverse.address)
Open
OID
065b80…c03b:31
assertValidAddress details

Inspect func

getApplyCount

func(addr .uverse.address) int
Open
OID
065b80…c03b:32
getApplyCount details

Inspect func

formatGNOT

func(ugnot int64) string
Open
OID
065b80…c03b:33
formatGNOT details

Inspect func
MinDeposit : int64 =10000000
DepositMultiply : int64 =10
MaxApplyCount : untyped bigint =(10 <untyped> bigint)
MaxBioLen : untyped bigint =(5000 <untyped> bigint)
MaxSkillsLen : untyped bigint =(5000 <untyped> bigint)
MaxAdmins : untyped bigint =(20 <untyped> bigint)
MaxApplications : untyped bigint =(1000 <untyped> bigint)
Application : type =memba_dao_candidature_v3.Application
applications : *avl.Tree Inspect
applyCount : *avl.Tree Inspect
admins : *avl.Tree Inspect
paused : bool =false
owner : .uverse.address =<gnolang.StringValue>
init.13 : func() Inspect
assertNotPaused : func() Inspect
Pause : func() Inspect
Unpause : func() Inspect
IsPaused : func() bool Inspect
Apply : func(bio string, skills string) Inspect
Withdraw : func() Inspect
MarkApproved : func(applicant .uverse.address) Inspect
MarkRejected : func(applicant .uverse.address) Inspect
AddAdmin : func(addr .uverse.address) Inspect
RemoveAdmin : func(addr .uverse.address) Inspect
TransferOwnership : func(newOwner .uverse.address) Inspect
IsAdmin : func(addr .uverse.address) bool Inspect
GetOwner : func() .uverse.address Inspect
ListAdmins : func() string Inspect
GetApplication : func(addr string) string Inspect
Render : func(path string) string Inspect
renderHome : func() string Inspect
renderApplication : func(addr string) string Inspect
sanitizeForRender : func(s string) string Inspect
assertCallerIsAdmin : func() Inspect
assertCallerIsOwner : func() Inspect
assertValidAddress : func(addr .uverse.address) Inspect
getApplyCount : func(addr .uverse.address) int Inspect
formatGNOT : func(ugnot int64) string Inspect