Na potrzeby mojego forum zintegrowanego z CKEditor stworzyłem wtyczkę. Wtyczka ta dodaje nowy pasek narzędziowy w oknie edytora. Kliknięcie w przycisk (obrazek) powoduje wstawienie zadanego tekstu w pole textera. Wszystko działa pięknie, ale mam pytanie czy można by bardziej zoptymalizować kod wtyczki.
W uproszeniu kod wtyczki wygląda następująco:
W jaki sposób można zoptymalizować kod, by nie powtarzać za każdym razem tych samych wywołań kodu np editor.ui.addButton?
W uproszeniu kod wtyczki wygląda następująco:
CKEDITOR.plugins.add( 'TEXT', { init: function( editor ) { editor.addCommand( 'insertFirstTEXT', { exec : function( editor ) { editor.insertText( 'First text a' ); } }); editor.addCommand( 'insertSecondTEXT', { exec : function( editor ) { editor.insertText( 'Second text b' ); } }); editor.addCommand( 'insertNextTEXT', { exec : function( editor ) { editor.insertText( 'Next text c' ); } }); editor.ui.addButton( 'FirstTEXT', { label: 'Insert First text a', command:'insertFirstTEXT', icon: this.path + 'images/firsttext.png' } ); editor.ui.addButton( 'SecondTEXT', { label: 'Insert Second text b', command:'insertSecondTEXT', icon: this.path + 'images/secondtext.png' } ); editor.ui.addButton( 'NextTEXT', { label: 'Insert Next text c', command:'insertNextTEXT', icon: this.path + 'images/nexttext.png' } );
W jaki sposób można zoptymalizować kod, by nie powtarzać za każdym razem tych samych wywołań kodu np editor.ui.addButton?