class NotEnoughLeftException(Exception):
def __init__(self, action, limit):
- super(NotEnoughRepPointsException, self).__init__(
+ super(NotEnoughLeftException, self).__init__(
_("""
Sorry, but you don't have enough %(action)s left for today..<br />
The limit is %(limit)s per day..<br />
@command
def vote_post(request, id, vote_type):
- post = get_object_or_404(Node, id=id)
+ post = get_object_or_404(Node, id=id).leaf
vote_score = vote_type == 'up' and 1 or -1
user = request.user
votes_left = int(settings.MAX_VOTES_PER_DAY) - user_vote_count_today + (vote_type == 'none' and -1 or 1)
if int(settings.START_WARN_VOTES_LEFT) >= votes_left:
- response['message'] = _("You have %(nvotes) %(tvotes) left today.") % \
+ response['message'] = _("You have %(nvotes)s %(tvotes)s left today.") % \
{'nvotes': votes_left, 'tvotes': ungettext('vote', 'votes', votes_left)}
return response
if not user.can_comment(post):
raise NotEnoughRepPointsException( _('comment'))
- comment = Comment(user=user, node=post)
+ comment = Comment(parent=post)
comment_text = request.POST.get('comment', '').strip()
if not len(comment_text):
raise Exception(_("Comment is empty"))
- comment.comment=comment_text
- comment.save()
+ comment.create_revision(user, body=comment_text)
- if comment._is_new:
+ if comment.active_revision.revision == 1:
return {
'commands': {
'insert_comment': [
commands = {}
if answer.accepted:
- answer.unmark_accepted()
+ answer.unmark_accepted(user)
commands['unmark_accepted'] = [answer.id]
else:
- try:
- accepted = question.answers.get(accepted=True)
- accepted.unmark_accepted()
+ if question.accepted_answer is not None:
+ accepted = question.accepted_answer
+ accepted.unmark_accepted(user)
commands['unmark_accepted'] = [accepted.id]
- except:
- #import sys, traceback
- #traceback.print_exc(file=sys.stdout)
- pass
answer.mark_accepted(user)
commands['mark_accepted'] = [answer.id]