示例#1
0
def index(request):
    if request.method == 'POST':
        content = request.POST.get('content', '')
        image_link = request.POST.get('image_link', '')
        video_link, status = get_normalized_video_link(
            request.POST.get('video_link', ''))
        if status != 0:
            return {'status': 'error'}
        if len(content) <= 0 or len(content) > 200 or len(
                image_link) > 200 or len(video_link) > 200:
            return {'status': 'error'}
        if len(image_link) > 0 and len(video_link) > 0:
            return {'status': 'error'}
        original_id = None
        if 'original_id' in request.POST:
            if (Post.objects.filter(original_id=original_id).count() == 0):
                return {'status': 'error'}
            original_id = int(request.POST.get('original_id'))
        post = request.user.posts.create(content=content,
                                         original_id=original_id,
                                         image_link=image_link,
                                         video_link=video_link)

        # get users who has been @, and send notification to them
        notify_at_users(content, "post", post.id, request.user)
        return {'status': 'ok'}
示例#2
0
文件: posts.py 项目: davidsun/Hudson
def comments(request, post_id):
    if request.method == 'POST':
        if len(request.POST.get('content', '')) > 0 and len(request.POST.get('content', '')) <= 200:
            content = request.POST['content']
            post = get_object_or_404(Post, pk=post_id)
            post.comments.create(content=content, user=request.user)

            # get users who has been @, and send notification to them
            notify_at_users(content, "post_comment", post.id, request.user)
            return {'status': 'ok'}
        else:
            return {'status': 'error'}
    else:
        post = Post.objects.get(id=post_id)
        comments = list(post.comments.prefetch_related("user").all())
        for comment in comments:
            comment.content = filter_at_users(comment.content)
        return comments
示例#3
0
def comments(request, post_id):
    if request.method == 'POST':
        if len(request.POST.get('content', '')) > 0 and len(
                request.POST.get('content', '')) <= 200:
            content = request.POST['content']
            post = get_object_or_404(Post, pk=post_id)
            post.comments.create(content=content, user=request.user)

            # get users who has been @, and send notification to them
            notify_at_users(content, "post_comment", post.id, request.user)
            return {'status': 'ok'}
        else:
            return {'status': 'error'}
    else:
        post = Post.objects.get(id=post_id)
        comments = list(post.comments.prefetch_related("user").all())
        for comment in comments:
            comment.content = filter_at_users(comment.content)
        return comments
示例#4
0
文件: posts.py 项目: davidsun/Hudson
def index(request):
    if request.method == 'POST':
        content = request.POST.get('content', '')
        image_link = request.POST.get('image_link', '')
        video_link, status = get_normalized_video_link(request.POST.get('video_link', ''))
        if status != 0:
            return {'status': 'error'}
        if len(content) <= 0 or len(content) > 200 or len(image_link) > 200 or len(video_link) > 200:
            return {'status': 'error'}
        if len(image_link) > 0 and len(video_link) > 0:
            return {'status': 'error'}
        original_id = None
        if 'original_id' in request.POST:
            if (Post.objects.filter(original_id=original_id).count() == 0):
                return {'status': 'error'}
            original_id = int(request.POST.get('original_id'))
        post = request.user.posts.create(content=content, original_id=original_id, image_link=image_link, video_link=video_link)

        # get users who has been @, and send notification to them
        notify_at_users(content, "post", post.id, request.user)
        return {'status': 'ok'}