541. File Comparison Report

Produced on Mon May 12 13:06:19 2008 UTC. This report uses XHTML and CSS2, and is best viewed with a reasonably standards compliant browser such as the latest version of Firefox or Internet Explorer. For optimum results when printing this report, use landscape orientation and enable printing of background images and colours in your browser.

541.1 Files compared

# Location File Last Modified
1 Mon May 12 13:06:19 2008 UTC
2 Dolphin-v.6.1.0\plugins\tiny_mce\plugins\spellchecker editor_plugin.js Thu Mar 27 13:53:26 2008 UTC

541.2 Comparison summary

Description Between
Files 1 and 2
Text Blocks Lines
Unchanged 0 0
Changed 0 0
Inserted 1 1
Removed 0 0

541.3 Comparison options

Whitespace
Character case Differences in character case are significant
Line endings Differences in line endings (CR and LF characters) are ignored
CR/LF characters Not shown in the comparison detail

541.4 Active regular expressions

No regular expressions were active.

541.5 Comparison detail

    1   (function( ){var JSON Request=ti nymce.util .JSONReque st,each=ti nymce.each ,DOM=tinym ce.DOM;tin ymce.creat e('tinymce .plugins.S pellchecke rPlugin',{ getInfo:fu nction(){r eturn{long name:'Spel lchecker', author:'Mo xiecode Sy stems AB', authorurl: 'http://ti nymce.moxi ecode.com' ,infourl:' http://wik i.moxiecod e.com/inde x.php/Tiny MCE:Plugin s/spellche cker',vers ion:tinymc e.majorVer sion+"."+t inymce.min orVersion} ;},init:fu nction(ed, url){var t =this,cm;t .url=url;t .editor=ed ;ed.addCom mand('mceS pellCheck' ,function( ){if(!t.ac tive){ed.s etProgress State(1);t ._sendRPC( 'checkWord s',[t.sele ctedLang,t ._getWords ()],functi on(r){if(r .length>0) {t.active= 1;t._markW ords(r);ed .setProgre ssState(0) ;ed.nodeCh anged();}e lse{ed.set ProgressSt ate(0);ed. windowMana ger.alert( 'spellchec ker.no_mpe ll');}});} else t._do ne();});ed .onInit.ad d(function (){ed.dom. loadCSS(ur l+'/css/co ntent.css' );});ed.on Click.add( t._showMen u,t);ed.on ContextMen u.add(t._s howMenu,t) ;ed.onBefo reGetConte nt.add(fun ction(){if (t.active) t._removeW ords();}); ed.onNodeC hange.add( function(e d,cm){cm.s etActive(' spellcheck er',t.acti ve);});ed. onSetConte nt.add(fun ction(){t. _done();}) ;ed.onBefo reGetConte nt.add(fun ction(){t. _done();}) ;ed.onBefo reExecComm and.add(fu nction(ed, cmd){if(cm d=='mceFul lScreen')t ._done();} );t.langua ges={};eac h(ed.getPa ram('spell checker_la nguages',' +English=e n,Danish=d a,Dutch=nl ,Finnish=f i,French=f r,German=d e,Italian= it,Polish= pl,Portugu ese=pt,Spa nish=es,Sw edish=sv', 'hash'),fu nction(v,k ){if(k.ind exOf('+')= ==0){k=k.s ubstring(1 );t.select edLang=v;} t.language s[k]=v;}); },createCo ntrol:func tion(n,cm) {var t=thi s,c,ed=t.e ditor;if(n =='spellch ecker'){c= cm.createS plitButton (n,{title: 'spellchec ker.desc', cmd:'mceSp ellCheck', scope:t}); c.onRender Menu.add(f unction(c, m){m.add({ title:'spe llchecker. langs','cl ass':'mceM enuItemTit le'}).setD isabled(1) ;each(t.la nguages,fu nction(v,k ){var o={i con:1},mi; o.onclick= function() {mi.setSel ected(1);t .selectedI tem.setSel ected(0);t .selectedI tem=mi;t.s electedLan g=v;};o.ti tle=k;mi=m .add(o);mi .setSelect ed(v==t.se lectedLang );if(v==t. selectedLa ng)t.selec tedItem=mi ;})});retu rn c;}},_w alk:functi on(n,f){va r d=this.e ditor.getD oc(),w;if( d.createTr eeWalker){ w=d.create TreeWalker (n,NodeFil ter.SHOW_T EXT,null,f alse);whil e((n=w.nex tNode())!= null)f.cal l(this,n); }else tiny mce.walk(n ,f,'childN odes');},_ getSeparat ors:functi on(){var r e='',i,str =this.edit or.getPara m('spellch ecker_word _separator _chars','\ \s!"#$%&() *+,-./:;<= >?@[\]^_{| }пїЅпїЅпїЅ пїЅпїЅпїЅп їЅпїЅпїЅпї ЅпїЅпїЅпїЅ пїЅпїЅпїЅ\ u201d\u201 c');for(i= 0;i<str.le ngth;i++)r e+='\\'+st r.charAt(i );return r e;},_getWo rds:functi on(){var e d=this.edi tor,wl=[], tx='',lo={ };this._wa lk(ed.getB ody(),func tion(n){if (n.nodeTyp e==3)tx+=n .nodeValue +' ';});tx =tx.replac e(new RegE xp('([0-9] |['+this._ getSeparat ors()+'])' ,'g'),' ') ;tx=tinymc e.trim(tx. replace(/( \s+)/g,' ' ));each(tx .split(' ' ),function (v){if(!lo [v]){wl.pu sh(v);lo[v ]=1;}});re turn wl;}, _removeWor ds:functio n(w){var e d=this.edi tor,dom=ed .dom,se=ed .selection ,b=se.getB ookmark(); each(dom.s elect('spa n').revers e(),functi on(n){if(n &&(dom.has Class(n,'m ceItemHidd enSpellWor d')||dom.h asClass(n, 'mceItemHi dden'))){i f(!w||dom. decode(n.i nnerHTML)= =w)dom.rem ove(n,1);} });se.move ToBookmark (b);},_mar kWords:fun ction(wl){ var r1,r2, r3,r4,r5,w ='',ed=thi s.editor,r e=this._ge tSeparator s(),dom=ed .dom,nl=[] ;var se=ed .selection ,b=se.getB ookmark(); each(wl,fu nction(v){ w+=(w?'|': '')+v;});r 1=new RegE xp('(['+re +'])('+w+' )(['+re+'] )','g');r2 =new RegEx p('^('+w+' )','g');r3 =new RegEx p('('+w+') (['+re+']? )$','g');r 4=new RegE xp('^('+w+ ')(['+re+' ]?)$','g') ;r5=new Re gExp('('+w +')(['+re+ '])','g'); this._walk (this.edit or.getBody (),functio n(n){if(n. nodeType== 3){nl.push (n);}});ea ch(nl,func tion(n){va r v;if(n.n odeType==3 ){v=n.node Value;if(r 1.test(v)| |r2.test(v )||r3.test (v)||r4.te st(v)){v=d om.encode( v);v=v.rep lace(r5,'< span class ="mceItemH iddenSpell Word">$1</ span>$2'); v=v.replac e(r3,'<spa n class="m ceItemHidd enSpellWor d">$1</spa n>$2');dom .replace(d om.create( 'span',{'c lass':'mce ItemHidden '},v),n);} }});se.mov eToBookmar k(b);},_sh owMenu:fun ction(ed,e ){var t=th is,ed=t.ed itor,m=t._ menu,p1,do m=ed.dom,v p=dom.getV iewPort(ed .getWin()) ;if(!m){p1 =DOM.getPo s(ed.getCo ntentAreaC ontainer() );m=ed.con trolManage r.createDr opMenu('sp ellchecker menu',{off set_x:p1.x ,offset_y: p1.y,'clas s':'noIcon s'});t._me nu=m;}if(d om.hasClas s(e.target ,'mceItemH iddenSpell Word')){m. removeAll( );m.add({t itle:'spel lchecker.w ait','clas s':'mceMen uItemTitle '}).setDis abled(1);t ._sendRPC( 'getSugges tions',[t. selectedLa ng,dom.dec ode(e.targ et.innerHT ML)],funct ion(r){m.r emoveAll() ;if(r.leng th>0){m.ad d({title:' spellcheck er.sug','c lass':'mce MenuItemTi tle'}).set Disabled(1 );each(r,f unction(v) {m.add({ti tle:v,oncl ick:functi on(){dom.r eplace(ed. getDoc().c reateTextN ode(v),e.t arget);t._ checkDone( );}});});m .addSepara tor();}els e m.add({t itle:'spel lchecker.n o_sug','cl ass':'mceM enuItemTit le'}).setD isabled(1) ;m.add({ti tle:'spell checker.ig nore_word' ,onclick:f unction(){ dom.remove (e.target, 1);t._chec kDone();}} );m.add({t itle:'spel lchecker.i gnore_word s',onclick :function( ){t._remov eWords(dom .decode(e. target.inn erHTML));t ._checkDon e();}});m. update();} );ed.selec tion.selec t(e.target );p1=dom.g etPos(e.ta rget);m.sh owMenu(p1. x,p1.y+e.t arget.offs etHeight-v p.y);retur n tinymce. dom.Event. cancel(e); }else m.hi deMenu();} ,_checkDon e:function (){var t=t his,ed=t.e ditor,dom= ed.dom,o;e ach(dom.se lect('span '),functio n(n){if(n& &dom.hasCl ass(n,'mce ItemHidden SpellWord' )){o=true; return fal se;}});if( !o)t._done ();},_done :function( ){var t=th is,la=t.ac tive;if(t. active){t. active=0;t ._removeWo rds();if(t ._menu)t._ menu.hideM enu();if(l a)t.editor .nodeChang ed();}},_s endRPC:fun ction(m,p, cb){var t= this,url=t .editor.ge tParam("sp ellchecker _rpc_url", "{backend} ");if(url= ='{backend }'){t.edit or.setProg ressState( 0);alert(' Please spe cify: spel lchecker_r pc_url');r eturn;}JSO NRequest.s endRPC({ur l:url,meth od:m,param s:p,succes s:cb,error :function( e,x){t.edi tor.setPro gressState (0);t.edit or.windowM anager.ale rt(e.errst r||('Error  response:  '+x.respo nseText)); }});}});ti nymce.Plug inManager. add('spell checker',t inymce.plu gins.Spell checkerPlu gin);})();