13 from cm.security import get_texts_with_perm, has_perm, get_viewable_comments, \ |
13 from cm.security import get_texts_with_perm, has_perm, get_viewable_comments, \ |
14 has_perm_on_text |
14 has_perm_on_text |
15 from cm.utils import get_among, get_among, get_int |
15 from cm.utils import get_among, get_among, get_int |
16 from cm.utils.comment_positioning import compute_new_comment_positions, \ |
16 from cm.utils.comment_positioning import compute_new_comment_positions, \ |
17 insert_comment_markers |
17 insert_comment_markers |
18 from cm.utils.html import cleanup_textarea |
|
19 from cm.utils.spannifier import spannify |
18 from cm.utils.spannifier import spannify |
20 from cm.views import get_keys_from_dict, get_textversion_by_keys_or_404, get_text_by_keys_or_404, redirect |
19 from cm.views import get_keys_from_dict, get_textversion_by_keys_or_404, get_text_by_keys_or_404, redirect |
21 from cm.views.export import content_export2, content_export |
20 from cm.views.export import content_export2, content_export |
22 from cm.views.user import AnonUserRoleForm, cm_login |
21 from cm.views.user import AnonUserRoleForm, cm_login |
23 from difflib import unified_diff |
22 from difflib import unified_diff |
481 embed_code = "" |
480 embed_code = "" |
482 content = "" |
481 content = "" |
483 if v1_nid and not v2_nid: |
482 if v1_nid and not v2_nid: |
484 embed_code = embed_html(key, 'id="text_view_frame" name="text_view_frame"', v1.key) |
483 embed_code = embed_html(key, 'id="text_view_frame" name="text_view_frame"', v1.key) |
485 else: |
484 else: |
486 content = get_uniffied_inner_diff_table(cleanup_textarea(v1.content), cleanup_textarea(v2.content)) |
485 content = get_uniffied_inner_diff_table(v1.content, v2.content) |
487 |
486 |
488 template_dict = {'paired_versions' : paired_versions, |
487 template_dict = {'paired_versions' : paired_versions, |
489 'text' : text, |
488 'text' : text, |
490 'v1_nid' : v1_nid, |
489 'v1_nid' : v1_nid, |
491 'v2_nid' : v2_nid, |
490 'v2_nid' : v2_nid, |