1 function check_save(){ |
1 function check_save(){ |
2 var newVersion = $('#id_new_version').attr('checked') ; |
2 var newVersion = $('#id_new_version').attr('checked') ; |
3 var commentsKept = $('#id_keep_comments').attr('checked') ; |
3 var commentsKept = $('#id_keep_comments').attr('checked') ; |
4 |
4 |
5 var new_content = $('#id_content').val() ; |
5 if (commentsKept) { |
6 |
6 submit_edit_form(); |
7 var o=CKEDITOR.instances['id_content']; |
7 } |
8 if (o) new_content=o.getData(); |
8 else { |
9 |
9 if (!newVersion) { |
10 var new_format = $('#id_format').val() ; |
10 var message = gettext("You chose not to create a new version all comments will be deleted") ; |
11 var mess = gettext( 'Should these comments be detached (i.e. kept with no scope) or removed from new version?') ; |
11 message += '<br />' ; |
12 |
12 message += gettext( 'Do you want to continue?') ; |
13 if (commentsKept) { |
13 $('#confirm_all_removed_dlg').html(message) ; |
14 var pre_edit_url = tb_conf['pre_edit_url'] ; |
14 $('#confirm_all_removed_dlg').dialog('open') ; |
15 $.ajax({ |
|
16 url: pre_edit_url, |
|
17 type:'POST', |
|
18 dataType:"json", |
|
19 data: { "new_content": new_content, "new_format": new_format}, |
|
20 success: function(obj){ |
|
21 nb_removed = obj['nb_removed']; |
|
22 if (newVersion) { |
|
23 if (nb_removed == 0) { |
|
24 submit_edit_form(); |
|
25 } |
|
26 else { |
|
27 var message = ngettext( |
|
28 '%(nb_comments)s comment applies to text that was modified.', |
|
29 '%(nb_comments)s comments apply to text that was modified.', |
|
30 nb_removed) ; |
|
31 message += '<br />' ; |
|
32 message += mess ; |
|
33 message = interpolate(message,{'nb_comments':nb_removed}, true) ; |
|
34 |
|
35 $('#remove_scope_choice_dlg').html(message) ; |
|
36 $('#remove_scope_choice_dlg').dialog('open') ; |
|
37 } |
|
38 } |
|
39 else { |
|
40 if (nb_removed == 0) { |
|
41 submit_edit_form(); |
|
42 } |
|
43 else { |
|
44 var message = ngettext( |
|
45 '%(nb_comments)s comment applies to text that was modified.', |
|
46 '%(nb_comments)s comments apply to text that was modified.', |
|
47 nb_removed) ; |
|
48 message += '<br />' ; |
|
49 message += gettext( '(We suggest you create a new version)') ; |
|
50 message += '<br />' ; |
|
51 message += mess ; |
|
52 message = interpolate(message,{'nb_comments':nb_removed}, true) ; |
|
53 |
|
54 $('#remove_scope_choice_dlg').html(message) ; |
|
55 $('#remove_scope_choice_dlg').dialog('open') ; |
|
56 } |
|
57 } |
|
58 }, |
|
59 error: function(msg){ |
|
60 alert("error: " + msg); |
|
61 } |
|
62 }); |
|
63 } |
15 } |
64 else { |
16 else { |
65 if (!newVersion) { |
17 submit_edit_form() ; |
66 |
|
67 var message = gettext("You chose not to create a new version all comments will be deleted") ; |
|
68 message += '<br />' ; |
|
69 message += gettext( 'Do you want to continue?') ; |
|
70 $('#confirm_all_removed_dlg').html(message) ; |
|
71 $('#confirm_all_removed_dlg').dialog('open') ; |
|
72 } |
|
73 else { |
|
74 submit_edit_form() ; |
|
75 } |
|
76 } |
18 } |
|
19 } |
77 } |
20 } |
78 |
21 |
79 function submit_edit_form() { |
22 function submit_edit_form() { |
80 needToConfirm = false; |
23 needToConfirm = false; |
81 $('#edit_form').submit(); |
24 $('#edit_form').submit(); |
88 } ; |
31 } ; |
89 buttons[gettext('Yes')] = function() { |
32 buttons[gettext('Yes')] = function() { |
90 $(this).dialog('close');submit_edit_form(); |
33 $(this).dialog('close');submit_edit_form(); |
91 } ; |
34 } ; |
92 |
35 |
93 $('#confirm_all_removed_dlg').dialog({ |
36 $('#confirm_all_removed_dlg').dialog({ |
94 bgiframe: true, |
37 bgiframe: true, |
95 autoOpen: false, |
38 autoOpen: false, |
96 title :gettext('Warning'), |
39 title :gettext('Warning'), |
97 modal: true, |
40 modal: true, |
98 buttons:buttons |
41 buttons:buttons |
99 }) ; |
42 }) ; |
100 |
|
101 var buttons0 = {}; |
|
102 buttons0[gettext('Detach')] = function() {$(this).dialog('close');$('#cancel_modified_scopes').val("1");submit_edit_form();} ; |
|
103 buttons0[gettext('Remove')] = function() {$(this).dialog('close');$('#cancel_modified_scopes').val("0");submit_edit_form();} ; |
|
104 buttons0[gettext('Cancel')] = function() {$(this).dialog('close');} ; |
|
105 |
43 |
106 $('#remove_scope_choice_dlg').dialog({ |
44 $("#save").click(function() { check_save() ;}) ; |
107 bgiframe: true, |
|
108 autoOpen: false, |
|
109 title :gettext('Warning'), |
|
110 modal: true, |
|
111 buttons:buttons0 |
|
112 }) ; |
|
113 |
|
114 $("#save").click(function() { check_save() ;}) ; |
|
115 }) ; |
45 }) ; |