Realm

gno.land/r/gnoland/boards2/v1

Rendered output

Boards: Create Board

← Back to boards

Boards are by default listed by the realm but they can optionally be created so they are only found by their URL.

They can also be created to be open so anyone is allowed to create new threads and also to comment on any thread within the open board.

<gno-form exec="CreateBoard"> <gno-input name="name" placeholder="Board name" required="true" /> <gno-input type="radio" name="listed" value="true" checked="true" description="Should board be publicly listed?" /> <gno-input type="radio" name="listed" value="false" /> <gno-input type="radio" name="open" value="true" description="Should anyone be allowed to create threads and comments?" /> <gno-input type="radio" name="open" value="false" checked="true" /> </gno-form>

Done? Return to boards

Query (read-only)

non-crossing functions · no tx, no wallet needed
AreRealmMembersLocked() → bool
GetBoard(boardID uint64) → *gno.land/p/gnoland/boards.Board
GetFlaggingThreshold(boardID uint64) → int
HasMemberRole(boardID uint64, member string, role string) → bool
IsBanned(boardID uint64, user string) → bool
IsBoardFrozen(boardID uint64) → bool
IsMember(boardID uint64, user string) → bool
IsRealmLocked() → bool
IsThreadFrozen(boardID uint64, threadID uint64) → bool
IterateRealmMembers(offset int, fn func(gno.land/p/gnoland/boards.User) bool) → bool

All exported functions (41)

show raw signatures
NameParamsReturns
SetHelp [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "content", "Type": "string", "Value": ""}]
SetPermissions [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "p", "Type": "interface {HasPermission func(.uverse.address, gno.land/p/gnoland/boards.Permission) bool; HasRole func(.uverse.address, gno.land/p/gnoland/boards.Role) bool; HasUser func(.uverse.address) bool; IterateUsers func(int, int, gno.land/p/gnoland/boards.UsersIterFn) bool; RemoveUser func(.uverse.address) bool; SetUserRoles func(.uverse.address, ...gno.land/p/gnoland/boards.Role); UsersCount func() int; WithPermission func(.uverse.address, gno.land/p/gnoland/boards.Permission, gno.land/p/gnoland/boards.Args, func())}", "Value": ""}]
SetRealmNotice [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "message", "Type": "string", "Value": ""}]
GetBoardIDFromName [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "name", "Type": "string", "Value": ""}] [{"Name": ".res_0", "Type": "uint64", "Value": ""}, {"Name": "found", "Type": "bool", "Value": ""}]
CreateBoard [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "name", "Type": "string", "Value": ""}, {"Name": "listed", "Type": "bool", "Value": ""}, {"Name": "open", "Type": "bool", "Value": ""}] [{"Name": ".res.0", "Type": "uint64", "Value": ""}]
RenameBoard [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "name", "Type": "string", "Value": ""}, {"Name": "newName", "Type": "string", "Value": ""}]
CreateThread [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "title", "Type": "string", "Value": ""}, {"Name": "body", "Type": "string", "Value": ""}] [{"Name": ".res.0", "Type": "uint64", "Value": ""}]
CreateReply [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threadID", "Type": "uint64", "Value": ""}, {"Name": "replyID", "Type": "uint64", "Value": ""}, {"Name": "body", "Type": "string", "Value": ""}] [{"Name": ".res.0", "Type": "uint64", "Value": ""}]
CreateRepost [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threadID", "Type": "uint64", "Value": ""}, {"Name": "destinationBoardID", "Type": "uint64", "Value": ""}, {"Name": "title", "Type": "string", "Value": ""}, {"Name": "body", "Type": "string", "Value": ""}] [{"Name": ".res.0", "Type": "uint64", "Value": ""}]
DeleteThread [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threadID", "Type": "uint64", "Value": ""}]
DeleteReply [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threadID", "Type": "uint64", "Value": ""}, {"Name": "replyID", "Type": "uint64", "Value": ""}]
EditThread [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threadID", "Type": "uint64", "Value": ""}, {"Name": "title", "Type": "string", "Value": ""}, {"Name": "body", "Type": "string", "Value": ""}]
EditReply [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threadID", "Type": "uint64", "Value": ""}, {"Name": "replyID", "Type": "uint64", "Value": ""}, {"Name": "body", "Type": "string", "Value": ""}]
RemoveMember [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "member", "Type": "string", "Value": ""}]
IsMember [{"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "user", "Type": "string", "Value": ""}] [{"Name": ".res.0", "Type": "bool", "Value": ""}]
HasMemberRole [{"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "member", "Type": "string", "Value": ""}, {"Name": "role", "Type": "string", "Value": ""}] [{"Name": ".res.0", "Type": "bool", "Value": ""}]
ChangeMemberRole [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "member", "Type": "string", "Value": ""}, {"Name": "role", "Type": "string", "Value": ""}]
IterateRealmMembers [{"Name": "offset", "Type": "int", "Value": ""}, {"Name": "fn", "Type": "func(gno.land/p/gnoland/boards.User) bool", "Value": ""}] [{"Name": "halted", "Type": "bool", "Value": ""}]
GetBoard [{"Name": "boardID", "Type": "uint64", "Value": ""}] [{"Name": ".res.0", "Type": "*gno.land/p/gnoland/boards.Board", "Value": ""}]
Ban [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "user", "Type": "string", "Value": ""}, {"Name": "hours", "Type": "uint", "Value": ""}, {"Name": "reason", "Type": "string", "Value": ""}]
Unban [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "user", "Type": "string", "Value": ""}, {"Name": "reason", "Type": "string", "Value": ""}]
IsBanned [{"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "user", "Type": "string", "Value": ""}] [{"Name": ".res.0", "Type": "bool", "Value": ""}]
SetFlaggingThreshold [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threshold", "Type": "int", "Value": ""}]
GetFlaggingThreshold [{"Name": "boardID", "Type": "uint64", "Value": ""}] [{"Name": ".res.0", "Type": "int", "Value": ""}]
FlagThread [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threadID", "Type": "uint64", "Value": ""}, {"Name": "reason", "Type": "string", "Value": ""}]
FlagReply [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threadID", "Type": "uint64", "Value": ""}, {"Name": "replyID", "Type": "uint64", "Value": ""}, {"Name": "reason", "Type": "string", "Value": ""}]
FreezeBoard [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}]
UnfreezeBoard [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}]
IsBoardFrozen [{"Name": "boardID", "Type": "uint64", "Value": ""}] [{"Name": ".res.0", "Type": "bool", "Value": ""}]
FreezeThread [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threadID", "Type": "uint64", "Value": ""}]
UnfreezeThread [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threadID", "Type": "uint64", "Value": ""}]
IsThreadFrozen [{"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "threadID", "Type": "uint64", "Value": ""}] [{"Name": ".res.0", "Type": "bool", "Value": ""}]
InviteMember [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "user", "Type": "string", "Value": ""}, {"Name": "role", "Type": "string", "Value": ""}]
InviteMembers [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "invites", "Type": "...gno.land/r/gnoland/boards2/v1.Invite", "Value": ""}]
RequestInvite [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}]
AcceptInvite [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "user", "Type": "string", "Value": ""}]
RevokeInvite [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "boardID", "Type": "uint64", "Value": ""}, {"Name": "user", "Type": "string", "Value": ""}]
LockRealm [{"Name": ".arg_0", "Type": "interface {Address func() .uverse.address; Coins func() .uverse.gnocoins; Origin func() .uverse.realm; PkgPath func() string; Previous func() .uverse.realm; Send func(.uverse.gnocoins, .uverse.address) .uverse.error; String func() string}", "Value": ""}, {"Name": "lockRealmMembers", "Type": "bool", "Value": ""}]
IsRealmLocked [{"Name": ".res.0", "Type": "bool", "Value": ""}]
AreRealmMembersLocked [{"Name": ".res.0", "Type": "bool", "Value": ""}]
Render [{"Name": "path", "Type": "string", "Value": ""}] [{"Name": ".res.0", "Type": "string", "Value": ""}]

Files

Storage

{
  "raw": "storage: 470407, deposit: 47040700"
}