213 return HttpResponse('') # no redirect because this is called by js |
213 return HttpResponse('') # no redirect because this is called by js |
214 |
214 |
215 @has_perm_on_text('can_view_text') # only protected by text_view / comment filtering done in view |
215 @has_perm_on_text('can_view_text') # only protected by text_view / comment filtering done in view |
216 def text_view_comments(request, key, version_key=None, adminkey=None): |
216 def text_view_comments(request, key, version_key=None, adminkey=None): |
217 text = get_text_by_keys_or_404(key) |
217 text = get_text_by_keys_or_404(key) |
|
218 |
|
219 read_only = False |
218 if version_key : |
220 if version_key : |
219 text_version = get_textversion_by_keys_or_404(version_key, adminkey, key) |
221 text_version = get_textversion_by_keys_or_404(version_key, adminkey, key) |
|
222 if settings.ALLOW_CLIENT_MODIF_ON_LAST_VERSION_ONLY : |
|
223 read_only = (text.last_text_version_id != text_version.id) |
220 else : |
224 else : |
221 text_version = text.get_latest_version() |
225 text_version = text.get_latest_version() |
222 |
226 |
223 comments = get_viewable_comments(request, text_version.comment_set.filter(reply_to__isnull=True),text) |
227 comments = get_viewable_comments(request, text_version.comment_set.filter(reply_to__isnull=True),text) |
224 filter_datas = get_filter_datas(request, text_version, text) |
228 filter_datas = get_filter_datas(request, text_version, text) |
225 |
229 |
226 get_params = simplejson.dumps(request.GET) |
230 get_params = simplejson.dumps(request.GET) |
227 wrapped_text_version, _ , _ = spannify(text_version.get_content()) |
231 wrapped_text_version, _ , _ = spannify(text_version.get_content()) |
231 'get_params' : get_params, |
235 'get_params' : get_params, |
232 'json_comments':jsonize(comments, request), |
236 'json_comments':jsonize(comments, request), |
233 'json_filter_datas':jsonize(filter_datas, request), |
237 'json_filter_datas':jsonize(filter_datas, request), |
234 'content' : wrapped_text_version, |
238 'content' : wrapped_text_version, |
235 'client_date_fmt' : settings.CLIENT_DATE_FMT, |
239 'client_date_fmt' : settings.CLIENT_DATE_FMT, |
|
240 'read_only' : read_only, |
236 } |
241 } |
237 return render_to_response('site/text_view_comments.html', |
242 return render_to_response('site/text_view_comments.html', |
238 template_dict, |
243 template_dict, |
239 context_instance=RequestContext(request)) |
244 context_instance=RequestContext(request)) |
240 def client_exchange(request): |
245 def client_exchange(request): |