Exemplo n.º 1
0
    def getCurrentUser(self):
        """ Gets the current authorized user's data

        Returns:
            :obj:`splitwise.user.CurrentUser`: CurrentUser object containing user data
        """
        content = self.__makeRequest(Splitwise.GET_CURRENT_USER_URL)
        content = json.loads(content)
        return CurrentUser(content["user"])
Exemplo n.º 2
0
    def updateUser(self, user):
        """ Updates the user.

        Args:
            :obj:`splitwise.user.CurrentUser`: User object with atleast id set

        Returns:
            tuple: tuple containing:
              user(:obj:`splitwise.user.CurrentUser`): Object with User detail

              errors(:obj:`splitwise.error.SplitwiseError`): Object representing errors
        """

        if user.getId() is None:
            raise SplitwiseBadRequestException(
                "User ID is required to update user")

        user_data = user.__dict__

        try:
            content = self.__makeRequest(Splitwise.UPDATE_USER_URL, 'POST',
                                         user_data)
        except SplitwiseNotAllowedException as e:
            e.setMessage("You are not allowed to access user with id %d" %
                         user.getId())
            raise
        except SplitwiseNotFoundException as e:
            e.setMessage("User with id %d does not exist" % user.getId())
            raise
        content = json.loads(content)

        user = None
        errors = None
        if "user" in content:
            if content["user"] is not None:
                user = CurrentUser(content["user"])

        if "errors" in content:
            if len(content['errors']) != 0:
                errors = SplitwiseError(content["errors"])

        return user, errors
Exemplo n.º 3
0
    def getCurrentUser(self):

        content = self.__makeRequest(Splitwise.GET_CURRENT_USER_URL)
        content = json.loads(content.decode("utf-8"))
        return CurrentUser(content["user"])