aboutsummaryrefslogtreecommitdiff
path: root/lib/models/role.ml
blob: 10272a7147be86c32759bb40edb999be6f03384b (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
module Make(Http : S.Http) = struct
    open Role_t

    let edit_role ~body role = Http.guild_role_edit role.guild_id role.id body

    let allow_mention role =
        edit_role ~body:(`Assoc [("mentionable", `Bool true)]) role
    
    let delete role = Http.guild_role_remove role.guild_id role.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
end