added code, quote styles to editor
This commit is contained in:
parent
8d0ba93436
commit
dfd3cef734
4 changed files with 29 additions and 53 deletions
|
@ -59,38 +59,11 @@
|
||||||
$Text = preg_replace("(\[font=(.+?)\](.+?)\[\/font\])","<span style=\"font-family: $1;\">$2</span>",$Text);
|
$Text = preg_replace("(\[font=(.+?)\](.+?)\[\/font\])","<span style=\"font-family: $1;\">$2</span>",$Text);
|
||||||
|
|
||||||
// Declare the format for [code] layout
|
// Declare the format for [code] layout
|
||||||
$CodeLayout = '<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
|
$CodeLayout = '<code>$1</code>';
|
||||||
<tr>
|
|
||||||
<td class="quotecodeheader"> Code:</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="codebody">$1</td>
|
|
||||||
</tr>
|
|
||||||
</table>';
|
|
||||||
// Check for [code] text
|
// Check for [code] text
|
||||||
$Text = preg_replace("/\[code\](.+?)\[\/code\]/is","$CodeLayout", $Text);
|
$Text = preg_replace("/\[code\](.+?)\[\/code\]/is","$CodeLayout", $Text);
|
||||||
// Declare the format for [php] layout
|
|
||||||
$phpLayout = '<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
|
|
||||||
<tr>
|
|
||||||
<td class="quotecodeheader"> Code:</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="codebody">$1</td>
|
|
||||||
</tr>
|
|
||||||
</table>';
|
|
||||||
// Check for [php] text
|
|
||||||
$Text = preg_replace("/\[php\](.+?)\[\/php\]/is",$phpLayout, $Text);
|
|
||||||
|
|
||||||
// Declare the format for [quote] layout
|
// Declare the format for [quote] layout
|
||||||
$QuoteLayout = '<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
|
$QuoteLayout = '<blockquote>$1</blockquote>';
|
||||||
<tr>
|
|
||||||
<td class="quotecodeheader"> Quote:</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td class="quotebody">$1</td>
|
|
||||||
</tr>
|
|
||||||
</table>';
|
|
||||||
|
|
||||||
// Check for [quote] text
|
// Check for [quote] text
|
||||||
$Text = preg_replace("/\[quote\](.+?)\[\/quote\]/is","$QuoteLayout", $Text);
|
$Text = preg_replace("/\[quote\](.+?)\[\/quote\]/is","$QuoteLayout", $Text);
|
||||||
|
|
||||||
|
|
|
@ -8,10 +8,12 @@
|
||||||
* Contributing: http://tinymce.moxiecode.com/contributing
|
* Contributing: http://tinymce.moxiecode.com/contributing
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/* Macgirvin Aug-2010 changed from punbb to dfrn dialect */
|
||||||
|
|
||||||
(function() {
|
(function() {
|
||||||
tinymce.create('tinymce.plugins.BBCodePlugin', {
|
tinymce.create('tinymce.plugins.BBCodePlugin', {
|
||||||
init : function(ed, url) {
|
init : function(ed, url) {
|
||||||
var t = this, dialect = ed.getParam('bbcode_dialect', 'punbb').toLowerCase();
|
var t = this, dialect = ed.getParam('bbcode_dialect', 'dfrn').toLowerCase();
|
||||||
|
|
||||||
ed.onBeforeSetContent.add(function(ed, o) {
|
ed.onBeforeSetContent.add(function(ed, o) {
|
||||||
o.content = t['_' + dialect + '_bbcode2html'](o.content);
|
o.content = t['_' + dialect + '_bbcode2html'](o.content);
|
||||||
|
@ -38,8 +40,8 @@
|
||||||
|
|
||||||
// Private methods
|
// Private methods
|
||||||
|
|
||||||
// HTML -> BBCode in PunBB dialect
|
// HTML -> BBCode in DFRN dialect
|
||||||
_punbb_html2bbcode : function(s) {
|
_dfrn_html2bbcode : function(s) {
|
||||||
s = tinymce.trim(s);
|
s = tinymce.trim(s);
|
||||||
|
|
||||||
function rep(re, str) {
|
function rep(re, str) {
|
||||||
|
@ -48,23 +50,10 @@
|
||||||
|
|
||||||
// example: <strong> to [b]
|
// example: <strong> to [b]
|
||||||
rep(/<a.*?href=\"(.*?)\".*?>(.*?)<\/a>/gi,"[url=$1]$2[/url]");
|
rep(/<a.*?href=\"(.*?)\".*?>(.*?)<\/a>/gi,"[url=$1]$2[/url]");
|
||||||
rep(/<font.*?color=\"(.*?)\".*?class=\"codeStyle\".*?>(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]");
|
|
||||||
rep(/<font.*?color=\"(.*?)\".*?class=\"quoteStyle\".*?>(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]");
|
|
||||||
rep(/<font.*?class=\"codeStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[code][color=$1]$2[/color][/code]");
|
|
||||||
rep(/<font.*?class=\"quoteStyle\".*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[quote][color=$1]$2[/color][/quote]");
|
|
||||||
rep(/<span style=\"color: ?(.*?);\">(.*?)<\/span>/gi,"[color=$1]$2[/color]");
|
|
||||||
rep(/<font.*?color=\"(.*?)\".*?>(.*?)<\/font>/gi,"[color=$1]$2[/color]");
|
|
||||||
rep(/<span style=\"font-size:(.*?);\">(.*?)<\/span>/gi,"[size=$1]$2[/size]");
|
rep(/<span style=\"font-size:(.*?);\">(.*?)<\/span>/gi,"[size=$1]$2[/size]");
|
||||||
rep(/<font>(.*?)<\/font>/gi,"$1");
|
rep(/<font>(.*?)<\/font>/gi,"$1");
|
||||||
rep(/<img.*?src=\"(.*?)\".*?\/>/gi,"[img]$1[/img]");
|
rep(/<img.*?src=\"(.*?)\".*?\/>/gi,"[img]$1[/img]");
|
||||||
rep(/<span class=\"codeStyle\">(.*?)<\/span>/gi,"[code]$1[/code]");
|
rep(/<code>(.*?)<\/code>/gi,"[code]$1[/code]");
|
||||||
rep(/<span class=\"quoteStyle\">(.*?)<\/span>/gi,"[quote]$1[/quote]");
|
|
||||||
rep(/<strong class=\"codeStyle\">(.*?)<\/strong>/gi,"[code][b]$1[/b][/code]");
|
|
||||||
rep(/<strong class=\"quoteStyle\">(.*?)<\/strong>/gi,"[quote][b]$1[/b][/quote]");
|
|
||||||
rep(/<em class=\"codeStyle\">(.*?)<\/em>/gi,"[code][i]$1[/i][/code]");
|
|
||||||
rep(/<em class=\"quoteStyle\">(.*?)<\/em>/gi,"[quote][i]$1[/i][/quote]");
|
|
||||||
rep(/<u class=\"codeStyle\">(.*?)<\/u>/gi,"[code][u]$1[/u][/code]");
|
|
||||||
rep(/<u class=\"quoteStyle\">(.*?)<\/u>/gi,"[quote][u]$1[/u][/quote]");
|
|
||||||
rep(/<\/(strong|b)>/gi,"[/b]");
|
rep(/<\/(strong|b)>/gi,"[/b]");
|
||||||
rep(/<(strong|b)>/gi,"[b]");
|
rep(/<(strong|b)>/gi,"[b]");
|
||||||
rep(/<\/(em|i)>/gi,"[/i]");
|
rep(/<\/(em|i)>/gi,"[/i]");
|
||||||
|
@ -88,8 +77,8 @@
|
||||||
return s;
|
return s;
|
||||||
},
|
},
|
||||||
|
|
||||||
// BBCode -> HTML from PunBB dialect
|
// BBCode -> HTML from DFRN dialect
|
||||||
_punbb_bbcode2html : function(s) {
|
_dfrn_bbcode2html : function(s) {
|
||||||
s = tinymce.trim(s);
|
s = tinymce.trim(s);
|
||||||
|
|
||||||
function rep(re, str) {
|
function rep(re, str) {
|
||||||
|
@ -108,8 +97,8 @@
|
||||||
rep(/\[url\](.*?)\[\/url\]/gi,"<a href=\"$1\">$1</a>");
|
rep(/\[url\](.*?)\[\/url\]/gi,"<a href=\"$1\">$1</a>");
|
||||||
rep(/\[img\](.*?)\[\/img\]/gi,"<img src=\"$1\" />");
|
rep(/\[img\](.*?)\[\/img\]/gi,"<img src=\"$1\" />");
|
||||||
rep(/\[color=(.*?)\](.*?)\[\/color\]/gi,"<font color=\"$1\">$2</font>");
|
rep(/\[color=(.*?)\](.*?)\[\/color\]/gi,"<font color=\"$1\">$2</font>");
|
||||||
rep(/\[code\](.*?)\[\/code\]/gi,"<span class=\"codeStyle\">$1</span> ");
|
rep(/\[code\](.*?)\[\/code\]/gi,"<code>$1</code>");
|
||||||
rep(/\[quote.*?\](.*?)\[\/quote\]/gi,"<span class=\"quoteStyle\">$1</span> ");
|
rep(/\[quote.*?\](.*?)\[\/quote\]/gi,"<blockquote>$1</blockquote>");
|
||||||
|
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,13 +7,12 @@ tinyMCE.init({
|
||||||
mode : "specific_textareas",
|
mode : "specific_textareas",
|
||||||
editor_selector: /(profile-jot-text|prvmail-text)/,
|
editor_selector: /(profile-jot-text|prvmail-text)/,
|
||||||
plugins : "bbcode",
|
plugins : "bbcode",
|
||||||
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor",
|
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,link,unlink,image,forecolor,formatselect",
|
||||||
theme_advanced_buttons2 : "",
|
theme_advanced_buttons2 : "",
|
||||||
theme_advanced_buttons3 : "",
|
theme_advanced_buttons3 : "",
|
||||||
theme_advanced_toolbar_location : "top",
|
theme_advanced_toolbar_location : "top",
|
||||||
theme_advanced_toolbar_align : "center",
|
theme_advanced_toolbar_align : "center",
|
||||||
theme_advanced_styles : "Code=codeStyle;Quote=quoteStyle",
|
theme_advanced_blockformats : "blockquote,code",
|
||||||
content_css : "bbcode.css",
|
|
||||||
entity_encoding : "raw",
|
entity_encoding : "raw",
|
||||||
add_unload_trigger : false,
|
add_unload_trigger : false,
|
||||||
remove_linebreaks : false,
|
remove_linebreaks : false,
|
||||||
|
|
|
@ -16,6 +16,21 @@ img {
|
||||||
width: 600px;
|
width: 600px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
code {
|
||||||
|
font-family: monospace;
|
||||||
|
white-space: pre;
|
||||||
|
display: block;
|
||||||
|
overflow: auto;
|
||||||
|
border: 1;
|
||||||
|
background: #000000;
|
||||||
|
color: #44FF44;
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
blockquote:before {
|
||||||
|
content: '>> ';
|
||||||
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
background: #FEFEFE;
|
background: #FEFEFE;
|
||||||
color: #444444;
|
color: #444444;
|
||||||
|
|
Loading…
Reference in a new issue