課題モジュールのbugとその解決

課題モジュールのbugとその解決

- Paul Shew の投稿
返信数: 3
提出されたオンライン課題の表示には問題があります。

担当教師からこのように指摘されました。
学生からのレポートを出してもらいました。ところが500字くらいの文章が、ながながと2行くらいで表示されてしまい、カーソルで画面をどんどん右にずらしていかなければ読めません。とても読みにくいし、コメントも書きにくいので困っています。

この問題を起こしているのは、lib/moodlelib.phpのshorten_text functionです。西洋言語のための方法だし、ユニコードを対応していません。この問題と私の臨時的な解決をBug Tracker に載せました。
function shorten_text fails in languages without latin spaces or periods


Paul Shew への返信

Re: 課題モジュールのbugとその解決

- Haruhiko Okumura の投稿
Somehow I've been unable to post this message in Japanese....

I couldn't reproduce the bug so I'm not sure if this helps; my idea is to change

if ($char == '.' or $char == ' ')

to

if ($char == '.' or $char == ' ' or $char >= 0x80)

and

substr($text, 0, $truncate)

to

mb_strcut($text, 0, $truncate, get_string("thischarset"))
Haruhiko Okumura への返信

Re: 課題モジュールのbugとその解決

- Paul Shew の投稿
より良いコードをありがとうございます。

解決の提案として、BugTrackerにのせておきました。