Show More
@@ -1,5 +1,6 b'' | |||
|
1 | 1 | from datetime import datetime, timedelta, date |
|
2 | 2 | from datetime import time as dtime |
|
3 | import logging | |
|
3 | 4 | import os |
|
4 | 5 | from random import random |
|
5 | 6 | import time |
@@ -43,6 +44,8 b' SETTING_MODERATE = "moderate"' | |||
|
43 | 44 | |
|
44 | 45 | REGEX_REPLY = re.compile('>>(\d+)') |
|
45 | 46 | |
|
47 | logger = logging.getLogger(__name__) | |
|
48 | ||
|
46 | 49 | |
|
47 | 50 | class PostManager(models.Manager): |
|
48 | 51 | |
@@ -89,6 +92,8 b' class PostManager(models.Manager):' | |||
|
89 | 92 | self._delete_old_threads() |
|
90 | 93 | self.connect_replies(post) |
|
91 | 94 | |
|
95 | logger.info('Created post #%d' % post.id) | |
|
96 | ||
|
92 | 97 | return post |
|
93 | 98 | |
|
94 | 99 | def delete_post(self, post): |
@@ -96,6 +101,8 b' class PostManager(models.Manager):' | |||
|
96 | 101 | Deletes post and update or delete its thread |
|
97 | 102 | """ |
|
98 | 103 | |
|
104 | post_id = post.id | |
|
105 | ||
|
99 | 106 | thread = post.get_thread() |
|
100 | 107 | |
|
101 | 108 | if post.is_opening(): |
@@ -106,6 +113,8 b' class PostManager(models.Manager):' | |||
|
106 | 113 | |
|
107 | 114 | post.delete() |
|
108 | 115 | |
|
116 | logger.info('Deleted post #%d' % post_id) | |
|
117 | ||
|
109 | 118 | def delete_posts_by_ip(self, ip): |
|
110 | 119 | """ |
|
111 | 120 | Deletes all posts of the author with same IP |
@@ -133,6 +142,8 b' class PostManager(models.Manager):' | |||
|
133 | 142 | thread.last_edit_time = timezone.now() |
|
134 | 143 | thread.save() |
|
135 | 144 | |
|
145 | logger.info('Archived %d old threads' % num_threads_to_delete) | |
|
146 | ||
|
136 | 147 | def connect_replies(self, post): |
|
137 | 148 | """ |
|
138 | 149 | Connects replies to a post to show them as a reflink map |
@@ -357,6 +368,8 b' class Thread(models.Model):' | |||
|
357 | 368 | if self.can_bump(): |
|
358 | 369 | self.bump_time = timezone.now() |
|
359 | 370 | |
|
371 | logger.info('Bumped thread %d' % self.id) | |
|
372 | ||
|
360 | 373 | def get_reply_count(self): |
|
361 | 374 | return self.replies.count() |
|
362 | 375 |
@@ -1,5 +1,6 b'' | |||
|
1 | 1 | from datetime import datetime |
|
2 | 2 | import json |
|
3 | import logging | |
|
3 | 4 | from django.db import transaction |
|
4 | 5 | from django.http import HttpResponse |
|
5 | 6 | from django.shortcuts import get_object_or_404, render |
@@ -25,6 +26,8 b" DIFF_TYPE_JSON = 'json'" | |||
|
25 | 26 | STATUS_OK = 'ok' |
|
26 | 27 | STATUS_ERROR = 'error' |
|
27 | 28 | |
|
29 | logger = logging.getLogger(__name__) | |
|
30 | ||
|
28 | 31 | |
|
29 | 32 | @transaction.atomic |
|
30 | 33 | def api_get_threaddiff(request, thread_id, last_update_time): |
@@ -32,6 +35,8 b' def api_get_threaddiff(request, thread_i' | |||
|
32 | 35 | Gets posts that were changed or added since time |
|
33 | 36 | """ |
|
34 | 37 | |
|
38 | logger.info('Getting thread diff since %s' % last_update_time) | |
|
39 | ||
|
35 | 40 | thread = get_object_or_404(Post, id=thread_id).thread_new |
|
36 | 41 | |
|
37 | 42 | filter_time = datetime.fromtimestamp(float(last_update_time) / 1000000, |
@@ -95,6 +100,8 b' def api_add_post(request, opening_post_i' | |||
|
95 | 100 | 'errors': errors, |
|
96 | 101 | } |
|
97 | 102 | |
|
103 | logger.info('Added post via api. Status: %s' % status) | |
|
104 | ||
|
98 | 105 | return HttpResponse(content=json.dumps(response)) |
|
99 | 106 | |
|
100 | 107 | |
@@ -104,6 +111,8 b' def get_post(request, post_id):' | |||
|
104 | 111 | in threads list with 'truncated' get parameter. |
|
105 | 112 | """ |
|
106 | 113 | |
|
114 | logger.info('Getting post #%s' % post_id) | |
|
115 | ||
|
107 | 116 | post = get_object_or_404(Post, id=post_id) |
|
108 | 117 | |
|
109 | 118 | context = RequestContext(request) |
@@ -173,25 +173,32 b" CAPTCHA_OUTPUT_FORMAT = (u' %(hidden_fie" | |||
|
173 | 173 | LOGGING = { |
|
174 | 174 | 'version': 1, |
|
175 | 175 | 'disable_existing_loggers': False, |
|
176 | 'formatters': { | |
|
177 | 'verbose': { | |
|
178 | 'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s' | |
|
179 | }, | |
|
180 | 'simple': { | |
|
181 | 'format': '%(levelname)s %(asctime)s [%(module)s] %(message)s' | |
|
182 | }, | |
|
183 | }, | |
|
176 | 184 | 'filters': { |
|
177 | 185 | 'require_debug_false': { |
|
178 | 186 | '()': 'django.utils.log.RequireDebugFalse' |
|
179 | 187 | } |
|
180 | 188 | }, |
|
181 | 189 | 'handlers': { |
|
182 |
' |
|
|
183 |
'level': ' |
|
|
184 | 'filters': ['require_debug_false'], | |
|
185 | 'class': 'django.utils.log.AdminEmailHandler' | |
|
186 | } | |
|
190 | 'console': { | |
|
191 | 'level': 'DEBUG', | |
|
192 | 'class': 'logging.StreamHandler', | |
|
193 | 'formatter': 'simple' | |
|
194 | }, | |
|
187 | 195 | }, |
|
188 | 196 | 'loggers': { |
|
189 |
' |
|
|
190 |
'handlers': [' |
|
|
191 |
'level': ' |
|
|
192 | 'propagate': True, | |
|
193 |
|
|
|
194 | } | |
|
197 | 'boards': { | |
|
198 | 'handlers': ['console'], | |
|
199 | 'level': 'DEBUG', | |
|
200 | } | |
|
201 | }, | |
|
195 | 202 | } |
|
196 | 203 | |
|
197 | 204 | MARKUP_FIELD_TYPES = ( |
General Comments 0
You need to be logged in to leave comments.
Login now