--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/cm/media/js/site/text_edit.js Mon Dec 14 17:58:20 2009 +0100
@@ -0,0 +1,90 @@
+function check_save(){
+ needToConfirm = false;
+
+ var newVersion = $('#id_new_version').attr('checked') ;
+ var commentsKept = $('#id_keep_comments').attr('checked') ;
+
+ var new_content = $('#id_content').val()
+ var new_format = $('#id_format').val()
+
+ if (commentsKept) {
+ var pre_edit_url = tb_conf['pre_edit_url'] ;
+
+ $.ajax({
+ url: pre_edit_url,
+ type:'POST',
+ dataType:"json",
+ data: { "new_content": new_content, "new_format": new_format},
+ success: function(obj){
+ nb_removed = obj['nb_removed'];
+ if (newVersion) {
+ if (nb_removed == 0) {
+ $('#edit_form').submit();
+ }
+ else {
+ var message = ngettext(
+ '%(nb_comments)s comment will be removed because the text it applies to has been changed.',
+ '%(nb_comments)s comments will be removed because the text they apply to has been changed.',
+ nb_removed) ;
+ message += '<br />' ;
+ message += gettext( 'Do you want to continue?') ;
+ message = interpolate(message,{'nb_comments':nb_removed}, true) ;
+
+ $('#check_save_dialog').html(message) ;
+ $('#check_save_dialog').dialog('open') ;
+ }
+ }
+ else {
+ if (nb_removed == 0) {
+ $('#edit_form').submit();
+ }
+ else {
+ var message = ngettext(
+ '%(nb_comments)s comment will be lost because the text it applies to has been changed.',
+ '%(nb_comments)s comments will be lost because the text they apply to has been changed.',
+ nb_removed) ;
+ message += '<br />' ;
+ message += gettext( '(We suggest you create a new version)') ;
+ message += '<br />' ;
+ message += gettext( 'Do you want to continue?') ;
+ message = interpolate(message,{'nb_comments':nb_removed}, true) ;
+
+ $('#check_save_dialog').html(message) ;
+ $('#check_save_dialog').dialog('open') ;
+ }
+ }
+ },
+ error: function(msg){
+ alert("error: " + msg);
+ }
+ });
+ }
+ else {
+ if (!newVersion) {
+ var message = gettext("Since you chose not to create a new version all comments will be deleted") ;
+ message += '<br />' ;
+ message += gettext( 'Do you want to continue?') ;
+ $('#check_save_dialog').html(message) ;
+ $('#check_save_dialog').dialog('open') ;
+ }
+ else {
+ $('#edit_form').submit();
+ }
+ }
+}
+
+$(function() {
+ var buttons = {};
+ buttons[gettext('No')] = function() {$(this).dialog('close');} ;
+ buttons[gettext('Yes')] = function() {$(this).dialog('close');$('#edit_form').submit();} ;
+
+ $('#check_save_dialog').dialog({
+ bgiframe: true,
+ autoOpen: false,
+ title :gettext('Warning'),
+ modal: true,
+ buttons:buttons
+ }) ;
+
+ $("#save").click(function() { check_save() ;}) ;
+}) ;