diff --git a/includes/ckeditor.utils.js b/includes/ckeditor.utils.js index ad2d318..a14a41e 100644 --- a/includes/ckeditor.utils.js +++ b/includes/ckeditor.utils.js @@ -430,7 +430,11 @@ Drupal.behaviors.ckeditor = function (context) { if (Drupal.behaviors.filefieldButtons) { $('input[id$="-add-more"]:submit').each(function(){ $(this).mousedown(function(){ - $('.form-item textarea.ckeditor-mod', $(this).parent().prev().html()).each(function(){ + var imgFieldContainer = $(this).parent().prev(); + if (imgFieldContainer.hasClass("description")) { + imgFieldContainer = imgFieldContainer.prev(); + } + $('.form-item textarea.ckeditor-processed', imgFieldContainer.html()).each(function(){ if (typeof CKEDITOR.instances[$(this).attr('id')] != 'undefined') { imagefield_data[$(this).attr('id')] = CKEDITOR.instances[$(this).attr('id')].getData(); } @@ -438,6 +442,21 @@ Drupal.behaviors.ckeditor = function (context) { }); }); }); + if ($('.form-item textarea', $(context)).length) { + var url = document.location.pathname; + if (url.indexOf('/') == 0 ) url = url.substr(1); + var path = Drupal.settings.basePath; + var imgfields = $('.form-item textarea', $(context)); + imgfields.each(function() { + var imagefield_id = $(this).attr('id'); + if (!CKEDITOR.instances[imagefield_id]){ + Drupal.ckeditorOn(imagefield_id); + if (imagefield_data[imagefield_id]) { + CKEDITOR.instances[imagefield_id].setData(imagefield_data[imagefield_id]); + } + } + }); + } if ($('.form-item textarea', $(context)).length == 1) { var url = document.location.pathname; if (url.indexOf('/') == 0 ) url = url.substr(1); @@ -454,6 +473,9 @@ Drupal.behaviors.ckeditor = function (context) { if ($(data).length > 0) { Drupal.settings.ckeditor.autostart[imagefield_id] = true; Drupal.ckeditorOn(imagefield_id); + if (imagefield_data[imagefield_id]) { + CKEDITOR.instances[imagefield_id].setData(imagefield_data[imagefield_id]); + } } } });