Geeklog実験室 Geeklogのテストや改良のためのサイトです    

2012-02-05 09:42
   

forumプラグインでツールチップ表示がおかしい問題

変更したところまとめ_重要【forumプラグイン】

geeklog/public_html/forum/index.php

41行に追加
require_once($_CONF['path'] . 'plugins/forum/functions.inc');

forum_mb_wordwrapを使えるようにするための措置

983行
        $topicinfo .= wordwrap(strip_tags(mb_substr($record['comment'],0,$CONF_FORUM['contentinfo_numchars'])),$CONF_FORUM['linkinfo_width'],"<br />n");
        $topicinfotmp = strip_tags(mb_substr($record['comment'],0,$CONF_FORUM['contentinfo_numchars']));
          if(strlen ($record['comment']) > $CONF_FORUM['contentinfo_numchars']){
            $topicinfotmp .= "...";
          }
        $topicinfo .= mb_ereg_replace("rn", "<br />", forum_mb_wordwrap($topicinfotmp, $CONF_FORUM['linkinfo_width'], "n"));


関連記事


【forumプラグイン】

geeklog/plugins/forum/functions.inc

523行
            $subject = wordwrap($A['subject'],40,"<br>");
            $subject = forum_mb_wordwrap($A['subject'],$CONF_FORUM['linkinfo_width'],"<br />");

1017行に追加
        $post_limit = $CONF_FORUM['sideblock_numposts'];

1279行あたり

                $lastpostinfo = wordwrap(strip_tags(substr($A['comment'],0,$CONF_FORUM['contentinfo_numchars'])),$CONF_FORUM['linkinfo_width'],"<br />n");
                $lastpostinfotmp = strip_tags(mb_substr($A['comment'],0,$CONF_FORUM['contentinfo_numchars']));
                if(strlen ($A['comment']) > $CONF_FORUM['contentinfo_numchars']){
                  $lastpostinfotmp .= "...";
                }
                $lastpostinfo = mb_ereg_replace("rn","<br />",forum_mb_wordwrap($lastpostinfotmp,$CONF_FORUM['linkinfo_width'],"n"));

1289行
                $lastpostinfo = wordwrap(strip_tags(substr($lastcomment,0,$CONF_FORUM['contentinfo_numchars'])),$CONF_FORUM['linkinfo_width'],"<br />n");
                $lastpostinfotmp = strip_tags(mb_substr($lastcomment,0,$CONF_FORUM['contentinfo_numchars']));
                if(strlen ($lastcomment) > $CONF_FORUM['contentinfo_numchars']){
                  $lastpostinfotmp .= "...";
                }
                $lastpostinfo = mb_ereg_replace("rn","<br />",forum_mb_wordwrap($lastpostinfotmp,$CONF_FORUM['linkinfo_width'],"n"));

1482行に追加(最後)
function forum_mb_wordwrap($string, $width, $break) {  $return = "";
  $list = preg_split("/n/", $string);#改行で分解

  $n = $width; # 改行させる文字数
  foreach($list as $line){ #foreachで一行ずつ処理させる
    $len = 0;#以下元の部分のまま
    for($i = 0; $i < mb_strlen($line); $i += $len){
      for($j = 1; $j<=$n; $j++){
        $wk = mb_substr($line, $i, $j);
        if(mb_strlen($wk) >= $n) break;
      }
      $len = mb_strlen($wk);
      $return .= $wk. "<br />";
    }
  }
  return $return;
}


関連記事