src/cm/media/js/site/text_edit.js
author reno
Mon, 14 Dec 2009 17:58:20 +0100
changeset 66 7842b011403a
child 103 61fd17f9ab78
permissions -rw-r--r--
FIX : added edit.js for better pre-edit messages translations
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
66
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
     1
function check_save(){
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
     2
    needToConfirm = false;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
     3
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
     4
    var newVersion = $('#id_new_version').attr('checked') ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
     5
    var commentsKept = $('#id_keep_comments').attr('checked') ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
     6
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
     7
    var new_content = $('#id_content').val()
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
     8
    var new_format = $('#id_format').val()
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
     9
    
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    10
    if (commentsKept) {
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    11
        var pre_edit_url = tb_conf['pre_edit_url'] ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    12
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    13
        $.ajax({
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    14
           url: pre_edit_url,
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    15
           type:'POST',
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    16
           dataType:"json",
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    17
           data: { "new_content": new_content,  "new_format": new_format},
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    18
           success: function(obj){
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    19
               nb_removed = obj['nb_removed'];
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    20
               if (newVersion) {
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    21
                    if (nb_removed == 0) {
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    22
                        $('#edit_form').submit();
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    23
                    }
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    24
                    else {
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    25
                		var message = ngettext( 
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    26
                				'%(nb_comments)s comment will be removed because the text it applies to has been changed.',
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    27
                				'%(nb_comments)s comments will be removed because the text they apply to has been changed.', 
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    28
								nb_removed) ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    29
                		message += '<br />' ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    30
                		message += gettext( 'Do you want to continue?') ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    31
                		message = interpolate(message,{'nb_comments':nb_removed}, true) ;		
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    32
                		
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    33
                        $('#check_save_dialog').html(message) ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    34
                        $('#check_save_dialog').dialog('open') ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    35
                    }
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    36
               }
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    37
               else {                  
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    38
                   if (nb_removed == 0) {
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    39
                        $('#edit_form').submit();
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    40
                    }
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    41
                   else {
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    42
	               		var message = ngettext(  
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    43
	               				'%(nb_comments)s comment will be lost because the text it applies to has been changed.',
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    44
	               				'%(nb_comments)s comments will be lost because the text they apply to has been changed.',	               								
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    45
								nb_removed) ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    46
                		message += '<br />' ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    47
                		message += gettext( '(We suggest you create a new version)') ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    48
                		message += '<br />' ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    49
                		message += gettext( 'Do you want to continue?') ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    50
                		message = interpolate(message,{'nb_comments':nb_removed}, true) ;		
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    51
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    52
                 		$('#check_save_dialog').html(message) ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    53
                        $('#check_save_dialog').dialog('open') ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    54
                   }
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    55
               }
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    56
           },
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    57
           error: function(msg){
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    58
               alert("error: " + msg);
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    59
           }
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    60
        });
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    61
    }
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    62
    else {
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    63
        if (!newVersion) {
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    64
                var message = gettext("Since you chose not to create a new version all comments will be deleted") ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    65
        		message += '<br />' ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    66
        		message += gettext( 'Do you want to continue?') ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    67
                $('#check_save_dialog').html(message) ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    68
                $('#check_save_dialog').dialog('open') ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    69
        }
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    70
        else {
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    71
            $('#edit_form').submit();
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    72
        }
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    73
    }
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    74
}
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    75
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    76
$(function() {
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    77
	var buttons = {};
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    78
	buttons[gettext('No')] = function() {$(this).dialog('close');} ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    79
	buttons[gettext('Yes')] = function() {$(this).dialog('close');$('#edit_form').submit();} ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    80
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    81
    $('#check_save_dialog').dialog({
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    82
        bgiframe: true, 
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    83
        autoOpen: false,        
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    84
        title :gettext('Warning'),
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    85
        modal: true,
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    86
        buttons:buttons
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    87
    }) ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    88
    
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    89
    $("#save").click(function() { check_save() ;}) ;
7842b011403a FIX : added edit.js for better pre-edit messages translations
reno
parents:
diff changeset
    90
}) ;