Ticket #1322: document-write.patch

File document-write.patch, 2.0 KB (added by Matthias Miller, 12 years ago)
  • editor/_source/internals/fcktools.js

     
    108108        return text ;
    109109}
    110110
     111FCKTools.JavaScriptLiteralEncode = function( text )
     112{
     113        text = text || '' ;
     114        return '"' + text.replace(/([\/\\"])/g, '\\$1') + '"' ;
     115}
     116
    111117FCKTools._ProcessLineBreaksForPMode = function( oEditor, text, liState, node, strArray )
    112118{
    113119        var closeState = 0 ;
  • editor/_source/classes/fckpanel.js

     
    4242        }
    4343        else
    4444        {
     45                // Workaround for Safari 12256. Ticket #63
     46                var sBase = '' ;
     47                if ( FCKBrowserInfo.IsSafari )
     48                        sBase = '<base href="' + window.document.location + '">' ;
     49
     50                var sHTML = '<html><head>' + sBase + '<\/head><body style="margin:0px;padding:0px;"><\/body><\/html>' ;
     51
    4552                var oIFrame = this._IFrame = this._Window.document.createElement('iframe') ;
    46                 oIFrame.src                                     = 'javascript:void(0)' ;
     53                oIFrame.src                                     = 'javascript:' + FCKTools.JavaScriptLiteralEncode( sHTML ) ;
    4754                oIFrame.allowTransparency       = true ;
    4855                oIFrame.frameBorder                     = '0' ;
    4956                oIFrame.scrolling                       = 'no' ;
     
    7784
    7885                oDocument = this.Document = oIFrameWindow.document ;
    7986
    80                 // Workaround for Safari 12256. Ticket #63
    81                 var sBase = '' ;
    82                 if ( FCKBrowserInfo.IsSafari )
    83                         sBase = '<base href="' + window.document.location + '">' ;
    84 
    85                 // Initialize the IFRAME document body.
    86                 oDocument.open() ;
    87                 oDocument.write( '<html><head>' + sBase + '<\/head><body style="margin:0px;padding:0px;"><\/body><\/html>' ) ;
    88                 oDocument.close() ;
    89 
    9087                FCKTools.AddEventListenerEx( oIFrameWindow, 'focus', FCKPanel_Window_OnFocus, this ) ;
    9188                FCKTools.AddEventListenerEx( oIFrameWindow, 'blur', FCKPanel_Window_OnBlur, this ) ;
    9289        }
© 2003 – 2019 CKSource – Frederico Knabben. All rights reserved. | Terms of use | Privacy policy