Ejemplo n.º 1
0
    def refresh(self, alternate_endpoint=None):
        """Reload resource data from remote service."""
        self.data_dict = request.get(
            url=alternate_endpoint or (self.get_endpoint() + "/" + self["id"]), session=self.session()
        )

        return self
Ejemplo n.º 2
0
    def tasks(self,
              refresh=False,
              include_deleted=False,
              include_done=False,
              include_checked=True,
              include_unchecked=True):
        """Return a remote or chached task list for user."""
        if not self.tasks_list or refresh:
            params = {
                'includeDeleted': str(include_deleted).lower(),
                'includeDone': str(include_done).lower(),
            }

            tasks_data = request.get(url=CONSTANTS.get('TASKS_URL'),
                                     session=self.session(),
                                     params=params)

            self.tasks_list = [
                Task(data_dict=task, user=self) for task in tasks_data
            ]

        return Task.filter_tasks(self.tasks_list,
                                 include_deleted=include_deleted,
                                 include_done=include_done,
                                 include_checked=include_checked,
                                 include_unchecked=include_unchecked)
Ejemplo n.º 3
0
    def refresh(self, alternate_endpoint=None):
        """Reload resource data from remote service."""
        self.data_dict = request.get(url=alternate_endpoint or
                                     (self.get_endpoint() + '/' + self['id']),
                                     session=self.session())

        return self
Ejemplo n.º 4
0
    def tasks(self,
              refresh=False,
              include_deleted=False,
              include_done=False,
              include_checked=True,
              include_unchecked=True):
        """Return a remote or chached task list for user."""
        if not self.tasks_list or refresh:
            params = {
                'includeDeleted': str(include_deleted).lower(),
                'includeDone': str(include_done).lower(),
            }

            tasks_data = request.get(
                url=CONSTANTS.get('TASKS_URL'),
                session=self.session(),
                params=params
            )

            self.tasks_list = [Task(data_dict=task, user=self) for task in tasks_data]

        return Task.filter_tasks(self.tasks_list,
                                 include_deleted=include_deleted,
                                 include_done=include_done,
                                 include_checked=include_checked,
                                 include_unchecked=include_unchecked)
Ejemplo n.º 5
0
    def get_user(self, refresh=False):
        """Return a user object currently logged in."""
        if not self.user or refresh:
            data = request.get(url=CONSTANTS.get('ME_URL'),
                               session=self.session)

            data.update({'password': self.password})
            self.password = None
            self.user = User(data_dict=data, session=self.session)

        return self.user
Ejemplo n.º 6
0
    def pending_tasks(self, refresh=False):
        """
        Return a list of dicts representing a pending task that was shared with current user.

        Empty list otherwise.
        """
        if not self._pending_tasks or refresh:
            response_obj = request.get(url=self.get_endpoint() + '/pending',
                                       session=self.session())

            self._pending_tasks = response_obj['pendingTasks']

        return self._pending_tasks or []
Ejemplo n.º 7
0
    def get_user(self, refresh=False):
        """Return a user object currently logged in."""
        if not self.user or refresh:
            data = request.get(
                url=CONSTANTS.get('ME_URL'),
                session=self.session
            )

            data.update({'password': self.password})
            self.password = None
            self.user = User(data_dict=data, session=self.session)

        return self.user
Ejemplo n.º 8
0
    def pending_tasks(self, refresh=False):
        """
        Return a list of dicts representing a pending task that was shared with current user.

        Empty list otherwise.
        """
        if not self._pending_tasks or refresh:
            response_obj = request.get(
                url=self.get_endpoint() + '/pending',
                session=self.session()
            )

            self._pending_tasks = response_obj['pendingTasks']

        return self._pending_tasks or []
Ejemplo n.º 9
0
    def categories(self, refresh=False, include_deleted=False):
        """Return a remote or cached categories list for user."""
        if not self.categories_list or refresh:
            params = {
                'includeDeleted': str(include_deleted).lower(),
            }

            categories_data = request.get(
                url=CONSTANTS.get('CATEGORIES_URL'),
                session=self.session(),
                params=params
            )

            self.categories_list = [
                Category(data_dict=category, user=self) for category in categories_data
            ]

        result = self.categories_list
        if not include_deleted:
            result = [cat for cat in result if not cat['isDeleted']]

        return result