src/cm/media/js/site/text_edit.js
changeset 480 b9b802261109
parent 341 053551f213fb
child 565 95a5c06c4008
equal deleted inserted replaced
479:49a1afacaea0 480:b9b802261109
     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 }) ;