def update_content_comment(request, id = None): site_response = AjaxServiceResponse(success=False, message="whoops", message_description='No go. Try again later.') if (request.user.has_perm('UPDATE_ALL_COMMENTS')): try: if request.method == 'POST': comment = sanitizeCommentHtml(request.POST.get("comment", "")) comment_id = request.POST.get("comment-id", None) if (len(comment) > 5000): site_response = AjaxServiceResponse(success=False, message="too_long", message_description="Maximum Length is 5000 Characters (minus markup)") elif (comment_id): commentUpdate = Comment(comment_id=comment_id, comment=comment) service_response = client_update_content_comment(commentUpdate, request.user.session_id) if (service_response.success): site_response = AjaxServiceResponse(success=True, message="success", message_description="Updated!") except Exception: logger.error("Exception when updating a content comment:") logger.error(traceback.print_exc(8)) return HttpResponse(site_response.getXMLString())
def post_content_comment(request): commentFormPrefix="commentform" redirect = "/" errors={} try: # Check to see if we're coming here from a POST. If so, we've got work to do. if request.method == 'POST': redirect = request.POST.get('redirect', '/') id = request.POST.get('content-id', '/') if (request.user.has_perm('COMMENT')): commentForm = CommentReckoningForm(request.POST, prefix=commentFormPrefix) if (commentForm.is_valid()): comment = Comment(comment = sanitizeCommentHtml(commentForm.cleaned_data.get('comment')), poster_id = request.user.reckoner_id) comment_service_response = client_post_content_comment(comment, id, request.user.session_id) if not comment_service_response.success: logger.error("Failed to post comment to ID: " + id) messages.error(request, "Sorry! Reckonbot choked on that last comment! I'm looking into it, ASAP. - DK") else: for attr, value in commentForm.errors.iteritems(): logger.info("Invalid comment submitted: " + unicode(attr) + ": " + unicode(value)) errors[attr] = value request.session['errors'] = errors return HttpResponseRedirect(redirect) except Exception: logger.error("Exception when posting content comment:") logger.error(traceback.print_exc(8)) raise Exception