Migration vers version 4 : restauration des outils. Prise en charge de 'allowedConten...
[ckeditor.git] / skins / ckeditor / plugins / plinn_image / plugin.js
index df81531..7e343ce 100644 (file)
@@ -35,6 +35,7 @@ function openPlinnImageDialog(path, editor) {
        win.dialogArguments = new Object();
        win.dialogArguments.editor = editor;
        win.dialogArguments.pluginPath = path;
+       win.dialogArguments.CKEDITOR = CKEDITOR;
 }
 
 
@@ -48,19 +49,25 @@ CKEDITOR.plugins.add( 'plinn_image',
                editor.on('instanceReady', function(){
                        editor.on('getData',
                                function(evt) {
-                                       var body = evt.editor.document.$.body;
-                                       var images = body.getElementsByTagName('IMG');
+                                       var tmpDiv = document.createElement('div');
+                                       tmpDiv.innerHTML = evt.data.dataValue;
+                                       var images = tmpDiv.getElementsByTagName('IMG');
                                        for (var i = 0 ; i < images.length ; i++)
                                                updateImageSizeUrlParameters(images[i]);
-                                       evt.data.dataValue = evt.editor.document.$.body.innerHTML;
+                                       evt.data.dataValue = tmpDiv.innerHTML;
                                }
                        );
                });
                var pluginPath = this.path;
+               var allowed = 'img[alt,!src]{border-style,border-width,float,height,margin,margin-bottom,margin-left,margin-right,margin-top,width}';
+               var required = 'img[alt,src]';
                var command = editor.addCommand('plinn_image',
                        {
-                               exec : function(editor){openPlinnImageDialog(pluginPath, editor);}
-                       });
+                               exec : function(editor){openPlinnImageDialog(pluginPath, editor);},
+                               allowedContent: allowed,
+                               requiredContent: required
+                       }
+               );
                
                editor.ui.addButton('PlinnImage',
                        {
@@ -69,6 +76,7 @@ CKEDITOR.plugins.add( 'plinn_image',
                                command : 'plinn_image'
                        });
        }
+       
 });
 
 })();