Changeset 7038
- Timestamp:
- 01/27/08 23:27:39 (10 months ago)
- Files:
-
- django/trunk/django/contrib/comments/models.py (modified) (16 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/contrib/comments/models.py
r6742 r7038 1 import datetime 2 1 3 from django.db import models 2 4 from django.contrib.contenttypes.models import ContentType … … 5 7 from django.utils.translation import ugettext_lazy as _ 6 8 from django.conf import settings 7 import datetime8 9 9 10 MIN_PHOTO_DIMENSION = 5 10 11 MAX_PHOTO_DIMENSION = 1000 11 12 12 # option codes for comment-form hidden fields13 # Option codes for comment-form hidden fields. 13 14 PHOTOS_REQUIRED = 'pr' 14 15 PHOTOS_OPTIONAL = 'pa' … … 17 18 IS_PUBLIC = 'ip' 18 19 19 # what users get if they don't have any karma20 # What users get if they don't have any karma. 20 21 DEFAULT_KARMA = 5 21 22 KARMA_NEEDED_BEFORE_DISPLAYED = 3 23 22 24 23 25 class CommentManager(models.Manager): … … 62 64 return False 63 65 66 64 67 class Comment(models.Model): 68 """A comment by a registered user.""" 65 69 user = models.ForeignKey(User, raw_id_admin=True) 66 70 content_type = models.ForeignKey(ContentType) … … 87 91 site = models.ForeignKey(Site) 88 92 objects = CommentManager() 93 89 94 class Meta: 90 95 verbose_name = _('comment') 91 96 verbose_name_plural = _('comments') 92 97 ordering = ('-submit_date',) 98 93 99 class Admin: 94 100 fields = ( … … 135 141 136 142 def _fill_karma_cache(self): 137 " Helper function that populates good/bad karma caches"143 """Helper function that populates good/bad karma caches.""" 138 144 good, bad = 0, 0 139 145 for k in self.karmascore_set: … … 164 170 'comment': self.comment, 'domain': self.site.domain, 'url': self.get_absolute_url()} 165 171 172 166 173 class FreeComment(models.Model): 167 # A FreeComment is a comment by a non-registered user.174 """A comment by a non-registered user.""" 168 175 content_type = models.ForeignKey(ContentType) 169 176 object_id = models.IntegerField(_('object ID')) … … 176 183 approved = models.BooleanField(_('approved by staff')) 177 184 site = models.ForeignKey(Site) 185 178 186 class Meta: 179 187 verbose_name = _('free comment') 180 188 verbose_name_plural = _('free comments') 181 189 ordering = ('-submit_date',) 190 182 191 class Admin: 183 192 fields = ( … … 213 222 get_content_object.short_description = _('Content object') 214 223 224 215 225 class KarmaScoreManager(models.Manager): 216 226 def vote(self, user_id, comment_id, score): … … 234 244 return int(round((4.5 * score) + 5.5)) 235 245 246 236 247 class KarmaScore(models.Model): 237 248 user = models.ForeignKey(User) … … 240 251 scored_date = models.DateTimeField(_('score date'), auto_now=True) 241 252 objects = KarmaScoreManager() 253 242 254 class Meta: 243 255 verbose_name = _('karma score') … … 247 259 def __unicode__(self): 248 260 return _("%(score)d rating by %(user)s") % {'score': self.score, 'user': self.user} 261 249 262 250 263 class UserFlagManager(models.Manager): … … 266 279 f.save() 267 280 281 268 282 class UserFlag(models.Model): 269 283 user = models.ForeignKey(User) … … 271 285 flag_date = models.DateTimeField(_('flag date'), auto_now_add=True) 272 286 objects = UserFlagManager() 287 273 288 class Meta: 274 289 verbose_name = _('user flag') … … 278 293 def __unicode__(self): 279 294 return _("Flag by %r") % self.user 295 280 296 281 297 class ModeratorDeletion(models.Model): … … 283 299 comment = models.ForeignKey(Comment) 284 300 deletion_date = models.DateTimeField(_('deletion date'), auto_now_add=True) 301 285 302 class Meta: 286 303 verbose_name = _('moderator deletion')
