aboutsummaryrefslogtreecommitdiff
path: root/lib/models/guild/role.ml
blob: 55e5813fc1ee7c46e355733b3df9a2661946446b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
include Role_t

let edit_role ~body (role:t) =
    let `Role_id id = role.id in
    let `Guild_id guild_id = role.guild_id in
    Http.guild_role_edit guild_id id body

let allow_mention role =
    edit_role ~body:(`Assoc [("mentionable", `Bool true)]) role

let delete (role:t) =
    let `Role_id id = role.id in
    let `Guild_id guild_id = role.guild_id in
    Http.guild_role_remove guild_id id

let disallow_mention role =
    edit_role ~body:(`Assoc [("mentionable", `Bool false)]) role

let hoist role =
    edit_role ~body:(`Assoc [("hoist", `Bool true)]) role

let set_colour ~colour role =
    edit_role ~body:(`Assoc [("color", `Int colour)]) role

let set_name ~name role =
    edit_role ~body:(`Assoc [("name", `String name)]) role

let unhoist role =
    edit_role ~body:(`Assoc [("hoist", `Bool false)]) role