Package django :: Package contrib :: Package comments :: Package views :: Module comments
[hide private]
[frames] | no frames]

Source Code for Module django.contrib.comments.views.comments

  1  from django.core import validators 
  2  from django import oldforms 
  3  from django.core.mail import mail_admins, mail_managers 
  4  from django.http import Http404 
  5  from django.core.exceptions import ObjectDoesNotExist 
  6  from django.shortcuts import render_to_response 
  7  from django.template import RequestContext 
  8  from django.contrib.comments.models import Comment, FreeComment, RATINGS_REQUIRED, RATINGS_OPTIONAL, IS_PUBLIC 
  9  from django.contrib.contenttypes.models import ContentType 
 10  from django.contrib.auth.forms import AuthenticationForm 
 11  from django.http import HttpResponseRedirect 
 12  from django.utils.text import normalize_newlines 
 13  from django.conf import settings 
 14  from django.utils.translation import ungettext, ugettext as _ 
 15  from django.utils.encoding import smart_unicode 
 16  import base64, datetime 
 17   
 18  COMMENTS_PER_PAGE = 20 
 19   
20 -class PublicCommentManipulator(AuthenticationForm):
21 "Manipulator that handles public registered comments"
22 - def __init__(self, user, ratings_required, ratings_range, num_rating_choices):
23 AuthenticationForm.__init__(self) 24 self.ratings_range, self.num_rating_choices = ratings_range, num_rating_choices 25 choices = [(c, c) for c in ratings_range] 26 def get_validator_list(rating_num): 27 if rating_num <= num_rating_choices: 28 return [validators.RequiredIfOtherFieldsGiven(['rating%d' % i for i in range(1, 9) if i != rating_num], _("This rating is required because you've entered at least one other rating."))] 29 else: 30 return []
31 self.fields.extend([ 32 oldforms.LargeTextField(field_name="comment", max_length=3000, is_required=True, 33 validator_list=[self.hasNoProfanities]), 34 oldforms.RadioSelectField(field_name="rating1", choices=choices, 35 is_required=ratings_required and num_rating_choices > 0, 36 validator_list=get_validator_list(1), 37 ), 38 oldforms.RadioSelectField(field_name="rating2", choices=choices, 39 is_required=ratings_required and num_rating_choices > 1, 40 validator_list=get_validator_list(2), 41 ), 42 oldforms.RadioSelectField(field_name="rating3", choices=choices, 43 is_required=ratings_required and num_rating_choices > 2, 44 validator_list=get_validator_list(3), 45 ), 46 oldforms.RadioSelectField(field_name="rating4", choices=choices, 47 is_required=ratings_required and num_rating_choices > 3, 48 validator_list=get_validator_list(4), 49 ), 50 oldforms.RadioSelectField(field_name="rating5", choices=choices, 51 is_required=ratings_required and num_rating_choices > 4, 52 validator_list=get_validator_list(5), 53 ), 54 oldforms.RadioSelectField(field_name="rating6", choices=choices, 55 is_required=ratings_required and num_rating_choices > 5, 56 validator_list=get_validator_list(6), 57 ), 58 oldforms.RadioSelectField(field_name="rating7", choices=choices, 59 is_required=ratings_required and num_rating_choices > 6, 60 validator_list=get_validator_list(7), 61 ), 62 oldforms.RadioSelectField(field_name="rating8", choices=