bhf 1.0.0.beta8 → 1.0.0.beta13
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +9 -0
- data/VERSION +1 -1
- data/app/assets/javascripts/bhf/{mootools-core-1.5.0-full-compat.js → MooTools-More-1.6.0.js} +6122 -3637
- data/app/assets/javascripts/bhf/application.js +1 -2
- data/app/assets/javascripts/bhf/classes/MooEditable.js +119 -119
- data/app/assets/javascripts/bhf/classes/Picker.js +1 -1
- data/app/assets/javascripts/bhf/classes/Picker_Attach.js +4 -4
- data/app/assets/javascripts/bhf/classes/Picker_Date.js +2 -2
- data/app/assets/stylesheets/bhf/application.sass +18 -3
- data/app/assets/stylesheets/bhf/trix.scss +373 -0
- data/app/controllers/bhf/entries_controller.rb +2 -2
- data/app/views/bhf/form/column/_activestorage_attachment.html.haml +2 -6
- data/app/views/bhf/form/column/_activestorage_attachments.html.haml +10 -0
- data/app/views/bhf/form/column/_attachment_presenter.html.haml +6 -0
- data/app/views/bhf/form/column/_rich_text.html.haml +1 -1
- data/bhf.gemspec +8 -6
- metadata +7 -5
- data/app/assets/javascripts/bhf/mootools-more-1.5.0.js +0 -2561
@@ -94,17 +94,17 @@ this.MooEditable = new Class({
|
|
94
94
|
}.bind(this));
|
95
95
|
this.render();
|
96
96
|
},
|
97
|
-
|
97
|
+
|
98
98
|
toElement: function(){
|
99
99
|
return this.textarea;
|
100
100
|
},
|
101
|
-
|
101
|
+
|
102
102
|
render: function(){
|
103
103
|
var self = this;
|
104
|
-
|
104
|
+
|
105
105
|
// Dimensions
|
106
106
|
var dimensions = this.options.dimensions || this.textarea.getSize();
|
107
|
-
|
107
|
+
|
108
108
|
// Build the container
|
109
109
|
this.container = new Element('div', {
|
110
110
|
id: (this.textarea.id) ? this.textarea.id + '-mooeditable-container' : null,
|
@@ -116,7 +116,7 @@ this.MooEditable = new Class({
|
|
116
116
|
|
117
117
|
// Override all textarea styles
|
118
118
|
this.textarea.addClass('mooeditable-textarea').setStyle('height', dimensions.y);
|
119
|
-
|
119
|
+
|
120
120
|
// Build the iframe
|
121
121
|
this.iframe = new IFrame({
|
122
122
|
'class': 'mooeditable-iframe',
|
@@ -126,16 +126,16 @@ this.MooEditable = new Class({
|
|
126
126
|
height: dimensions.y
|
127
127
|
}
|
128
128
|
});
|
129
|
-
|
129
|
+
|
130
130
|
this.toolbar = new MooEditable.UI.Toolbar({
|
131
131
|
onItemAction: function(){
|
132
|
-
var args = Array.
|
132
|
+
var args = Array.convert(arguments);
|
133
133
|
var item = args[0];
|
134
134
|
self.action(item.name, args);
|
135
135
|
}
|
136
136
|
});
|
137
137
|
this.attach.delay(1, this);
|
138
|
-
|
138
|
+
|
139
139
|
// Update the event for textarea's corresponding labels
|
140
140
|
if (this.options.handleLabel && this.textarea.id) $$('label[for="'+this.textarea.id+'"]').addEvent('click', function(e){
|
141
141
|
if (self.mode != 'iframe') return;
|
@@ -151,7 +151,7 @@ this.MooEditable = new Class({
|
|
151
151
|
if (self.mode == 'iframe') self.saveContent();
|
152
152
|
});
|
153
153
|
}
|
154
|
-
|
154
|
+
|
155
155
|
this.fireEvent('render', this);
|
156
156
|
},
|
157
157
|
|
@@ -160,7 +160,7 @@ this.MooEditable = new Class({
|
|
160
160
|
|
161
161
|
// Assign view mode
|
162
162
|
this.mode = 'iframe';
|
163
|
-
|
163
|
+
|
164
164
|
// Editor iframe state
|
165
165
|
this.editorDisabled = false;
|
166
166
|
|
@@ -168,9 +168,9 @@ this.MooEditable = new Class({
|
|
168
168
|
this.container.wraps(this.textarea);
|
169
169
|
|
170
170
|
this.textarea.setStyle('display', 'none');
|
171
|
-
|
171
|
+
|
172
172
|
this.iframe.setStyle('display', '').inject(this.textarea, 'before');
|
173
|
-
|
173
|
+
|
174
174
|
Object.each(this.dialogs, function(action, name){
|
175
175
|
Object.each(action, function(dialog){
|
176
176
|
document.id(dialog).inject(self.iframe, 'before');
|
@@ -196,7 +196,7 @@ this.MooEditable = new Class({
|
|
196
196
|
// contentWindow and document references
|
197
197
|
this.win = this.iframe.contentWindow;
|
198
198
|
this.doc = this.win.document;
|
199
|
-
|
199
|
+
|
200
200
|
// Deal with weird quirks on Gecko
|
201
201
|
if (Browser.firefox) this.doc.designMode = 'On';
|
202
202
|
|
@@ -228,7 +228,7 @@ this.MooEditable = new Class({
|
|
228
228
|
} else {
|
229
229
|
document.id(this.doc.body);
|
230
230
|
}
|
231
|
-
|
231
|
+
|
232
232
|
this.setContent(this.textarea.get('value'));
|
233
233
|
|
234
234
|
// Bind all events
|
@@ -256,7 +256,7 @@ this.MooEditable = new Class({
|
|
256
256
|
self.doc.body.addListener(event, self['editor' + event.capitalize()].bind(self));
|
257
257
|
});
|
258
258
|
this.textarea.addEvent('keypress', this.textarea.retrieve('mooeditable:textareaKeyListener', this.keyListener.bind(this)));
|
259
|
-
|
259
|
+
|
260
260
|
// Fix window focus event not firing on Firefox 2
|
261
261
|
if (Browser.firefox2) this.doc.addEvent('focus', function(){
|
262
262
|
self.win.fireEvent('focus').focus();
|
@@ -279,18 +279,18 @@ this.MooEditable = new Class({
|
|
279
279
|
document.id(this.toolbar).inject(this.container, 'top');
|
280
280
|
this.toolbar.render(this.actions);
|
281
281
|
}
|
282
|
-
|
282
|
+
|
283
283
|
if (this.options.disabled) this.disable();
|
284
284
|
|
285
285
|
this.selection = new MooEditable.Selection(this.win);
|
286
|
-
|
286
|
+
|
287
287
|
this.oldContent = this.getContent();
|
288
|
-
|
288
|
+
|
289
289
|
this.fireEvent('attach', this);
|
290
|
-
|
290
|
+
|
291
291
|
return this;
|
292
292
|
},
|
293
|
-
|
293
|
+
|
294
294
|
detach: function(){
|
295
295
|
this.saveContent();
|
296
296
|
this.textarea.setStyle('display', '').removeClass('mooeditable-textarea').inject(this.container, 'before');
|
@@ -299,141 +299,141 @@ this.MooEditable = new Class({
|
|
299
299
|
this.fireEvent('detach', this);
|
300
300
|
return this;
|
301
301
|
},
|
302
|
-
|
302
|
+
|
303
303
|
enable: function(){
|
304
304
|
this.editorDisabled = false;
|
305
305
|
this.toolbar.enable();
|
306
306
|
return this;
|
307
307
|
},
|
308
|
-
|
308
|
+
|
309
309
|
disable: function(){
|
310
310
|
this.editorDisabled = true;
|
311
311
|
this.toolbar.disable();
|
312
312
|
return this;
|
313
313
|
},
|
314
|
-
|
314
|
+
|
315
315
|
editorFocus: function(e){
|
316
316
|
this.oldContent = '';
|
317
317
|
this.fireEvent('editorFocus', [e, this]);
|
318
318
|
},
|
319
|
-
|
319
|
+
|
320
320
|
editorBlur: function(e){
|
321
321
|
this.oldContent = this.saveContent().getContent();
|
322
322
|
this.fireEvent('editorBlur', [e, this]);
|
323
323
|
},
|
324
|
-
|
324
|
+
|
325
325
|
editorMouseUp: function(e){
|
326
326
|
if (this.editorDisabled){
|
327
327
|
e.stop();
|
328
328
|
return;
|
329
329
|
}
|
330
|
-
|
330
|
+
|
331
331
|
if (this.options.toolbar) this.checkStates();
|
332
|
-
|
332
|
+
|
333
333
|
this.fireEvent('editorMouseUp', [e, this]);
|
334
334
|
},
|
335
|
-
|
335
|
+
|
336
336
|
editorMouseDown: function(e){
|
337
337
|
if (this.editorDisabled){
|
338
338
|
e.stop();
|
339
339
|
return;
|
340
340
|
}
|
341
|
-
|
341
|
+
|
342
342
|
this.fireEvent('editorMouseDown', [e, this]);
|
343
343
|
},
|
344
|
-
|
344
|
+
|
345
345
|
editorMouseOver: function(e){
|
346
346
|
if (this.editorDisabled){
|
347
347
|
e.stop();
|
348
348
|
return;
|
349
349
|
}
|
350
|
-
|
350
|
+
|
351
351
|
this.fireEvent('editorMouseOver', [e, this]);
|
352
352
|
},
|
353
|
-
|
353
|
+
|
354
354
|
editorMouseOut: function(e){
|
355
355
|
if (this.editorDisabled){
|
356
356
|
e.stop();
|
357
357
|
return;
|
358
358
|
}
|
359
|
-
|
359
|
+
|
360
360
|
this.fireEvent('editorMouseOut', [e, this]);
|
361
361
|
},
|
362
|
-
|
362
|
+
|
363
363
|
editorMouseEnter: function(e){
|
364
364
|
if (this.editorDisabled){
|
365
365
|
e.stop();
|
366
366
|
return;
|
367
367
|
}
|
368
|
-
|
368
|
+
|
369
369
|
if (this.oldContent && this.getContent() != this.oldContent){
|
370
370
|
this.focus();
|
371
371
|
this.fireEvent('editorPaste', [e, this]);
|
372
372
|
}
|
373
|
-
|
373
|
+
|
374
374
|
this.fireEvent('editorMouseEnter', [e, this]);
|
375
375
|
},
|
376
|
-
|
376
|
+
|
377
377
|
editorMouseLeave: function(e){
|
378
378
|
if (this.editorDisabled){
|
379
379
|
e.stop();
|
380
380
|
return;
|
381
381
|
}
|
382
|
-
|
382
|
+
|
383
383
|
this.fireEvent('editorMouseLeave', [e, this]);
|
384
384
|
},
|
385
|
-
|
385
|
+
|
386
386
|
editorContextMenu: function(e){
|
387
387
|
if (this.editorDisabled){
|
388
388
|
e.stop();
|
389
389
|
return;
|
390
390
|
}
|
391
|
-
|
391
|
+
|
392
392
|
this.fireEvent('editorContextMenu', [e, this]);
|
393
393
|
},
|
394
|
-
|
394
|
+
|
395
395
|
editorClick: function(e){
|
396
396
|
// make images selectable and draggable in Safari
|
397
397
|
if (Browser.safari || Browser.chrome){
|
398
398
|
var el = e.target;
|
399
399
|
if (Element.get(el, 'tag') == 'img'){
|
400
|
-
|
400
|
+
|
401
401
|
// safari doesnt like dragging locally linked images
|
402
402
|
if (this.options.baseURL){
|
403
403
|
if (el.getProperty('src').indexOf('http://') == -1){
|
404
404
|
el.setProperty('src', this.options.baseURL + el.getProperty('src'));
|
405
405
|
}
|
406
406
|
}
|
407
|
-
|
407
|
+
|
408
408
|
this.selection.selectNode(el);
|
409
409
|
this.checkStates();
|
410
410
|
}
|
411
411
|
}
|
412
|
-
|
412
|
+
|
413
413
|
this.fireEvent('editorClick', [e, this]);
|
414
414
|
},
|
415
|
-
|
415
|
+
|
416
416
|
editorDoubleClick: function(e){
|
417
417
|
this.fireEvent('editorDoubleClick', [e, this]);
|
418
418
|
},
|
419
|
-
|
419
|
+
|
420
420
|
editorKeyPress: function(e){
|
421
421
|
if (this.editorDisabled){
|
422
422
|
e.stop();
|
423
423
|
return;
|
424
424
|
}
|
425
|
-
|
425
|
+
|
426
426
|
this.keyListener(e);
|
427
|
-
|
427
|
+
|
428
428
|
this.fireEvent('editorKeyPress', [e, this]);
|
429
429
|
},
|
430
|
-
|
430
|
+
|
431
431
|
editorKeyUp: function(e){
|
432
432
|
if (this.editorDisabled){
|
433
433
|
e.stop();
|
434
434
|
return;
|
435
435
|
}
|
436
|
-
|
436
|
+
|
437
437
|
var c = e.code;
|
438
438
|
// 33-36 = pageup, pagedown, end, home; 45 = insert
|
439
439
|
if (this.options.toolbar && (/^enter|left|up|right|down|delete|backspace$/i.test(e.key) || (c >= 33 && c <= 36) || c == 45 || e.meta || e.control)){
|
@@ -444,31 +444,31 @@ this.MooEditable = new Class({
|
|
444
444
|
this.checkStates();
|
445
445
|
}
|
446
446
|
}
|
447
|
-
|
447
|
+
|
448
448
|
this.fireEvent('editorKeyUp', [e, this]);
|
449
449
|
},
|
450
|
-
|
450
|
+
|
451
451
|
editorKeyDown: function(e){
|
452
452
|
if (this.editorDisabled){
|
453
453
|
e.stop();
|
454
454
|
return;
|
455
455
|
}
|
456
|
-
|
456
|
+
|
457
457
|
if (e.key == 'enter'){
|
458
458
|
if (this.options.paragraphise){
|
459
459
|
if (e.shift && (Browser.safari || Browser.chrome)){
|
460
460
|
var s = this.selection;
|
461
461
|
var r = s.getRange();
|
462
|
-
|
462
|
+
|
463
463
|
// Insert BR element
|
464
464
|
var br = this.doc.createElement('br');
|
465
465
|
r.insertNode(br);
|
466
|
-
|
466
|
+
|
467
467
|
// Place caret after BR
|
468
468
|
r.setStartAfter(br);
|
469
469
|
r.setEndAfter(br);
|
470
470
|
s.setRange(r);
|
471
|
-
|
471
|
+
|
472
472
|
// Could not place caret after BR then insert an nbsp entity and move the caret
|
473
473
|
if (s.getSelection().focusNode == br.previousSibling){
|
474
474
|
var nbsp = this.doc.createTextNode('\u00a0');
|
@@ -478,10 +478,10 @@ this.MooEditable = new Class({
|
|
478
478
|
s.selectNode(nbsp);
|
479
479
|
s.collapse(1);
|
480
480
|
}
|
481
|
-
|
481
|
+
|
482
482
|
// Scroll to new position, scrollIntoView can't be used due to bug: http://bugs.webkit.org/show_bug.cgi?id=16117
|
483
483
|
this.win.scrollTo(0, Element.getOffsets(s.getRange().startContainer).y);
|
484
|
-
|
484
|
+
|
485
485
|
e.preventDefault();
|
486
486
|
} else if (Browser.firefox || Browser.safari || Browser.chrome){
|
487
487
|
var node = this.selection.getNode();
|
@@ -502,7 +502,7 @@ this.MooEditable = new Class({
|
|
502
502
|
}
|
503
503
|
}
|
504
504
|
}
|
505
|
-
|
505
|
+
|
506
506
|
if (Browser.opera){
|
507
507
|
var ctrlmeta = e.control || e.meta;
|
508
508
|
if (ctrlmeta && e.key == 'x'){
|
@@ -513,37 +513,37 @@ this.MooEditable = new Class({
|
|
513
513
|
this.fireEvent('editorPaste', [e, this]);
|
514
514
|
}
|
515
515
|
}
|
516
|
-
|
516
|
+
|
517
517
|
this.fireEvent('editorKeyDown', [e, this]);
|
518
518
|
},
|
519
|
-
|
519
|
+
|
520
520
|
editorCut: function(e){
|
521
521
|
if (this.editorDisabled){
|
522
522
|
e.stop();
|
523
523
|
return;
|
524
524
|
}
|
525
|
-
|
525
|
+
|
526
526
|
this.fireEvent('editorCut', [e, this]);
|
527
527
|
},
|
528
|
-
|
528
|
+
|
529
529
|
editorCopy: function(e){
|
530
530
|
if (this.editorDisabled){
|
531
531
|
e.stop();
|
532
532
|
return;
|
533
533
|
}
|
534
|
-
|
534
|
+
|
535
535
|
this.fireEvent('editorCopy', [e, this]);
|
536
536
|
},
|
537
|
-
|
537
|
+
|
538
538
|
editorPaste: function(e){
|
539
539
|
if (this.editorDisabled){
|
540
540
|
e.stop();
|
541
541
|
return;
|
542
542
|
}
|
543
|
-
|
543
|
+
|
544
544
|
this.fireEvent('editorPaste', [e, this]);
|
545
545
|
},
|
546
|
-
|
546
|
+
|
547
547
|
keyListener: function(e){
|
548
548
|
var key = (Browser.Platform.mac) ? e.meta : e.control;
|
549
549
|
if (!key || !this.keys[e.key]) return;
|
@@ -620,7 +620,7 @@ this.MooEditable = new Class({
|
|
620
620
|
}
|
621
621
|
return this;
|
622
622
|
},
|
623
|
-
|
623
|
+
|
624
624
|
ensureRootElement: function(val){
|
625
625
|
if (this.options.rootElement){
|
626
626
|
var el = new Element('div', {html: val.trim()});
|
@@ -648,7 +648,7 @@ this.MooEditable = new Class({
|
|
648
648
|
if (start >= 0 && create){
|
649
649
|
var newel = new Element(this.options.rootElement, {html: html});
|
650
650
|
el.replaceChild(newel, el.childNodes[start]);
|
651
|
-
for (var k=start+1; k<i; k++){
|
651
|
+
for (var k=start+1; k<i; k++){
|
652
652
|
el.removeChild(el.childNodes[k]);
|
653
653
|
length--;
|
654
654
|
i--;
|
@@ -668,7 +668,7 @@ this.MooEditable = new Class({
|
|
668
668
|
var element = this.selection.getNode();
|
669
669
|
if (!element) return;
|
670
670
|
if (typeOf(element) != 'element') return;
|
671
|
-
|
671
|
+
|
672
672
|
this.actions.each(function(action){
|
673
673
|
var item = this.toolbar.getItem(action);
|
674
674
|
if (!item) return;
|
@@ -676,20 +676,20 @@ this.MooEditable = new Class({
|
|
676
676
|
|
677
677
|
var states = MooEditable.Actions[action]['states'];
|
678
678
|
if (!states) return;
|
679
|
-
|
679
|
+
|
680
680
|
// custom checkState
|
681
681
|
if (typeOf(states) == 'function'){
|
682
682
|
states.attempt([document.id(element), item], this);
|
683
683
|
return;
|
684
684
|
}
|
685
|
-
|
685
|
+
|
686
686
|
try{
|
687
687
|
if (this.doc.queryCommandState(action)){
|
688
688
|
item.activate();
|
689
689
|
return;
|
690
690
|
}
|
691
691
|
} catch(e){}
|
692
|
-
|
692
|
+
|
693
693
|
if (states.tags){
|
694
694
|
var el = element;
|
695
695
|
do {
|
@@ -722,13 +722,13 @@ this.MooEditable = new Class({
|
|
722
722
|
|
723
723
|
cleanup: function(source){
|
724
724
|
if (!this.options.cleanup) return source.trim();
|
725
|
-
|
725
|
+
|
726
726
|
do {
|
727
727
|
var oSource = source;
|
728
|
-
|
728
|
+
|
729
729
|
// replace base URL references: ie localize links
|
730
730
|
if (this.options.baseURL){
|
731
|
-
source = source.replace('="' + this.options.baseURL, '="');
|
731
|
+
source = source.replace('="' + this.options.baseURL, '="');
|
732
732
|
}
|
733
733
|
|
734
734
|
// Webkit cleanup
|
@@ -820,11 +820,11 @@ this.MooEditable = new Class({
|
|
820
820
|
if (this.options.xhtml){
|
821
821
|
source = source.replace(/<img([^>]+)(\s*[^\/])>(<\/img>)*/gi, '<img$1$2 />');
|
822
822
|
}
|
823
|
-
|
823
|
+
|
824
824
|
//remove double <p> tags and empty <p> tags
|
825
825
|
source = source.replace(/<p>(?:\s*)<p>/g, '<p>');
|
826
826
|
source = source.replace(/<\/p>\s*<\/p>/g, '</p>');
|
827
|
-
|
827
|
+
|
828
828
|
// Replace <br>s inside <pre> automatically added by some browsers
|
829
829
|
source = source.replace(/<pre[^>]*>.*?<\/pre>/gi, function(match){
|
830
830
|
return match.replace(/<br ?\/?>/gi, '\n');
|
@@ -961,7 +961,7 @@ MooEditable.Selection = new Class({
|
|
961
961
|
|
962
962
|
return document.id(el);
|
963
963
|
}
|
964
|
-
|
964
|
+
|
965
965
|
return document.id(r.item ? r.item(0) : r.parentElement());
|
966
966
|
},
|
967
967
|
|
@@ -996,18 +996,18 @@ MooEditable.Selection = new Class({
|
|
996
996
|
// Wrapper functions to be used internally and for plugins, defaults to en-US
|
997
997
|
var phrases = {};
|
998
998
|
MooEditable.Locale = {
|
999
|
-
|
999
|
+
|
1000
1000
|
define: function(key, value){
|
1001
1001
|
if (typeOf(window.Locale) != 'null') return Locale.define('en-US', 'MooEditable', key, value);
|
1002
1002
|
if (typeOf(key) == 'object') Object.merge(phrases, key);
|
1003
1003
|
else phrases[key] = value;
|
1004
1004
|
},
|
1005
|
-
|
1005
|
+
|
1006
1006
|
get: function(key){
|
1007
1007
|
if (typeOf(window.Locale) != 'null') return Locale.get('MooEditable.' + key);
|
1008
1008
|
return key ? phrases[key] : '';
|
1009
1009
|
}
|
1010
|
-
|
1010
|
+
|
1011
1011
|
};
|
1012
1012
|
|
1013
1013
|
MooEditable.Locale.define({
|
@@ -1044,18 +1044,18 @@ MooEditable.UI.Toolbar= new Class({
|
|
1044
1044
|
*/
|
1045
1045
|
'class': ''
|
1046
1046
|
},
|
1047
|
-
|
1047
|
+
|
1048
1048
|
initialize: function(options){
|
1049
1049
|
this.setOptions(options);
|
1050
1050
|
this.el = new Element('div', {'class': 'mooeditable-ui-toolbar ' + this.options['class']});
|
1051
1051
|
this.items = {};
|
1052
1052
|
this.content = null;
|
1053
1053
|
},
|
1054
|
-
|
1054
|
+
|
1055
1055
|
toElement: function(){
|
1056
1056
|
return this.el;
|
1057
1057
|
},
|
1058
|
-
|
1058
|
+
|
1059
1059
|
render: function(actions){
|
1060
1060
|
if (this.content){
|
1061
1061
|
this.el.adopt(this.content);
|
@@ -1066,7 +1066,7 @@ MooEditable.UI.Toolbar= new Class({
|
|
1066
1066
|
}
|
1067
1067
|
return this;
|
1068
1068
|
},
|
1069
|
-
|
1069
|
+
|
1070
1070
|
addItem: function(action){
|
1071
1071
|
var self = this;
|
1072
1072
|
var act = MooEditable.Actions[action];
|
@@ -1083,15 +1083,15 @@ MooEditable.UI.Toolbar= new Class({
|
|
1083
1083
|
document.id(item).inject(this.el);
|
1084
1084
|
return item;
|
1085
1085
|
},
|
1086
|
-
|
1086
|
+
|
1087
1087
|
getItem: function(action){
|
1088
1088
|
return this.items[action];
|
1089
1089
|
},
|
1090
|
-
|
1090
|
+
|
1091
1091
|
addSeparator: function(){
|
1092
1092
|
return new Element('span', {'class': 'toolbar-separator'}).inject(this.el);
|
1093
1093
|
},
|
1094
|
-
|
1094
|
+
|
1095
1095
|
itemAction: function(){
|
1096
1096
|
this.fireEvent('itemAction', arguments);
|
1097
1097
|
},
|
@@ -1109,17 +1109,17 @@ MooEditable.UI.Toolbar= new Class({
|
|
1109
1109
|
});
|
1110
1110
|
return this;
|
1111
1111
|
},
|
1112
|
-
|
1112
|
+
|
1113
1113
|
show: function(){
|
1114
1114
|
this.el.setStyle('display', '');
|
1115
1115
|
return this;
|
1116
1116
|
},
|
1117
|
-
|
1117
|
+
|
1118
1118
|
hide: function(){
|
1119
1119
|
this.el.setStyle('display', 'none');
|
1120
1120
|
return this;
|
1121
1121
|
}
|
1122
|
-
|
1122
|
+
|
1123
1123
|
});
|
1124
1124
|
|
1125
1125
|
MooEditable.UI.Button = new Class({
|
@@ -1143,11 +1143,11 @@ MooEditable.UI.Button = new Class({
|
|
1143
1143
|
this.name = this.options.name;
|
1144
1144
|
this.render();
|
1145
1145
|
},
|
1146
|
-
|
1146
|
+
|
1147
1147
|
toElement: function(){
|
1148
1148
|
return this.el;
|
1149
1149
|
},
|
1150
|
-
|
1150
|
+
|
1151
1151
|
render: function(){
|
1152
1152
|
var self = this;
|
1153
1153
|
var key = (Browser.Platform.mac) ? 'Cmd' : 'Ctrl';
|
@@ -1164,7 +1164,7 @@ MooEditable.UI.Button = new Class({
|
|
1164
1164
|
}
|
1165
1165
|
});
|
1166
1166
|
if (this.options.mode != 'icon') this.el.addClass('mooeditable-ui-button-' + this.options.mode);
|
1167
|
-
|
1167
|
+
|
1168
1168
|
this.active = false;
|
1169
1169
|
this.disabled = false;
|
1170
1170
|
|
@@ -1173,20 +1173,20 @@ MooEditable.UI.Button = new Class({
|
|
1173
1173
|
mouseenter: function(e){ this.addClass('hover'); },
|
1174
1174
|
mouseleave: function(e){ this.removeClass('hover'); }
|
1175
1175
|
});
|
1176
|
-
|
1176
|
+
|
1177
1177
|
return this;
|
1178
1178
|
},
|
1179
|
-
|
1179
|
+
|
1180
1180
|
click: function(e){
|
1181
1181
|
e.preventDefault();
|
1182
1182
|
if (this.disabled) return;
|
1183
1183
|
this.action(e);
|
1184
1184
|
},
|
1185
|
-
|
1185
|
+
|
1186
1186
|
action: function(){
|
1187
|
-
this.fireEvent('action', [this].concat(Array.
|
1187
|
+
this.fireEvent('action', [this].concat(Array.convert(arguments)));
|
1188
1188
|
},
|
1189
|
-
|
1189
|
+
|
1190
1190
|
enable: function(){
|
1191
1191
|
if (this.active) this.el.removeClass('onActive');
|
1192
1192
|
if (!this.disabled) return;
|
@@ -1197,7 +1197,7 @@ MooEditable.UI.Button = new Class({
|
|
1197
1197
|
});
|
1198
1198
|
return this;
|
1199
1199
|
},
|
1200
|
-
|
1200
|
+
|
1201
1201
|
disable: function(){
|
1202
1202
|
if (this.disabled) return;
|
1203
1203
|
this.disabled = true;
|
@@ -1207,20 +1207,20 @@ MooEditable.UI.Button = new Class({
|
|
1207
1207
|
});
|
1208
1208
|
return this;
|
1209
1209
|
},
|
1210
|
-
|
1210
|
+
|
1211
1211
|
activate: function(){
|
1212
1212
|
if (this.disabled) return;
|
1213
1213
|
this.active = true;
|
1214
1214
|
this.el.addClass('onActive');
|
1215
1215
|
return this;
|
1216
1216
|
},
|
1217
|
-
|
1217
|
+
|
1218
1218
|
deactivate: function(){
|
1219
1219
|
this.active = false;
|
1220
1220
|
this.el.removeClass('onActive');
|
1221
1221
|
return this;
|
1222
1222
|
}
|
1223
|
-
|
1223
|
+
|
1224
1224
|
});
|
1225
1225
|
|
1226
1226
|
MooEditable.UI.Dialog = new Class({
|
@@ -1239,7 +1239,7 @@ MooEditable.UI.Dialog = new Class({
|
|
1239
1239
|
initialize: function(html, options){
|
1240
1240
|
this.setOptions(options);
|
1241
1241
|
this.html = html;
|
1242
|
-
|
1242
|
+
|
1243
1243
|
var self = this;
|
1244
1244
|
this.el = new Element('div', {
|
1245
1245
|
'class': 'mooeditable-ui-dialog ' + self.options['class'],
|
@@ -1252,22 +1252,22 @@ MooEditable.UI.Dialog = new Class({
|
|
1252
1252
|
}
|
1253
1253
|
});
|
1254
1254
|
},
|
1255
|
-
|
1255
|
+
|
1256
1256
|
toElement: function(){
|
1257
1257
|
return this.el;
|
1258
1258
|
},
|
1259
|
-
|
1259
|
+
|
1260
1260
|
click: function(){
|
1261
1261
|
this.fireEvent('click', arguments);
|
1262
1262
|
return this;
|
1263
1263
|
},
|
1264
|
-
|
1264
|
+
|
1265
1265
|
open: function(){
|
1266
1266
|
this.el.setStyle('display', '');
|
1267
1267
|
this.fireEvent('open', this);
|
1268
1268
|
return this;
|
1269
1269
|
},
|
1270
|
-
|
1270
|
+
|
1271
1271
|
close: function(){
|
1272
1272
|
this.el.setStyle('display', 'none');
|
1273
1273
|
this.fireEvent('close', this);
|
@@ -1359,7 +1359,7 @@ MooEditable.Actions = {
|
|
1359
1359
|
}
|
1360
1360
|
}
|
1361
1361
|
},
|
1362
|
-
|
1362
|
+
|
1363
1363
|
italic: {
|
1364
1364
|
title: MooEditable.Locale.get('italic'),
|
1365
1365
|
options: {
|
@@ -1395,7 +1395,7 @@ MooEditable.Actions = {
|
|
1395
1395
|
}
|
1396
1396
|
}
|
1397
1397
|
},
|
1398
|
-
|
1398
|
+
|
1399
1399
|
underline: {
|
1400
1400
|
title: MooEditable.Locale.get('underline'),
|
1401
1401
|
options: {
|
@@ -1406,7 +1406,7 @@ MooEditable.Actions = {
|
|
1406
1406
|
css: {'text-decoration': 'underline'}
|
1407
1407
|
}
|
1408
1408
|
},
|
1409
|
-
|
1409
|
+
|
1410
1410
|
strikethrough: {
|
1411
1411
|
title: MooEditable.Locale.get('strikethrough'),
|
1412
1412
|
options: {
|
@@ -1417,46 +1417,46 @@ MooEditable.Actions = {
|
|
1417
1417
|
css: {'text-decoration': 'line-through'}
|
1418
1418
|
}
|
1419
1419
|
},
|
1420
|
-
|
1420
|
+
|
1421
1421
|
insertunorderedlist: {
|
1422
1422
|
title: MooEditable.Locale.get('unorderedList'),
|
1423
1423
|
states: {
|
1424
1424
|
tags: ['ul']
|
1425
1425
|
}
|
1426
1426
|
},
|
1427
|
-
|
1427
|
+
|
1428
1428
|
insertorderedlist: {
|
1429
1429
|
title: MooEditable.Locale.get('orderedList'),
|
1430
1430
|
states: {
|
1431
1431
|
tags: ['ol']
|
1432
1432
|
}
|
1433
1433
|
},
|
1434
|
-
|
1434
|
+
|
1435
1435
|
indent: {
|
1436
1436
|
title: MooEditable.Locale.get('indent'),
|
1437
1437
|
states: {
|
1438
1438
|
tags: ['blockquote']
|
1439
1439
|
}
|
1440
1440
|
},
|
1441
|
-
|
1441
|
+
|
1442
1442
|
outdent: {
|
1443
1443
|
title: MooEditable.Locale.get('outdent')
|
1444
1444
|
},
|
1445
|
-
|
1445
|
+
|
1446
1446
|
undo: {
|
1447
1447
|
title: MooEditable.Locale.get('undo'),
|
1448
1448
|
options: {
|
1449
1449
|
shortcut: 'z'
|
1450
1450
|
}
|
1451
1451
|
},
|
1452
|
-
|
1452
|
+
|
1453
1453
|
redo: {
|
1454
1454
|
title: MooEditable.Locale.get('redo'),
|
1455
1455
|
options: {
|
1456
1456
|
shortcut: 'y'
|
1457
1457
|
}
|
1458
1458
|
},
|
1459
|
-
|
1459
|
+
|
1460
1460
|
unlink: {
|
1461
1461
|
title: MooEditable.Locale.get('removeHyperlink')
|
1462
1462
|
},
|