Example #1
0
def recommend_post_command(request, post_pk):
    '''
    ! #1234 - Recommend post
    '''
    user = request.user
    post = PostInterface(user).get_post(post_pk)

    if post.user_id == user.pk:
        return '''You can't recommend your own messages.'''

    recommend, created = Recommend.admin_objects.get_or_create(
            user=request.user, post=post)

    if created or recommend.is_deleted:
        if created:
            send_alert(post.user,
                    '@%s recommend your post %s' % (
                        request.user.username, post.get_number()),
                    sender=request.get_sender())
            send_broadcast(user,
                    render_post(post, recommend_by=user),
                    exclude_user=[user, post.user])

        if recommend.is_deleted:
            recommend.is_deleted = False
            recommend.save()
        return '''Message added to your recommendations.'''
    else:
        recommend.delete()
        return '''Message deleted from your recommendations.'''
Example #2
0
def comment_add_command(request, post_pk, message, comment_number=None):
    '''
    #1234 Blah-blah-blah - Answer to message #1234
    #1234/5 Blah - Answer to reply #1234/5
    '''
    comment = PostInterface(request.user).add_reply(message, post_pk,
            comment_number, from_client=request.from_jid.resource)

    text = '''Reply posted\n%s %s''' % (
                    comment.get_number(),
                    comment.get_full_url()
                    )
    return text
Example #3
0
def show_message_command(request, post_pk,
        comment_number=None, show_comments=None):

    '''
    #1234 - Show message
    #1234\\1 - Show reply
    #1234+ - Show message with replies
    '''
    post_i = PostInterface(request.user)
    if not comment_number:
        post = post_i.get_post(post_pk)
        body = render_post(post, with_comments=bool(show_comments))
    else:
        comment = post_i.get_comment(post_pk, comment_number)
        body = render_comment(comment)
    return body[:-1]
Example #4
0
    def make_replies_for_post(self, post, count=None):
        if not count:
            max_count = 10
            if random.randrange(50) == 0:
                max_count = 20000
            elif random.randrange(10) == 0:
                max_count = 300
            elif random.randrange(3) == 0:
                max_count = 50
            count = random.randrange(0, max_count)

        for i in xrange(count):
            user = self.get_user()
            number = None
            if random.randrange(2) == 1:
                comments = Comment.objects.filter(post=post)
                if comments:
                    number = self.get_random_slice(comments).number
            pi = PostInterface(user)
            pi.add_reply(lorem_ipsum.paragraph(), post.id, number)
Example #5
0
 def generate_fish(self):
     while True:
         user = self.get_user()
         pi = PostInterface(user)
         post = pi.add_post(lorem_ipsum.paragraph(), tags=self.get_tags())
         self.make_replies_for_post(post)