nextcloud.api_wrappers.group.Group.get_subadmins()   A
last analyzed

Complexity

Conditions 1

Size

Total Lines 8
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 2
dl 0
loc 8
rs 10
c 0
b 0
f 0
cc 1
nop 2
1
# -*- coding: utf-8 -*-
2
from nextcloud.base import WithRequester
3
4
5
class Group(WithRequester):
6
    API_URL = "/ocs/v1.php/cloud/groups"
7
    SUCCESS_CODE = 100
8
9
    def get_groups(self, search=None, limit=None, offset=None):
10
        """
11
        Retrieve a list of groups from the Nextcloud server
12
13
        :param search: string, optional search string
14
        :param limit: int, optional limit value
15
        :param offset: int, optional offset value
16
        :return:
17
        """
18
        params = {
19
            'search': search,
20
            'limit': limit,
21
            'offset': offset
22
        }
23
        return self.requester.get(params=params)
24
25
    def add_group(self, gid):
26
        """
27
        Add a new group
28
29
        :param gid: str, group name
30
        :return:
31
        """
32
        msg = {"groupid": gid}
33
        return self.requester.post("", msg)
34
35
    def get_group(self, gid):
36
        """
37
        Retrieve a list of group members
38
39
        :param gid: str, group name
40
        :return:
41
        """
42
        return self.requester.get("{gid}".format(gid=gid))
43
44
    def get_subadmins(self, gid):
45
        """
46
        List subadmins of the group
47
48
        :param gid: str, group name
49
        :return:
50
        """
51
        return self.requester.get("{gid}/subadmins".format(gid=gid))
52
53
    def delete_group(self, gid):
54
        """
55
        Remove a group
56
57
        :param gid: str, group name
58
        :return:
59
        """
60
        return self.requester.delete("{gid}".format(gid=gid))
61