9 from django.forms.util import ErrorList |
9 from django.forms.util import ErrorList |
10 from cm.models_base import generate_key |
10 from cm.models_base import generate_key |
11 from cm.security import get_texts_with_perm, has_perm, get_viewable_comments, \ |
11 from cm.security import get_texts_with_perm, has_perm, get_viewable_comments, \ |
12 has_perm_on_text |
12 has_perm_on_text |
13 from cm.utils import get_among, get_among, get_int |
13 from cm.utils import get_among, get_among, get_int |
|
14 from cm.utils.html import on_content_receive |
14 from cm.utils.comment_positioning import compute_new_comment_positions, \ |
15 from cm.utils.comment_positioning import compute_new_comment_positions, \ |
15 insert_comment_markers |
16 insert_comment_markers |
16 from cm.utils.spannifier import spannify |
17 from cm.utils.spannifier import spannify |
17 from cm.views import get_keys_from_dict, get_textversion_by_keys_or_404, get_text_by_keys_or_404, redirect |
18 from cm.views import get_keys_from_dict, get_textversion_by_keys_or_404, get_text_by_keys_or_404, redirect |
18 from cm.views.export import content_export2, content_export |
19 from cm.views.export import content_export2, content_export |
667 def text_pre_edit(request, key, adminkey=None): |
668 def text_pre_edit(request, key, adminkey=None): |
668 text = get_text_by_keys_or_404(key) |
669 text = get_text_by_keys_or_404(key) |
669 |
670 |
670 text_version = text.get_latest_version() |
671 text_version = text.get_latest_version() |
671 comments = text_version.get_comments() ; |
672 comments = text_version.get_comments() ; |
672 new_content = request.POST['new_content'] |
|
673 new_format = request.POST['new_format'] |
673 new_format = request.POST['new_format'] |
|
674 new_content = on_content_receive(request.POST['new_content'], new_format) |
674 |
675 |
675 # TODO: RBE : si commentaire mal forme : (position non existante : boom par key error) |
676 # TODO: RBE : si commentaire mal forme : (position non existante : boom par key error) |
676 _tomodify_comments, toremove_comments = compute_new_comment_positions(text_version.content, text_version.format, new_content, new_format, comments) |
677 _tomodify_comments, toremove_comments = compute_new_comment_positions(text_version.content, text_version.format, new_content, new_format, comments) |
677 return HttpResponse(simplejson.dumps({'nb_removed' : len(toremove_comments) })) |
678 return HttpResponse(simplejson.dumps({'nb_removed' : len(toremove_comments) })) |
678 |
679 |