Changeset 2090


Ignore:
Timestamp:
06/18/08 19:04:27 (7 years ago)
Author:
fredck
Message:

Added test for CKEDITOR including some core fixes that came from it.
Fixed the test page output.

Location:
CKEditor/branches/prototype/_source
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • CKEditor/branches/prototype/_source/core/ckeditor.js

    r2083 r2090  
    3737 
    3838                var loadedConfig = loadConfigLoaded[ customConfig ] || ( loadConfigLoaded[ customConfig ] = { editors : [] } ); 
    39                  
     39 
    4040                // If the custom config has already been downloaded, reuse it. 
    4141                if ( loadedConfig.fn ) 
     
    5353                { 
    5454                        // Add the editor to the list of editors waiting for this config. 
    55                         loadedConfig.editors.push( editor );  
     55                        loadedConfig.editors.push( editor ); 
    5656 
    5757                        // Load the custom configuration file. 
     
    7373                                                        loadConfig( editor ); 
    7474                                                }); 
    75                                          
     75 
    7676                                        delete loadedConfig.editors; 
    7777                                } ); 
    7878                } 
    79                  
     79 
    8080                return true; 
    8181        }; 
     
    8585        { 
    8686                var textarea = new CKEDITOR.dom.element( textarea ); 
    87                 textarea.hide(); 
    8887 
    8988                // Create the editor instance. 
    9089                var editor = new CKEDITOR.editor( textarea ); 
     90 
     91                // Abort it there is already an instance with that name. 
     92                if ( CKEDITOR.instances[ editor.name ] ) 
     93                        return; 
     94 
     95                textarea.hide(); 
     96 
    9197                CKEDITOR.instances[ editor.name ] = editor; 
    92                  
     98 
    9399                // Setup the lister for the "configloaded" event. 
    94100                editor.on( 'configloaded', function() 
     
    99105 
    100106                                // Fire the "instancecreated" event. 
    101                                 CKEDITOR.fire( 'instancecreated', editor.name, editor );                                 
     107                                CKEDITOR.fire( 'instancecreated', editor.name, editor ); 
    102108                        }); 
    103109 
  • CKEditor/branches/prototype/_source/core/ckeditor_basic.js

    r2083 r2090  
    2222CKEDITOR.event.implementOn( CKEDITOR ); 
    2323 
    24 /**  
     24/** 
    2525 * The class name used to identify <textarea> elements to be replace 
    2626 * by CKEditor instances. 
     
    4343CKEDITOR.replaceByClassEnabled = true; 
    4444 
    45 /**  
     45/** 
    4646 * Replaces a specific <textarea> with a CKEditor instance. 
    4747 * @param {object|string} elementOrIdOrName The DOM element (textarea), its 
     
    8181                        if ( !textarea ) 
    8282                        { 
    83                                 alert( '[CKEDITOR.replace] The <textarea> with id or name "' + elementOrIdOrName + '" was not found' ); 
     83                                throw '[CKEDITOR.replace] The <textarea> with id or name "' + elementOrIdOrName + '" was not found.'; 
    8484                                return; 
    8585                        } 
    8686                } 
    87                  
     87 
    8888                CKEDITOR.replace._replaceElement( textarea, config ); 
    8989        } 
    9090}; 
    9191 
    92 // This function will be overwritten by the fill core code implementation. 
     92// This function will be overwritten by the full core code implementation. 
    9393CKEDITOR.replace._replaceElement = function( textarea, config ) 
    9494{ 
     
    132132                var name = textarea.name; 
    133133 
    134                 // The "name" attribute must exist. 
    135                 if ( !name || name.length == 0 ) 
     134                // The "name" and/or "id" attribute must exist. 
     135                if ( !textarea.name && !textarea.id ) 
    136136                        continue; 
    137137 
     
    166166{ 
    167167}; 
    168          
     168 
    169169if ( CKEDITOR.status == 'unloaded' ) 
    170170{ 
  • CKEditor/branches/prototype/_source/tests/test.js

    r2083 r2090  
    4141                div.innerHTML = text; 
    4242        }; 
     43         
     44        var htmlEncode = function( data ) 
     45        { 
     46                if ( typeof data != 'string' ) 
     47                        return data; 
     48 
     49                return data.replace(  
     50                        '&', '&amp;' ).replace( 
     51                        '<', '&lt;' ).replace( 
     52                        '>', '&gt;' ); 
     53        }; 
    4354 
    4455        window.onload = function() 
     
    5263                        { 
    5364                                case runner.TEST_FAIL_EVENT: 
    54                                         outputResult( '<span class="testFail">FAIL</span> Test named "' + data.testName + '" failed with message: "' + data.error.message + '".<div>Expected:</div><pre>' + data.error.expected + '</pre><div>Actual:</div><pre>' + data.error.actual + '</pre>' ); 
     65                                        outputResult( '<span class="testFail">FAIL</span> Test named "' + data.testName + '" failed with message: "' + htmlEncode( data.error.message ) + '".<div>Expected:</div><pre>' + htmlEncode( data.error.expected ) + '</pre><div>Actual:</div><pre>' + htmlEncode( data.error.actual ) + '</pre>' ); 
    5566                                        break; 
    5667                                case runner.TEST_PASS_EVENT: 
  • CKEditor/branches/prototype/_source/tests/testall.html

    r2083 r2090  
    1010[ 
    1111        'core/ajax', 
     12        'core/ckeditor', 
    1213        'core/dom/element', 
    1314        'core/env', 
Note: See TracChangeset for help on using the changeset viewer.
© 2003 – 2012 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy