gallery.js 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. CKEDITOR.dialog.add( 'galleryDialog', function( editor ) {
  2. return {
  3. title: 'Вставка Галереи',
  4. minWidth: 400,
  5. minHeight: 200,
  6. contents: [
  7. {
  8. id: 'tab-basic',
  9. label: 'Базовые',
  10. elements: [
  11. {
  12. type: 'text',
  13. id: 'url',
  14. label: 'Вставьте ссылку',
  15. validate: CKEDITOR.dialog.validate.notEmpty( "Поле для ссылки не должно быть пустым вида http://www.amic.ru/photo/nnn/" ),
  16. setup: function( element ) {
  17. //his.setValue( 'hhhh' );
  18. // console.log(element.getAttribute( "url" ));
  19. this.setValue( element.getAttribute( "url" ) );
  20. // console.log( element );
  21. },
  22. commit: function( element ) {
  23. element.setText( this.getValue() );
  24. }
  25. },
  26. {
  27. type: 'radio',
  28. id: 'type',
  29. label: 'Выбрать',
  30. items: [ [ 'С иконками', '1' ], [ 'Авто play, с точками', '2' ], [ 'Точки (50%)', '3' ], [ 'Для вертикальных', '4' ] ],
  31. 'default': '1',
  32. setup: function( element ) {
  33. this.setValue( element.getAttribute( "type" ) );
  34. },
  35. commit: function( element ) {
  36. element.setAttribute( "type", this.getValue() );
  37. }
  38. }
  39. ]
  40. },
  41. ],
  42. onShow: function() {
  43. var selection = editor.getSelection();
  44. var element = selection.getStartElement();
  45. // if ( element )
  46. // element = element.getAscendant( 'url', true );
  47. if ( !element || $(element).attr('id') != 'widgetgallery' ) {
  48. element = editor.document.createElement( 'gallery' );
  49. this.insertMode = true;
  50. }
  51. else
  52. this.insertMode = false;
  53. this.element = element;
  54. // console.log(element);
  55. // console.log(this);
  56. if ( !this.insertMode )
  57. this.setupContent( this.element );
  58. },
  59. onOk: function() {
  60. var dialog = this;
  61. var gallery = editor.document.createElement( 'div' );
  62. gallery.setAttribute('id', 'widgetgallery');
  63. gallery.setAttribute( 'type', dialog.getValueOf('tab-basic', 'type') );
  64. gallery.setAttribute( 'url', dialog.getValueOf( 'tab-basic', 'url' ) );
  65. gallery.setHtml('  ');
  66. editor.insertElement( gallery );
  67. }
  68. };
  69. });