ログイン名 パスワード   
パスワード紛失  新規登録      
   ホーム | 新着情報 | フォーラム | ブログ | ウィキ | マイアルバム | カレンダー | リンク | 教えて! | サイトマップ | サイト内検索 |  

[xoops] FCKeditorとwikiレンダラーの選択環境

投稿ツリー

  • 通常 [xoops] FCKeditorとwikiレンダラーの選択環境 (なーお, 2008-5-31 11:28) «

このトピックの投稿一覧へ

通常 [xoops] FCKeditorとwikiレンダラーの選択環境

msg# 1
depth:
0
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2008-5-31 11:28 | 最終変更
なーお  一人前   投稿数: 114

XCL2.1でメインで運用しているサイト群に、FCKeditor(wysiwygエディタ)を導入。 ログインユーザーはHTML許可とし、d3forumとd3blogで使用可能としました。

この際、xpWikiレンダリング処理との選択が行えるようにするため、テンプレートに手を入れています。

d3forumの場合

d3forum_main_post_form.html
1
2
3
4
5
6
7
<{if $body_wysiwyg}>
	<{$body_wysiwyg}>
<{else}>
	<input type="checkbox" id="message_bbcode_onoff" onclick="if(this.checked){xoopsGetElementById('message_bbcode_buttons_pre').style.display='block';xoopsGetElementById('message_bbcode_buttons_post').style.display='block'}else{xoopsGetElementById('message_bbcode_buttons_pre').style.display='none';xoopsGetElementById('message_bbcode_buttons_post').style.display='none'};" /><label for="message_bbcode_onoff"><{$smarty.const._MD_D3FORUM_LABEL_INPUTHELPER}></label>
 	<br />
 	<{xoopsdhtmltarea name="message" cols="60" rows="15" value=$message pre_style="display:none;" post_style="display:none;"}>
	<{/if}>

 これを、 ↓ のように変更

1
2
3
4
5
6
<{if $body_wysiwyg && $xoops_isuser}>
	<input type="button" class="formButton" value="FCKeditor" name="contentman_preview"  onclick='fckeditor_exec("100%", "350", "<{$xoops_url}>");' />
<{/if}>
	<input type="checkbox" id="message_bbcode_onoff" onclick="if(this.checked){xoopsGetElementById('message_bbcode_buttons_pre').style.display='block';xoopsGetElementById('message_bbcode_buttons_post').style.display='block'}else{xoopsGetElementById('message_bbcode_buttons_pre').style.display='none';xoopsGetElementById('message_bbcode_buttons_post').style.display='none'};" /><label for="message_bbcode_onoff"><{$smarty.const._MD_D3FORUM_LABEL_INPUTHELPER}></label>
	<br />
	<{xoopsdhtmltarea name="message" cols="60" rows="15" value=$message pre_style="display:none;" post_style="display:none;"}>

 これで、

    1. d3forumの管理者設定で「HTMLを有効」にして、「common/FCKeditor」を選択すると、ログインユーザーのみに「FCKeditor」というボタンが現れ、これを押すとテキストエリアにエディタがロードされて使用可能になります。
    2. また、「HTMLを許可」にするとHTML使用可、不許可でwikiレンダリングが有効になります。

また、ゲストに強制的にHTML無効にするには、

1
2
3
4
5
<!-- html -->
<{if $allow_html}>
	<input type="checkbox" name="html" id="html" value="1" <{$html_checked}> /><label for="html"><{$smarty.const._MD_D3FORUM_ENABLEHTML}></label>
<br />
<{/if}>

の部分も 下記のように変更します。

1
2
3
4
5
<!-- html -->
<{if $allow_html && $xoops_isuser}>
	<input type="checkbox" name="html" id="html" value="1" <{$html_checked}> /><label for="html"><{$smarty.const._MD_D3FORUM_ENABLEHTML}></label>
<br />
<{/if}>

d3blog

dblog1_main_submit.html
1
2
3
4
5
6
7
<{if $moduleConfig.wysiwyg_editor && $currentUser.user_perm.allow_html}>
	<textarea id="contents" name="contents"><{$entry.contents4edit}></textarea><script>fckeditor_exec("100%", "350", "<{$xoops_url}>");</script><br />
<{else}>
 <div><input type="checkbox" id="switch_bbcode" onclick="if(this.checked){document.getElementById('contents_bbcode_buttons_pre').style.display='block';document.getElementById('contents_bbcode_buttons_post').style.display='block'}else{document.getElementById('contents_bbcode_buttons_pre').style.display='none';document.getElementById('contents_bbcode_buttons_post').style.display='none'};" />
<label for="switch_bbcode"><{$smarty.const._MD_D3BLOG_LANG_DISPLAY_XCODE_PALLET}></label></div>
 <{xoopsdhtmltarea name=contents cols=65 rows=10 value=$entry.contents4edit pre_style="display:none;" post_style="display:none;"}>
<{/if}>

 これを、 ↓ のように変更

1
2
3
4
5
6
<{if $moduleConfig.wysiwyg_editor && $currentUser.user_perm.allow_html}>
	<input type="button" class="formButton" value="FCKeditor" name="contentman_preview"  onclick='fckeditor_exec("100%", "350", "<{$xoops_url}>");' />
<{/if}>
<div><input type="checkbox" id="switch_bbcode" onclick="if(this.checked){document.getElementById('contents_bbcode_buttons_pre').style.display='block';document.getElementById('contents_bbcode_buttons_post').style.display='block'}else{document.getElementById('contents_bbcode_buttons_pre').style.display='none';document.getElementById('contents_bbcode_buttons_post').style.display='none'};" />
<label for="switch_bbcode"><{$smarty.const._MD_D3BLOG_LANG_DISPLAY_XCODE_PALLET}></label></div>
<{xoopsdhtmltarea name=contents cols=65 rows=10 value=$entry.contents4edit pre_style="display:none;" post_style="display:none;"}>

に変更します。

投票数:19 平均点:7.37
返信する

この投稿に返信する

題名
ゲスト名
投稿本文

  条件検索へ


TRACK BACK ANYWHERE
_MB_TBANY_LANG_TRACKBACK_URL
http://www.mc8.jp/X/modules/tbAny/tb.php/
教えて!フォーラム・ブログ