Exemplo n.º 1
0
    def get_custom_social_post(self):

        doc = list(self.db.socialPosts.aggregate([{'$match': {'source': 'custom post'}}]))

        print(list(doc))
        if doc is None:
            return None

        social_post_list = []
        for post in doc:
            custom_post_item = SocialPost()
            custom_post_item.set_dictionary(post)
            social_post_list.append(custom_post_item)

        return social_post_list
Exemplo n.º 2
0
    def get_random_social_post(self) -> SocialPost:

        if len(self.random_social_post_list) == 0:
            return None
        else:
            if self.reset_counter >= len(self.random_social_post_list):
                # when we went through all posts once we reset counter and shuffle list
                # so we dont repeat the same circle of posts every time
                self.reset_counter = 0
                random.shuffle(self.random_social_post_list)

            post = self.random_social_post_list[self.reset_counter]
            self.reset_counter = self.reset_counter + 1

        print(post)
        if post is None:
            return None

        social_post = SocialPost()
        social_post.set_dictionary(post)
        return social_post
Exemplo n.º 3
0
    def get_google_calendar_posts(self):

        timestamp_var = datetime.utcnow().timestamp()

        doc = list(self.db.socialPosts.aggregate([
            {'$match': {'validFrom': {'$lte': timestamp_var},
                        'validTo': {'$gte': timestamp_var},
                        'source': 'Google calendar'}},
            {'$sort': {'start': 1}}
        ]))

        if doc is None:
            return None

        social_post_list = []
        for post in doc:
            custom_post_item = SocialPost()
            custom_post_item.set_dictionary(post)
            social_post_list.append(custom_post_item)

        return social_post_list