b|)1U~v;FF/٪nJZ.\ r?1T  8|vKV>ۦ )\Ӛ;%֝rsgN {UB'V[=,sAJ0]A eSsA!?\& $z*)M N]$ؑuqpHh 2far͍tRW_ = z`mݤŏ[HZK_!DuDfW/N[ E#J()#"]3+}bSrdTlgC[OlϿ;jDxQ#E~A29U\D58l6ُ/W)AD+*;_~&vs MgT!*;piV(6bsB~q5m{&Ʃ紸5띜N0+eV/ʟ놑u#J@z/_Xw2e6}6F?9V^[y=tOD~7"ʦXNof S%L4zLm.<#3lM0 SRW e.va+ʇwσM;Fȫ2V?|,OŚ-*]( l's]<[:COq3,σM;Fȫ2V?|,OŚ-*]( 2Ls{PB0'э0lL? | >-..b0[y_i|Y`,3 dD|Si>͎ UyQ$ ˥-8{;Bxɶ<(u2l P"~57Jl=SttquTrn7FTs!+7|Y`B/4d+)Lý *?BLgԹ(ò'&X"Eu|L`K6#r 2qB/pJ1I'}^ ʗFmnRـw5AE*5M^iPnz-9\#Ȃdȶ0:S B-H3kE0:` F/u+`p*уq_b/:n,i᪉A@|k ѳ?eJa?fz{.XGd" ZPNlbɌ?E&Ks ڈMqf6pjK)MpXщ# MPDFer#{+9.J->5cVu;z~@j`l{ڋ(g_FJ)#bf­HںcmĠߞ40գlၛVơҴOޗ]Xni/x"Jz%6ҏl ]v?bؔȕ^` 0߻E_s(r(QEb忌at!# g!Rd (>L<>ʨrc|`Onھ+4LWEEd+$3)~o]ڐXq~ƞ 5/=oVFtߝ Ex3xi(x}\Dh' ݳ6< G!V: 6@)"MlBBL=O)S\9{lJ!I' `sMz/}Um[ıXaI?@+i?0TcDHv0Q3a zYHq`xPu/6x.cDIf9fd٠V_cڭ'e&Bțs#fP,>՘5W= o8@olszIje;?aF3̗m~\3L1^ީۃN<AWeΝA.&XphEsX_BN;Ÿ)F=t1kEsew^hv?@p3Z1nn\s6/B}y 7%4Fd]oG7uOr aY.vIsW!‹ |NBQ5~R&nBI3 Q3,'gՔxNɍG.m)m}yT_n&1'qO3V =Q$ qMS@L P̊ SMb0LqM'15TK/KB>8E9B>nА9 h<< S_} OMNqIlI$#U X_?U?g- c+4\wu :BO]%ʿa9MȜw`vl޺T%b[ ۻ2K]ޗIh߹5X+Z*:Ccw`X, Q?LߵI51|Z0&آ'kK$CA?(h5jmbwhӂ1yN`vN %=ЏJt `-oQI3SJ+zHv-_[ŨI%r34u ccY#V''z8wI7l, ҅G&;(]+l}oiq]@%7^"NcqfVt<8| ƛETM4ˏ * +&gV7>ePu 8Ԣr7xi* ^"NcqfVt^&.ž'zy?kiϴĥ h{apX F*17X;^bQaf S @WL@$0YxUe KjBUC~0HBZ|PAv#&vǤTr?/#W | ޔ637YWncJh, V[gNF+>J:-N޷Yv0` ( <U }|nXJ/[UM}ͼmٶtW${ ^°ķR9&Ǹ@1Dz60f0t7G^ q&⛏xh:V~ T8<~r$kLzk<'nXUǟ aQt&YχLEekbKCC1Үg^zYHJs'`$['?G-/ )`YB|yRT:қQ_(*ow2rCCi&yڸ!_0[LʼnNي.n1'FXaD 4n lTCW 'JustifyRight', 'JustifyBlock' ], '/', [ 'Font', 'FontSize' ], [ 'TextColor', '-', 'About' ] ], /* * Style sheet for the contents */ contentsCss: 'body {color:#000; background-color#FFF; font-family: Arial; font-size:80%;} p, ol, ul {margin-top: 0px; margin-bottom: 0px;}', /* * Quirks doctype */ docType: '', /* * Core styles. */ coreStyles_bold: { element: 'b' }, coreStyles_italic: { element: 'i' }, coreStyles_underline: { element: 'u' }, /* * Font face. */ // Define the way font elements will be applied to the document. The "font" // element will be used. font_style: { element: 'font', attributes: { 'face': '#(family)' } }, /* * Font sizes. */ // The CSS part of the font sizes isn't used by Flash, it is there to get the // font rendered correctly in CKEditor. fontSize_sizes: '8px/8;9px/9;10px/10;11px/11;12px/12;14px/14;16px/16;18px/18;20px/20;22px/22;24px/24;26px/26;28px/28;36px/36;48px/48;72px/72', fontSize_style: { element: 'font', attributes: { 'size': '#(size)' }, styles: { 'font-size': '#(size)px' } } , /* * Font colors. */ colorButton_enableMore: true, colorButton_foreStyle: { element: 'font', attributes: { 'color': '#(color)' } }, colorButton_backStyle: { element: 'font', styles: { 'background-color': '#(color)' } }, on: { 'instanceReady': configureFlashOutput } }); /* * Adjust the behavior of the dataProcessor to match the * requirements of Flash */ function configureFlashOutput( ev ) { var editor = ev.editor, dataProcessor = editor.dataProcessor, htmlFilter = dataProcessor && dataProcessor.htmlFilter; // Out self closing tags the HTML4 way, like
. dataProcessor.writer.selfClosingEnd = '>'; // Make output formatting match Flash expectations var dtd = CKEDITOR.dtd; for ( var e in CKEDITOR.tools.extend( {}, dtd.$nonBodyContent, dtd.$block, dtd.$listItem, dtd.$tableContent ) ) { dataProcessor.writer.setRules( e, { indent: false, breakBeforeOpen: false, breakAfterOpen: false, breakBeforeClose: false, breakAfterClose: false }); } dataProcessor.writer.setRules( 'br', { indent: false, breakBeforeOpen: false, breakAfterOpen: false, breakBeforeClose: false, breakAfterClose: false }); // Output properties as attributes, not styles. htmlFilter.addRules( { elements: { $: function( element ) { var style, match, width, height, align; // Output dimensions of images as width and height if ( element.name == 'img' ) { style = element.attributes.style; if ( style ) { // Get the width from the style. match = ( /(?:^|\s)width\s*:\s*(\d+)px/i ).exec( style ); width = match && match[1]; // Get the height from the style. match = ( /(?:^|\s)height\s*:\s*(\d+)px/i ).exec( style ); height = match && match[1]; if ( width ) { element.attributes.style = element.attributes.style.replace( /(?:^|\s)width\s*:\s*(\d+)px;?/i , '' ); element.attributes.width = width; } if ( height ) { element.attributes.style = element.attributes.style.replace( /(?:^|\s)height\s*:\s*(\d+)px;?/i , '' ); element.attributes.height = height; } } } // Output alignment of paragraphs using align if ( element.name == 'p' ) { style = element.attributes.style; if ( style ) { // Get the align from the style. match = ( /(?:^|\s)text-align\s*:\s*(\w*);?/i ).exec( style ); align = match && match[1]; if ( align ) { element.attributes.style = element.attributes.style.replace( /(?:^|\s)text-align\s*:\s*(\w*);?/i , '' ); element.attributes.align = align; } } } if ( element.attributes.style === '' ) delete element.attributes.style; return element; } } }); } function sendToFlash() { var html = CKEDITOR.instances.editor1.getData() ; // Quick fix for link color. html = html.replace( //g, '' ) var flash = document.getElementById( 'ckFlashContainer' ) ; flash.setData( html ) ; } CKEDITOR.domReady( function() { if ( !swfobject.hasFlashPlayerVersion( '8' ) ) { CKEDITOR.dom.element.createFromHtml( '' + 'At least Adobe Flash Player 8 is required to run this sample. ' + 'You can download it from Adobe\'s website.' + '' ).insertBefore( editor.element ); } swfobject.embedSWF( 'assets/outputforflash/outputforflash.swf', 'ckFlashContainer', '550', '400', '8', { wmode: 'transparent' } ); });