diff options
| author | Kelly Rauchenberger <fefferburbia@gmail.com> | 2017-07-02 13:03:43 -0400 |
|---|---|---|
| committer | Kelly Rauchenberger <fefferburbia@gmail.com> | 2017-07-02 13:03:43 -0400 |
| commit | e47e83cf6bded3d1924b4d500193e7876833ef83 (patch) | |
| tree | 058f011637e67455dcd8451fbfa784b5883c6f69 /app/assets/javascripts/ckeditor/plugins/widget/dev/console.js | |
| parent | 528ccde8915cd1ed7a39e137dd4d98869797956a (diff) | |
| download | thoughts-e47e83cf6bded3d1924b4d500193e7876833ef83.tar.gz thoughts-e47e83cf6bded3d1924b4d500193e7876833ef83.tar.bz2 thoughts-e47e83cf6bded3d1924b4d500193e7876833ef83.zip | |
Created admin panel
Currently allows you to create and edit blogs, including associated records. Uses a WYSIWYG editor that allows uploading images. Also included jQuery :(
Diffstat (limited to 'app/assets/javascripts/ckeditor/plugins/widget/dev/console.js')
| -rw-r--r-- | app/assets/javascripts/ckeditor/plugins/widget/dev/console.js | 131 |
1 files changed, 131 insertions, 0 deletions
| diff --git a/app/assets/javascripts/ckeditor/plugins/widget/dev/console.js b/app/assets/javascripts/ckeditor/plugins/widget/dev/console.js new file mode 100644 index 0000000..1404a2c --- /dev/null +++ b/app/assets/javascripts/ckeditor/plugins/widget/dev/console.js | |||
| @@ -0,0 +1,131 @@ | |||
| 1 | /** | ||
| 2 | * @license Copyright (c) 2003-2017, CKSource - Frederico Knabben. All rights reserved. | ||
| 3 | * For licensing, see LICENSE.md or http://ckeditor.com/license | ||
| 4 | */ | ||
| 5 | |||
| 6 | /* global CKCONSOLE */ | ||
| 7 | |||
| 8 | 'use strict'; | ||
| 9 | |||
| 10 | ( function() { | ||
| 11 | |||
| 12 | CKCONSOLE.add( 'widget', { | ||
| 13 | panels: [ | ||
| 14 | { | ||
| 15 | type: 'box', | ||
| 16 | content: '<ul class="ckconsole_list ckconsole_value" data-value="instances"></ul>', | ||
| 17 | |||
| 18 | refresh: function( editor ) { | ||
| 19 | var instances = obj2Array( editor.widgets.instances ); | ||
| 20 | |||
| 21 | return { | ||
| 22 | header: 'Instances (' + instances.length + ')', | ||
| 23 | instances: generateInstancesList( instances ) | ||
| 24 | }; | ||
| 25 | }, | ||
| 26 | |||
| 27 | refreshOn: function( editor, refresh ) { | ||
| 28 | editor.widgets.on( 'instanceCreated', function( evt ) { | ||
| 29 | refresh(); | ||
| 30 | |||
| 31 | evt.data.on( 'data', refresh ); | ||
| 32 | } ); | ||
| 33 | |||
| 34 | editor.widgets.on( 'instanceDestroyed', refresh ); | ||
| 35 | } | ||
| 36 | }, | ||
| 37 | |||
| 38 | { | ||
| 39 | type: 'box', | ||
| 40 | content: | ||
| 41 | '<ul class="ckconsole_list">' + | ||
| 42 | '<li>focused: <span class="ckconsole_value" data-value="focused"></span></li>' + | ||
| 43 | '<li>selected: <span class="ckconsole_value" data-value="selected"></span></li>' + | ||
| 44 | '</ul>', | ||
| 45 | |||
| 46 | refresh: function( editor ) { | ||
| 47 | var focused = editor.widgets.focused, | ||
| 48 | selected = editor.widgets.selected, | ||
| 49 | selectedIds = []; | ||
| 50 | |||
| 51 | for ( var i = 0; i < selected.length; ++i ) | ||
| 52 | selectedIds.push( selected[ i ].id ); | ||
| 53 | |||
| 54 | return { | ||
| 55 | header: 'Focus & selection', | ||
| 56 | focused: focused ? 'id: ' + focused.id : '-', | ||
| 57 | selected: selectedIds.length ? 'id: ' + selectedIds.join( ', id: ' ) : '-' | ||
| 58 | }; | ||
| 59 | }, | ||
| 60 | |||
| 61 | refreshOn: function( editor, refresh ) { | ||
| 62 | editor.on( 'selectionCheck', refresh, null, null, 999 ); | ||
| 63 | } | ||
| 64 | }, | ||
| 65 | |||
| 66 | { | ||
| 67 | type: 'log', | ||
| 68 | |||
| 69 | on: function( editor, log, logFn ) { | ||
| 70 | // Add all listeners with high priorities to log | ||
| 71 | // messages in the correct order when one event depends on another. | ||
| 72 | // E.g. selectionChange triggers widget selection - if this listener | ||
| 73 | // for selectionChange will be executed later than that one, then order | ||
| 74 | // will be incorrect. | ||
| 75 | |||
| 76 | editor.on( 'selectionChange', function( evt ) { | ||
| 77 | var msg = 'selection change', | ||
| 78 | sel = evt.data.selection, | ||
| 79 | el = sel.getSelectedElement(), | ||
| 80 | widget; | ||
| 81 | |||
| 82 | if ( el && ( widget = editor.widgets.getByElement( el, true ) ) ) | ||
| 83 | msg += ' (id: ' + widget.id + ')'; | ||
| 84 | |||
| 85 | log( msg ); | ||
| 86 | }, null, null, 1 ); | ||
| 87 | |||
| 88 | editor.widgets.on( 'instanceDestroyed', function( evt ) { | ||
| 89 | log( 'instance destroyed (id: ' + evt.data.id + ')' ); | ||
| 90 | }, null, null, 1 ); | ||
| 91 | |||
| 92 | editor.widgets.on( 'instanceCreated', function( evt ) { | ||
| 93 | log( 'instance created (id: ' + evt.data.id + ')' ); | ||
| 94 | }, null, null, 1 ); | ||
| 95 | |||
| 96 | editor.widgets.on( 'widgetFocused', function( evt ) { | ||
| 97 | log( 'widget focused (id: ' + evt.data.widget.id + ')' ); | ||
| 98 | }, null, null, 1 ); | ||
| 99 | |||
| 100 | editor.widgets.on( 'widgetBlurred', function( evt ) { | ||
| 101 | log( 'widget blurred (id: ' + evt.data.widget.id + ')' ); | ||
| 102 | }, null, null, 1 ); | ||
| 103 | |||
| 104 | editor.widgets.on( 'checkWidgets', logFn( 'checking widgets' ), null, null, 1 ); | ||
| 105 | editor.widgets.on( 'checkSelection', logFn( 'checking selection' ), null, null, 1 ); | ||
| 106 | } | ||
| 107 | } | ||
| 108 | ] | ||
| 109 | } ); | ||
| 110 | |||
| 111 | function generateInstancesList( instances ) { | ||
| 112 | var html = '', | ||
| 113 | instance; | ||
| 114 | |||
| 115 | for ( var i = 0; i < instances.length; ++i ) { | ||
| 116 | instance = instances[ i ]; | ||
| 117 | html += itemTpl.output( { id: instance.id, name: instance.name, data: JSON.stringify( instance.data ) } ); | ||
| 118 | } | ||
| 119 | return html; | ||
| 120 | } | ||
| 121 | |||
| 122 | function obj2Array( obj ) { | ||
| 123 | var arr = []; | ||
| 124 | for ( var id in obj ) | ||
| 125 | arr.push( obj[ id ] ); | ||
| 126 | |||
| 127 | return arr; | ||
| 128 | } | ||
| 129 | |||
| 130 | var itemTpl = new CKEDITOR.template( '<li>id: <code>{id}</code>, name: <code>{name}</code>, data: <code>{data}</code></li>' ); | ||
| 131 | } )(); | ||
