Zeile 2 | Zeile 2 |
---|
|
|
$(document).ready(function($) {
| $(function($) {
|
'use strict';
var $document = $(document);
| 'use strict';
var $document = $(document);
|
Zeile 63 | Zeile 63 |
---|
} }) .set('li', { format: '[*]{0}', excludeClosing: true })
|
} }) .set('li', { format: '[*]{0}', excludeClosing: true })
|
.set('*', { excludeClosing: true, isInline: false });
| .set('*', { excludeClosing: true, isInline: true });
|
$.sceditor.command .set('bulletlist', { txtExec: ['[list]\n[*]', '\n[/list]'] })
| $.sceditor.command .set('bulletlist', { txtExec: ['[list]\n[*]', '\n[/list]'] })
|
Zeile 78 | Zeile 78 |
---|
format: function($elm, content) { var fontSize, sizes = ['xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'],
|
format: function($elm, content) { var fontSize, sizes = ['xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'],
|
size = $elm.data('scefontsize');
| size = $elm.attr('size');
|
|
|
if(!size) { fontSize = $elm.css('fontSize');
// Most browsers return px value but IE returns 1-7 if(fontSize.indexOf('px') > -1) { // convert size to an int fontSize = fontSize.replace('px', '') - 0; size = 1;
| if (!size) { fontSize = $elm.css('fontSize'); // Most browsers return px value but IE returns 1-7 if(fontSize.indexOf('px') > -1) { // convert size to an int fontSize = fontSize.replace('px', '') - 0; size = 1;
|
|
|
if(fontSize > 9) size = 1; if(fontSize > 12) size = 2; if(fontSize > 15) size = 3; if(fontSize > 17) size = 4; if(fontSize > 23) size = 5; if(fontSize > 31) size = 6; if(fontSize > 47)
| if(fontSize > 9) size = 2; if(fontSize > 12) size = 3; if(fontSize > 15) size = 4; if(fontSize > 17) size = 5; if(fontSize > 23) size = 6; if(fontSize > 31) size = 7; } else { size = (~~fontSize) + 1; }
if(size > 7)
|
size = 7;
|
size = 7;
|
| if(size < 1) size = 1;
size = sizes[size-1]; } else { size = sizes[size-1];
|
}
|
}
|
else size = (~~fontSize) + 1;
| |
|
|
| return '[size=' + size + ']' + content + '[/size]'; }, html: function(token, attrs, content) { var sizes = ['xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large'], size = $.inArray(attrs.defaultattr, sizes)+1; if (!isNaN(attrs.defaultattr)) { size = attrs.defaultattr;
|
if(size > 7) size = 7; if(size < 1) size = 1;
|
if(size > 7) size = 7; if(size < 1) size = 1;
|
size = sizes[size-1];
| |
}
|
}
|
return '[size=' + size + ']' + content + '[/size]'; }, html: function(token, attrs, content) { return '<span data-scefontsize="' + attrs.defaultattr + '" style="font-size:' + attrs.defaultattr + '">' + content + '</span>';
| if (size < 0) { size = 0; } return '<font data-scefontsize="' + attrs.defaultattr + '" size="' + size + '">' + content + '</font>';
|
} });
| } });
|
Zeile 131 | Zeile 143 |
---|
editor.closeDropDown(true); e.preventDefault(); };
|
editor.closeDropDown(true); e.preventDefault(); };
|
|
|
for (var i=1; i <= 7; i++) content.append($('<a class="sceditor-fontsize-option" data-size="' + i + '" href="#"><font size="' + i + '">' + i + '</font></a>').click(clickFunc));
|
for (var i=1; i <= 7; i++) content.append($('<a class="sceditor-fontsize-option" data-size="' + i + '" href="#"><font size="' + i + '">' + i + '</font></a>').click(clickFunc));
|
|
|
editor.createDropDown(caller, 'fontsize-picker', content);
|
editor.createDropDown(caller, 'fontsize-picker', content);
|
| }, exec: function (caller) { var editor = this;
$.sceditor.command.get('size')._dropDown( editor, caller, function(fontSize) { editor.execCommand('fontsize', fontSize); } );
|
}, txtExec: function(caller) { var editor = this,
| }, txtExec: function(caller) { var editor = this,
|
Zeile 164 | Zeile 187 |
---|
var author = '', $elm = $(element), $cite = $elm.children('cite').first();
|
var author = '', $elm = $(element), $cite = $elm.children('cite').first();
|
| $cite.html($cite.text());
|
if($cite.length === 1 || $elm.data('author')) {
|
if($cite.length === 1 || $elm.data('author')) {
|
author = $elm.data('author') || $cite.text();
| author = $cite.text() || $elm.data('author');
|
$elm.data('author', author); $cite.remove();
content = this.elementToBbcode($(element));
|
$elm.data('author', author); $cite.remove();
content = this.elementToBbcode($(element));
|
if($elm.data('pid') || $elm.data('dateline')) { author = "='" + author; } else { author = "=" + author; }
| author = '=' + author.replace(/(^\s+|\s+$)/g, '');
|
$elm.prepend($cite);
|
$elm.prepend($cite);
|
}
if($elm.data('pid')) author += "' pid='" + $elm.data('pid') + "'";
| }
if($elm.data('pid')) author += " pid='" + $elm.data('pid') + "'";
|
if($elm.data('dateline')) author += " dateline='" + $elm.data('dateline') + "'";
return '[quote' + author + ']' + content + '[/quote]';
|
if($elm.data('dateline')) author += " dateline='" + $elm.data('dateline') + "'";
return '[quote' + author + ']' + content + '[/quote]';
|
},
| },
|
html: function(token, attrs, content) { var data = '';
| html: function(token, attrs, content) { var data = '';
|
Zeile 203 | Zeile 220 |
---|
data += ' data-dateline="' + attrs.dateline + '"';
if(typeof attrs.defaultattr !== "undefined")
|
data += ' data-dateline="' + attrs.dateline + '"';
if(typeof attrs.defaultattr !== "undefined")
|
{ content = '<cite contenteditable="false">' + attrs.defaultattr.replace(/\s/g, ' ') + '</cite>' + content; data += ' data-author="' + attrs.defaultattr + '"'; }
| content = '<cite>' + attrs.defaultattr.replace(/ /g, ' ') + '</cite>' + content;
|
return '<blockquote' + data + '>' + content + '</blockquote>'; },
| return '<blockquote' + data + '>' + content + '</blockquote>'; },
|
Zeile 216 | Zeile 230 |
---|
breakStart: true, breakEnd: true });
|
breakStart: true, breakEnd: true });
|
|
|
/************************************************************ * Update font tag to allow limiting to only first in stack *
| /************************************************************ * Update font tag to allow limiting to only first in stack *
|
Zeile 229 | Zeile 243 |
---|
if(element[0].nodeName.toLowerCase() !== 'font' || !(font = element.attr('face'))) font = element.css('font-family');
|
if(element[0].nodeName.toLowerCase() !== 'font' || !(font = element.attr('face'))) font = element.css('font-family');
|
|
|
if(typeof font == 'string' && font != '' && font != 'defaultattr')
|
if(typeof font == 'string' && font != '' && font != 'defaultattr')
|
{
| {
|
return '[font=' + this.stripQuotes(font) + ']' + content + '[/font]';
|
return '[font=' + this.stripQuotes(font) + ']' + content + '[/font]';
|
} else { return content;
| } else { return content;
|
} }, html: function(token, attrs, content) {
| } }, html: function(token, attrs, content) {
|
Zeile 267 | Zeile 281 |
---|
});
$.sceditor.command.set("php", {
|
});
$.sceditor.command.set("php", {
|
_dropDown: function (editor, caller, html) {
| _dropDown: function (editor, caller) {
|
var $content;
$content = $(
| var $content;
$content = $(
|
Zeile 286 | Zeile 300 |
---|
var val = $content.find('#php').val(), before = '[php]', end = '[/php]';
|
var val = $content.find('#php').val(), before = '[php]', end = '[/php]';
|
if (html) { before = before + html + end; end = null; } else if (val) {
| if (val) {
|
before = before + val + end; end = null; }
| before = before + val + end; end = null; }
|
Zeile 304 | Zeile 314 |
---|
editor.createDropDown(caller, 'insertphp', $content); }, exec: function (caller) {
|
editor.createDropDown(caller, 'insertphp', $content); }, exec: function (caller) {
|
| if ($.trim(this.getRangeHelper().selectedRange())) { this.insert('[php]', '[/php]'); return; }
|
$.sceditor.command.get('php')._dropDown(this, caller); }, txtExec: ['[php]', '[/php]'],
| $.sceditor.command.get('php')._dropDown(this, caller); }, txtExec: ['[php]', '[/php]'],
|
Zeile 332 | Zeile 346 |
---|
});
$.sceditor.command.set("code", {
|
});
$.sceditor.command.set("code", {
|
_dropDown: function (editor, caller, html) {
| _dropDown: function (editor, caller) {
|
var $content;
$content = $(
| var $content;
$content = $(
|
Zeile 352 | Zeile 366 |
---|
before = '[code]', end = '[/code]';
|
before = '[code]', end = '[/code]';
|
if (html) { before = before + html + end; end = null; } else if (val) {
| if (val) {
|
before = before + val + end; end = null; }
| before = before + val + end; end = null; }
|
Zeile 369 | Zeile 379 |
---|
editor.createDropDown(caller, 'insertcode', $content); }, exec: function (caller) {
|
editor.createDropDown(caller, 'insertcode', $content); }, exec: function (caller) {
|
| if ($.trim(this.getRangeHelper().selectedRange())) { this.insert('[code]', '[/code]'); return; }
|
$.sceditor.command.get('code')._dropDown(this, caller); }, txtExec: ['[code]', '[/code]'],
| $.sceditor.command.get('code')._dropDown(this, caller); }, txtExec: ['[code]', '[/code]'],
|
Zeile 412 | Zeile 426 |
---|
else editor.execCommand('createlink', 'mailto:' + val); }
|
else editor.execCommand('createlink', 'mailto:' + val); }
|
|
|
editor.closeDropDown(true); e.preventDefault(); });
| editor.closeDropDown(true); e.preventDefault(); });
|
Zeile 431 | Zeile 445 |
---|
**************************/ $.sceditor.plugins.bbcode.bbcode.set('video', { allowsEmpty: true,
|
**************************/ $.sceditor.plugins.bbcode.bbcode.set('video', { allowsEmpty: true,
|
| allowedChildren: ['#', '#newline'],
|
tags: { iframe: { 'data-mybb-vt': null
| tags: { iframe: { 'data-mybb-vt': null
|
Zeile 446 | Zeile 461 |
---|
facebook: '<iframe src="{url}" width="625" height="350" frameborder="0" data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>', liveleak: '<iframe width="500" height="300" src="{url}" frameborder="0" data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>', metacafe: '<iframe src="{url}" width="440" height="248" frameborder=0 data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>',
|
facebook: '<iframe src="{url}" width="625" height="350" frameborder="0" data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>', liveleak: '<iframe width="500" height="300" src="{url}" frameborder="0" data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>', metacafe: '<iframe src="{url}" width="440" height="248" frameborder=0 data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>',
|
veoh: '<iframe src="{url}" width="410" height="341" frameborder="0" data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>',
| mixer: '<iframe allowfullscreen="true" src="{url}" width="620" height="349" frameborder="0" data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>',
|
vimeo: '<iframe src="{url}" width="500" height="281" frameborder="0" data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>',
|
vimeo: '<iframe src="{url}" width="500" height="281" frameborder="0" data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>',
|
youtube: '<iframe width="560" height="315" src="{url}" frameborder="0" data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>'
| youtube: '<iframe width="560" height="315" src="{url}" frameborder="0" data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>', twitch: '<iframe src="{url}" frameborder="0" scrolling="no" height="378" width="620" data-mybb-vt="{type}" data-mybb-vsrc="{src}"></iframe>'
|
};
if(html[attrs.defaultattr])
| };
if(html[attrs.defaultattr])
|
Zeile 456 | Zeile 472 |
---|
switch(attrs.defaultattr) { case 'dailymotion':
|
switch(attrs.defaultattr) { case 'dailymotion':
|
matches = content.match(/dailymotion\.com\/video\/([^_]+)/); url = matches ? 'http://www.dailymotion.com/embed/video/' + matches[1] : false;
| matches = content.match(/(dailymotion\.com\/video\/|dai\.ly\/)([^\/]+)/); url = matches ? '//www.dailymotion.com/embed/video/' + matches[2] : false;
|
break; case 'facebook': matches = content.match(/facebook\.com\/(?:photo.php\?v=|video\/video.php\?v=|video\/embed\?video_id=|v\/?)(\d+)/); url = matches ? 'https://www.facebook.com/video/embed?video_id=' + matches[1] : false; break; case 'liveleak':
|
break; case 'facebook': matches = content.match(/facebook\.com\/(?:photo.php\?v=|video\/video.php\?v=|video\/embed\?video_id=|v\/?)(\d+)/); url = matches ? 'https://www.facebook.com/video/embed?video_id=' + matches[1] : false; break; case 'liveleak':
|
matches = content.match(/liveleak\.com\/(?:view\?i=)([^\/]+)/);
| matches = content.match(/liveleak\.com\/(?:view\?[a-z]=)([^\/]+)/);
|
url = matches ? 'http://www.liveleak.com/ll_embed?i=' + matches[1] : false; break; case 'metacafe': matches = content.match(/metacafe\.com\/watch\/([^\/]+)/);
|
url = matches ? 'http://www.liveleak.com/ll_embed?i=' + matches[1] : false; break; case 'metacafe': matches = content.match(/metacafe\.com\/watch\/([^\/]+)/);
|
url = matches ? 'http://www.metacafe.com/embed/' + matches[1] : false;
| url = matches ? 'http://www.metacafe.com/embed/' + matches[1] + '/' : false;
|
break;
|
break;
|
case 'veoh': matches = content.match(/veoh\.com\/watch\/([^\/]+)/); url = matches ? '//www.veoh.com/swf/webplayer/WebPlayer.swf?videoAutoPlay=0&permalinkId=' + matches[1] : false;
| case 'mixer': matches = content.match(/mixer\.com\/([^\/]+)/); url = matches ? '//mixer.com/embed/player/' + matches[1] + "?disableLowLatency=1" : false;
|
break; case 'vimeo': matches = content.match(/vimeo.com\/(\d+)($|\/)/);
| break; case 'vimeo': matches = content.match(/vimeo.com\/(\d+)($|\/)/);
|
Zeile 482 | Zeile 498 |
---|
case 'youtube': matches = content.match(/(?:v=|v\/|embed\/|youtu\.be\/)(.{11})/); url = matches ? '//www.youtube.com/embed/' + matches[1] : false;
|
case 'youtube': matches = content.match(/(?:v=|v\/|embed\/|youtu\.be\/)(.{11})/); url = matches ? '//www.youtube.com/embed/' + matches[1] : false;
|
| break; case 'twitch': matches = content.match(/twitch\.tv\/(?:[\w+_-]+)\/v\/(\d+)/); url = matches ? '//player.twitch.tv/?video=v' + matches[1] : false;
|
break; }
| break; }
|
Zeile 494 | Zeile 514 |
---|
} }
|
} }
|
return token.val + content + (token.closing ? token.closing.val : '');
| return $.sceditor.escapeEntities(token.val + content + (token.closing ? token.closing.val : ''));
|
} });
| } });
|
Zeile 511 | Zeile 531 |
---|
'<option value="facebook">' + editor._('Facebook') + '</option>' + '<option value="liveleak">' + editor._('LiveLeak') + '</option>' + '<option value="metacafe">' + editor._('MetaCafe') + '</option>' +
|
'<option value="facebook">' + editor._('Facebook') + '</option>' + '<option value="liveleak">' + editor._('LiveLeak') + '</option>' + '<option value="metacafe">' + editor._('MetaCafe') + '</option>' +
|
'<option value="veoh">' + editor._('Veoh') + '</option>' +
| '<option value="mixer">' + editor._('Mixer') + '</option>' +
|
'<option value="vimeo">' + editor._('Vimeo') + '</option>' + '<option value="youtube">' + editor._('Youtube') + '</option>' +
|
'<option value="vimeo">' + editor._('Vimeo') + '</option>' + '<option value="youtube">' + editor._('Youtube') + '</option>' +
|
| '<option value="twitch">' + editor._('Twitch') + '</option>' +
|
'</select>'+ '</div>' + '<div>' +
| '</select>'+ '</div>' + '<div>' +
|
Zeile 548 | Zeile 569 |
---|
/*************************************
|
/*************************************
|
* Remove last bits of table support *
| * Remove last bits of table, superscript/subscript, youtube and ltr/rtl support *
|
*************************************/
|
*************************************/
|
$.sceditor.command.remove('table'); $.sceditor.plugins.bbcode.bbcode.remove('table') .remove('tr') .remove('th') .remove('td');
| $.sceditor.command .remove('table').remove('subscript').remove('superscript').remove('youtube').remove('ltr').remove('rtl'); $.sceditor.plugins.bbcode.bbcode .remove('table').remove('tr').remove('th').remove('td').remove('sub').remove('sup').remove('youtube').remove('ltr').remove('rtl');
|
|
|
Zeile 606 | Zeile 627 |
---|
} }); }
|
} }); }
|
|
/**************** * Fix url code * ****************/ $.sceditor.plugins.bbcode.bbcode.set('url', { html: function(token, attrs, content) {
if(!attrs.defaultattr) attrs.defaultattr = content;
return '<a href="' + $.sceditor.escapeUriScheme($.sceditor.escapeEntities(attrs.defaultattr)) + '">' + content + '</a>'; } });
|
});
| });
|