예제 #1
0
    def is_next_hidden(self, state, update: Update):
        length = len(
            DB.get_user_projects_by_activity_id(state['u_id'], state['a']))

        page_count = ceil(length / self.IN_PAGE)

        if page_count <= int(state['page']):
            return True
        return False
예제 #2
0
    def get_projects_buttons(self, state, update: Update):
        def get_keyboard_by_names(names):
            keyboard = list()

            for name in names:
                button = {
                    "name": name,
                    "action": "select_project",
                    "callback": True
                }

                keyboard.append([button])

            return keyboard

        projects = DB.get_user_projects_by_activity_id(state['u_id'],
                                                       state['a'])

        names = [project['name'] for project in projects]

        i = self.IN_PAGE * (int(state['page']) - 1)

        return get_keyboard_by_names(names[i:i + self.IN_PAGE])