2007年01月17日

xoopsBBSの全件表示

xoopsのBBSモジュールでは デフォルトの記事表示は過去100日分になっています。
グループウェア的に使ってると、過去のやり取りが参考になったり 後日に話題のタネにんったりする場合もそれなりにあるのですが、メンバーの中には[消えてますよ]という反応をするバラつきな人は当然でてくるわけで:
[表示期間のココをclickして全件表示にしてね]なんて業連だしたりでフォローはしてきてますが それまたなんとも^^#な 気はしていました。
管理menu等でコレを変更できる項目がないのでしょうがなくそのままにしてきていたのですが:

先日やっとこさ関連な記事をググれました。-.-v
http://xoopscube.jp/modules/xhnewbb/viewtopic.php?topic_id=2743&forum=5

なるほど と着手だったのですが、
記事の中での 結論的な部分:viewforum.php の下のほうにある部分

$startdate = $sortsince == 1000 ? 0 : time() - (86400* $sortsince);
のところを

$startdate = time() - (86400* $sortsince);
に書き換える方法ではうまくいきませんでした。中間話題の

$startdate = 0;
にすればそれは全件にはなるのですが.ユーザ側から表示期間変更を全くできなくなるので.

そこで viewforum.php の中を眺めていると もう少し上のほうに

$sortsince = !empty($HTTP_GET_VARS['sortsince']) ? intval($HTTP_GET_VARS['sortsince']) : 100;
という部分があります。
なんとなく ならべかえの値がカラの場合には100にする ?のような感じに読めないこともない...
っということは、BBS開いた直後で表示期間をいじってない場面で100日分になるのはココか?
(先の 下のほうの部分は 何日分か取得できてからの 表示するための部分だから そこをいじってしまうと 表示期間選択の値が無視されるということか?)と思い:

$sortsince = !empty($HTTP_GET_VARS['sortsince']) ? intval($HTTP_GET_VARS['sortsince']) : 36500+25;
のように弄ってみると: ぉー:うまくいきました。^^#

100日分ではなく 36500+25 というのはおよそ100年分の日数 にしようとした.というコトです(やっつけだ#.
過去100年分なら まぁ全員が滅ぶまで 全件表示できることだろうと.(爆
posted by yst at 18:15| Comment(0) | TrackBack(0) | xoopsでgroupware?
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス: [必須入力]

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/3123189

この記事へのトラックバック