Files
zxq5.dev/backend/sql/functions/server.surql
T
FantasyPvP 1707309d95 data
2024-12-02 17:39:27 +00:00

26 lines
784 B
Plaintext

DEFINE FUNCTION server::join($server: uuid, $entity: uuid) {
LET $user = (SELECT displayname FROM Entity WHERE id = $entity);
RELATE Entity:entity -> HasServer -> Server:server CONTENT {
joined: time::now(),
nickname: $user.displayname
};
}
DEFINE FUNCTION server::leave($server: uuid, $entity: uuid) {
DELETE HasServer WHERE out = Server:server AND in = Entity:entity;
DELETE HasRole WHERE in = Entity:entity AND ->Role.server = Server:server;
}
DEFINE FUNCTION server::new($name: string, $creator: uuid) {
LET $id = rand::uuid::v4();
CREATE Server CONTENT {
created: time::now(),
name: $name,
owner: $creator,
id: $id,
icon_uri: fn::icon::default(),
};
fn::server::join($id, $creator)
}