diff --git a/include/bbcode.php b/include/bbcode.php index 75e8a0f52..21bc6de77 100644 --- a/include/bbcode.php +++ b/include/bbcode.php @@ -403,6 +403,15 @@ function bb_definitionList_unescapeBraces($match) { return '
' . str_replace('\]', ']', $match[1]) . '
'; } + +function bb_checklist($match) { + $str = $match[1]; + $str = str_replace("[]", "
  • ", $str); + $str = str_replace("[x]", "
  • ", $str); + return ''; +} + + /** * @brief Sanitize style properties from BBCode to HTML. * @@ -787,14 +796,11 @@ function bbcode($Text, $preserve_nl = false, $tryoembed = true, $cache = false) $Text = preg_replace("/
    \[\*\]/ism",'[*]',$Text); $Text = str_replace("[*]", "
  • ", $Text); - $Text = str_replace("[]", "
  • ", $Text); - $Text = str_replace("[x]", "
  • ", $Text); // handle nested lists $endlessloop = 0; while ((((strpos($Text, "[/list]") !== false) && (strpos($Text, "[list") !== false)) || - ((strpos($Text, "[/checklist]") !== false) && (strpos($Text, "[checklist]") !== false)) || ((strpos($Text, "[/ol]") !== false) && (strpos($Text, "[ol]") !== false)) || ((strpos($Text, "[/ul]") !== false) && (strpos($Text, "[ul]") !== false)) || ((strpos($Text, "[/dl]") !== false) && (strpos($Text, "[dl") !== false)) || @@ -806,7 +812,6 @@ function bbcode($Text, $preserve_nl = false, $tryoembed = true, $cache = false) $Text = preg_replace("/\[list=((?-i)I)\](.*?)\[\/list\]/ism", '', $Text); $Text = preg_replace("/\[list=((?-i)a)\](.*?)\[\/list\]/ism", '', $Text); $Text = preg_replace("/\[list=((?-i)A)\](.*?)\[\/list\]/ism", '', $Text); - $Text = preg_replace("/\[checklist\](.*?)\[\/checklist\]/ism", '', $Text); $Text = preg_replace("/\[ul\](.*?)\[\/ul\]/ism", '', $Text); $Text = preg_replace("/\[ol\](.*?)\[\/ol\]/ism", '', $Text); $Text = preg_replace("/\[\/li\]
    \[li\]/ism",'[/li][li]',$Text); @@ -818,7 +823,13 @@ function bbcode($Text, $preserve_nl = false, $tryoembed = true, $cache = false) // "[dl" "]" "[/dl]" // where optional-termStyles are: "terms=" $Text = preg_replace_callback('/\[dl[[:space:]]*(?:terms=(?:"|")?([a-zA-Z]+)(?:"|")?)?\](.*?)\[\/dl\]/ism', 'bb_definitionList', $Text); + } + + if (strpos($Text,'[checklist]') !== false) { + $Text = preg_replace_callback("/\[checklist\](.*?)\[\/checklist\]/ism", 'bb_checklist', $Text); + } + if (strpos($Text,'[th]') !== false) { $Text = preg_replace("/\[th\](.*?)\[\/th\]/sm", '$1', $Text); } diff --git a/view/tpl/wiki.tpl b/view/tpl/wiki.tpl index 26a0a72e8..54d501396 100644 --- a/view/tpl/wiki.tpl +++ b/view/tpl/wiki.tpl @@ -37,10 +37,8 @@ {{/if}} - - + +

    {{$wikiheaderName}}: {{$wikiheaderPage}}

    @@ -221,6 +219,8 @@ var editor = ace.edit("ace-editor"); editor.setTheme("ace/theme/github"); + editor.setShowPrintMargin(false); + editor.getSession().setUseWrapMode('free'); editor.getSession().setMode("ace/mode/markdown"); editor.getSession().setValue(window.wiki_page_content); window.editor = editor; // Store the editor in the window object so the anonymous function can use it. @@ -405,10 +405,11 @@ resource_id: window.wiki_resource_id }, function (data) { + console.log(data); if (data.success) { var modalBody = $('#generic-modal-body-{{$wikiModalID}}'); modalBody.html('
    '+data.diff+'
    '); - $('.modal-dialog').width('80%'); + $('.modal-dialog').addClass('modal-lg'); $("#generic-modal-ok-{{$wikiModalID}}").off('click'); $("#generic-modal-ok-{{$wikiModalID}}").click(function () { wiki_revert_page(compareCommit); @@ -545,4 +546,4 @@ $('#new-wiki-button').hide(); {{/if}} }); - \ No newline at end of file + diff --git a/view/tpl/wiki_page_history.tpl b/view/tpl/wiki_page_history.tpl index fef5d93a5..9a313f767 100644 --- a/view/tpl/wiki_page_history.tpl +++ b/view/tpl/wiki_page_history.tpl @@ -1,4 +1,8 @@