私自身は全く必要性を感じなかったんですがね。
一部の常連さんから、過去ログと現行ログの両方で、複数のツリーの記事をまとめて取得したい、という要望が出てきてしまいました。できれば、ログ内の全記事を一括で取得できればうれしい、とのこと。
仕様としては、そんなに難しいものではありません。
過去ログと現行ログの両方でログファイルの中身を全部なめるという意味では、既存の検索ルーチンとほとんど同じ。ただし、検索語を含む発言のみを表示するのではなく、全ての発言を表示してやる必要があります。ということは、条件判定文を削除するくらいで、残りのロジックはほとんどそのまま使えそう、ということです。
ところが、実際に検索ルーチンの中身を見てみたところ、現行ログか過去ログかというパラメータは検索ルーチンに入ってくる前に設定しているようなのですね。ということは、もし検索ルーチンを応用するのであれば、この辺に気をつける必要が出てきてしまうわけです。
ということで、さっくりと作ってみました。
まず、新しいモードを一つ、定義します。何でもいいのですが、とりあえずcollectという名称にします。
wforum.cgiの先頭に近い部分に、モードごとの分岐ルーチンがありますので、そこにこのモードでの条件判定を仕込みます。
|
こんな感じ。
次に、表示部本体。
|
まず、ヘッダ部分の出力を行います。
次に、上記のとおり、現行ログと過去ログで異なるパラメータの部分を、このルーチンの中で設定します。
最後に、ファイルを読み込んでループ。ここで、ログファイル内の全発言を走査するようにしています。
表示部については略していますが、基本的に、検索結果と同じルーチンになっています。
ここのところをいじってやれば、旧ニフティ形式で出力させることだって可能でしょう。