#nopagecomment #noattach #navi #contents * MyTextSanitizer (まい・てきすと・さにたいざぁ) [#wd32ad0f] XOOPS, XOOPS Cube Legacy において、登録されたテキストを整形し表示するクラス。 このクラスに変更を加えることで、その XOOPS 全体に渡り、テキスト整形のルールを変更することができる。 ここ XOOPSマニア のサイトでは、xpWiki のWikiレンダリング機能を使って、テキスト整形するように変更が加えられています。 ** XOOPS Cube Legacy 2.1.x 〜 2.2.x 用 [#w210a13d] XOOPS Cube Legacy 用には、本来ならプリロードだけで完結するようにすべきだとは思いますが、X2用モジュールとの互換性を保つために、module.textsanitizer.php を書き換える方法にしました。 XOOPS_ROOT_PATH/class/module.textsanitizer.php を置き換え、XOOPS_ROOT_PATH/preload/SetupHyp_TextFilter.class.php を配置してください。 Cube に対応させるために、[[XUGJ にて Marijuana さんにいろいろ教えていただきました。:http://www.xugj.org/modules/d3forum/index.php?topic_id=413]] :ok: - &ref(module.textsanitizer_0.php){XOOPS_ROOT_PATH/class/module.textsanitizer.php}; (2.1.x 用) - &ref(module.textsanitizer_1.php){XOOPS_ROOT_PATH/class/module.textsanitizer.php}; (2.2.x 用) -- 変更箇所のみ #code(php){{ /** * Filters textarea form data in DB for display * * @param string $text * @param bool $html allow html? * @param bool $smiley allow smileys? * @param bool $xcode allow xoopscode? * @param bool $image allow inline images? * @param bool $br convert linebreaks? * @return string **/ function &displayTarea($text, $html = 0, $smiley = 1, $xcode = 1, $image = 1, $br = 1) { //$text = $this->_ToShowTarea($text, $html, $smiley, $xcode, $image, $br); $text = $this->mTextFilter->ToShowTarea($text, $html, $smiley, $xcode, $image, $br, true, 1); return $text; } /** * Filters textarea form data submitted for preview * * @param string $text * @param bool $html allow html? * @param bool $smiley allow smileys? * @param bool $xcode allow xoopscode? * @param bool $image allow inline images? * @param bool $br convert linebreaks? * @return string **/ function &previewTarea($text, $html = 0, $smiley = 1, $xcode = 1, $image = 1, $br = 1) { $text =& $this->stripSlashesGPC($text); //$text = $this->_ToShowTarea($text, $html, $smiley, $xcode, $image, $br); $text = $this->mTextFilter->ToShowTarea($text, $html, $smiley, $xcode, $image, $br, true, 0); return $text; } }} - &ref(SetupHyp_TextFilter.class.php){XOOPS_ROOT_PATH/preload/SetupHyp_TextFilter.class.php}; -- 2008/1/26 に修正しました。(BBコードの[siteurl]に対応。要 xpWiki 3.59 以上) -- 2008/4/30 と 5/3 に修正しました。(BBコードの[img]が正常に変換できないことがある問題を修正) -- 2008/5/30 に修正しました。(BBコードの siteimage, fig が正常に動作するようにした) -- 2008/5/31 に typo 修正しました。[[参考スレッド:http://xoops.hypweb.net/modules/forum/index.php?topic_id=2362]] -- 2008/10/9 xpWiki のディレクトリ名指定を定数 XPWIKI_RENDERER_DIR を使う方式としました。 --- xpWiki Ver 3.71.83 で搭載された画面変遷のないファイル添付とファイル名挿入に対応した。 -- 2008/10/11 10/9 の修正でCSSが効かなくなっていたのを修正しました。 -- 2008/12/22 PHP 4 環境で Warning エラーが出ていたのを修正しました。 (thx nonn50) -- 2009/5/3 [quote]を使用した場合に、HTML構造が不正になることがある問題を修正しました。 -- 2009/5/12 5/3 の修正が原因で、レンダリング内容によっては、PHPがエラーで止まってしまうことがある問題を修正しました。(thx azumi) #code(SetupHyp_TextFilter.class.php) -- &font(b,Red){※}; xpWiki を xpwiki という名前以外でインストールしている場合は、6行目の 'xpwiki' を適宜変更してください。 #code(php,5-){{ // xpWiki wikirenderer dirctory name define('XPWIKI_RENDERER_DIR', 'xpwiki'); }} ** XOOPS 2.0.16a JP 用 [#e3d11b6d] - &ref(module.textsanitizer.php){XOOPS_ROOT_PATH/class/module.textsanitizer.php}; -- 2008/1/26 に修正しました。(BBコードの[siteurl]に対応。要 xpWiki 3.59 以上) -- 2008/4/30 と 5/3 に修正しました。(BBコードの[img]が正常に変換できないことがある問題を修正) -- 2008/5/30 に修正しました。(BBコードの siteimage, fig が正常に動作するようにした) -- 2008/5/31 に typo 修正しました。[[参考スレッド:http://xoops.hypweb.net/modules/forum/index.php?topic_id=2362]] -- 2008/10/9 xpWiki のディレクトリ名指定を定数 XPWIKI_RENDERER_DIR を使う方式としました。 --- xpWiki Ver 3.71.83 で搭載された画面変遷のないファイル添付とファイル名挿入に対応した。 -- 2008/10/11 10/9 の修正でCSSが効かなくなっていたのを修正しました。 -- 2008/12/22 PHP 4 環境で Warning エラーが出ていたのを修正しました。 (thx nonn50) -- 2009/5/3 [quote]を使用した場合に、HTML構造が不正になることがある問題を修正しました。 -- 2009/5/12 5/3 の修正が原因で、レンダリング内容によっては、PHPがエラーで止まってしまうことがある問題を修正しました。(thx azumi) #code(module.textsanitizer.php) -- &font(b,Red){※}; xpWiki を xpwiki という名前以外でインストールしている場合は、36行目の 'xpwiki' を適宜変更してください。 #code(php,35-){{ // xpWiki wikirenderer dirctory name define('XPWIKI_RENDERER_DIR', 'xpwiki'); }} * Wikiヘルパーをテキストエリアに表示する方法 [#t9eb084b] JavaScriptによる「Wikiヘルパー」(IE と FireFox に対応)をテキストエリアに適用させたい場合は、次の方法があります。どちらの方法でも構いません。 ** まずはじめに [#o58cfbb2] + html側xpWikiモジュールディレクトリ/private/ini/pukiwiki.ini.php に以下の内容を記述する。~ #code(php,nonumbar){{ // Show the Wiki Helper on the site wide. $root->render_UseWikihelperAtAll = 1; }} *** 選択その1 (ブロックの配置)[#n07203a4] + "''xpWikiのページ表示ブロック''" 又は "''XOOPSのカスタムブロックの自動フォーマットタイプ''" をすべてのページに配置する。ブロックに表示するページや内容は、どのような内容でも構いません。&br;このサイトでは、左ブロックの「サイト内 Wiki」がそれにあたります。 *** 選択その2 [#ea86b92d] + XOOPS テーマの theme.html の <head> 内 <{$xoops_module_header}> の下にJavaScriptを挿入して以下のようにする。 #code(html,nonumber){{ <{$xoops_module_header}> <script type="text/javascript" src="<{$xoops_url}>/modules/xpwiki/skin/loader.php?src=wikihelper_loader.js"></script> }} -- パス中の xpwiki はxpWikiをインストールしたディレクトリ名に合わせてください。 #navi
(This host) = https://xoops.hypweb.net