一括表示

− 野ざらし言 −

[648] 過去ログのリンク

としき 2006/01/29(Sun) 21:52
http://www.hinocatv.ne.jp/~toshiki/
ここの過去ログなんですが。
トップページ上部の「過去ログ」をクリックすると、ツリー形式の一覧に飛び
ますよね。で、個別発言のリンクをクリックするのですが、どうも微妙にリン
クの飛び先が違っているようで、一括表示のトップに飛ばされてしまいます。
一括表示のツリー画面で個別発言のリンクをクリックするときちんとそれぞれ
の発言に飛ぶのですが、この点について改善する予定はありますでしょうか。
 

[649] Re: 過去ログのリンク

めざら 2006/01/29(Sun) 22:22
[648]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
 確かにそのような動きをしますね。1年前に CGI を弄った時は「過去ログ」
というものが存在しなかったので,そこについては特に何かしたつもりはなか
ったのですけどね。確かに変なので直したいとは思いつつも,なにしろ1年前
に集中的に弄って,あとは手を付けなかったので,どこをどう弄ったらよいも
のやら,サッパリ解らなくなってしまいました。

 としきさんのところはどういう動きかなと思ったら,過去ログが参照できな
いのでしょうか? ページ指定しても何も表示されませんが…。

[651] Re^2: 過去ログのリンク

としき 2006/01/30(Mon) 00:28
[649]へのコメント http://www.hinocatv.ne.jp/~toshiki/
> ったのですけどね。確かに変なので直したいとは思いつつも,なにしろ1年前
> に集中的に弄って,あとは手を付けなかったので,どこをどう弄ったらよいも
> のやら,サッパリ解らなくなってしまいました。

ブラウザのURL窓に表示されるのを見ると、きちんと表示される時とされ
ないときで、文書内をターゲットとしているアンカーが微妙に違いますね。
うまく表示される時は「#N201」というように、発言番号の頭に半角大文字の
「N」がついていますが、だめなときは「#201」って形になっています。
ソースを見てみると、<div id="N287" class="cntrb">という形になっていま
すから、過去ログ表示モードのトップのツリー画面でのアンカー表示のとこ
ろを直せば何とかなるでしょう。

チョイとスクリプトを追いかけてみたところ、過去ログ表示モードのトップ
のツリー表示って、現在ログのツリー表示のルーチンをそのまま使っている
みたいです。なので、

#--------------------#
#  リストツリー表示  #
#--------------------#
sub ListTreeOpen {
(中略)
		# 過去記事
		if ($mode eq "past") {

というところを修正してやればよろしいかと。


>  としきさんのところはどういう動きかなと思ったら,過去ログが参照できな
> いのでしょうか? ページ指定しても何も表示されませんが…。

まだ過去ログができていませんから。
私のところは、1000発言を越えたら過去ログが作られるように設定して
あります。だから、多分、発言#1もいまだに現在ログの方で読めるはずです。
読んで面白い内容ではないですけど。
なぜ1000かというと、きりがいいからというのと、あと、ニフティのフ
ォーラムの会議室のプッシュアウト設定が1000のところが多かったから、
というのが大きな理由ですが、その他に些細な理由として、それだけ大きく
しておけば、そう簡単には過去ログ送りにならずに済むだろう、というのが
あって。いえ、何となく過去ログって、メンテが面倒ってイメージがあった
もので。
 

[654] Re^3: 過去ログのリンク

めざら 2006/01/31(Tue) 21:31
[651]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
 なるほど,なんとなくですが状況は解りました。
 …が,どうも,現行ログにある一括表示▼が過去ログにないことが大きな問
題であるような気がしてきました。ちょっと時間がかかるかもしれませんが,
根本的に見直そうと思います。

> 私のところは、1000発言を越えたら過去ログが作られるように設定して
> あります。だから、多分、発言#1もいまだに現在ログの方で読めるはずです。

 うは,そうなんですか。わたしは初期設定のままで導入しちゃいましたから
ねぇ。ところで1000を越えたらいきなり1000が過去ログになるのでし
ょうか。

 わたしの場合,比較的短いスパンでアーカイブにした方が管理の面倒がない
かなと思ってます。過去ログ機能はあまりあてにしてなかった。(^^;

[655] Re^4: 過去ログのリンク

としき@宿直 2006/01/31(Tue) 23:58
[654]へのコメント http://www.hinocatv.ne.jp/~toshiki/
>  …が,どうも,現行ログにある一括表示▼が過去ログにないことが大きな問
> 題であるような気がしてきました。ちょっと時間がかかるかもしれませんが,
> 根本的に見直そうと思います。

っていうか、デフォルトというか、個別発言を指定しても一括表示になってしまう
わけですから、特に不要なような気もします。ま、体裁をあわせるということで、
▼を表示だけするようにしてもいいとは思いますけど。

>  うは,そうなんですか。わたしは初期設定のままで導入しちゃいましたから
> ねぇ。ところで1000を越えたらいきなり1000が過去ログになるのでし
> ょうか。

私の理解だと、1000を超えると、一番最後のツリーがまとめて過去ログ送り
になると思っております。なので、現在の最新のツリーが1000発言以上ある
ような場合、現在のログには1つしかツリーがなくて残りは全て過去ログ送りと
いう状況になるし、そこからさらに誰かが新規発言で新しいツリーを起こすと、
その段階でその巨大ツリーがまとめて過去ログに移動してしまい、現在ログには
1発言しかないという、かなりシュールな状況になると思っております。

ところで、かつてのDCあるいはPKで、最大だったツリーって全部で何発言ぐ
らいだったのでしょうかね。どなたかご存知ではありませんか。あるいは、そう
いうのを簡単に調べるマクロってできませんかね。
 

[657] Re^5: 過去ログのリンク

めざら 2006/02/02(Thu) 21:42
[655]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
> っていうか、デフォルトというか、個別発言を指定しても一括表示になってしまう
> わけですから、特に不要なような気もします。ま、体裁をあわせるということで、
> ▼を表示だけするようにしてもいいとは思いますけど。

 そそ,体裁が変なんですね,今は。特定の発言に飛ばないケースがあるとい
う点も変なのですが,スレッド一覧の体裁と異なることで無用に利用者を混乱
をもたらすということもかなり気に掛かります。でも,今年度中は手が付けら
れないかもしれません。出向先から戻されるはずなので,後始末をきちんとし
ておかないと引継に問題が出てしまいますから。


 1000発言越えの過去ログ送りでシュールな状況が発生するのを待つとし
ても,まだちょっと先ですね。頑張ってトラックバックならぬコメントを付け
まくりましょうか。(^^;

> ところで、かつてのDCあるいはPKで、最大だったツリーって全部で何発言ぐ
> らいだったのでしょうかね。どなたかご存知ではありませんか。あるいは、そう
> いうのを簡単に調べるマクロってできませんかね。

 超巨大なログが必要ですね。ばらばらのログでも,やって出来ないことはな
いのでしょうけど,ひとつひとつの新規発言を親としてすべて検索するのは大
変だから,木構造を作るアルゴリズムみたいなものを使ってデータベースその
ものを作るような方向にいくのでしょうか。簡単に調べるというわけにはいか
ないのではないかなぁ。

[663] Re^6: 過去ログのリンク

konno 2006/02/04(Sat) 01:06
[657]へのコメント http://homepage3.nifty.com/tamaneko/
横から失礼します。

> > ▼を表示だけするようにしてもいいとは思いますけど。

これは私も気になってました。どうやら標準のままでは表示しないようです。
うちではツリー表示ルーチンの中の親記事の前に過去ログの親記事ルーチンを
追加しました。

# 親記事
} else {
  if ($mode eq "past") {
print "
<a href=\"$script?gno=$no&reno=$reno&mode=allread&pastlog=$in{'pastlog'}&no=$oya&fsize=$fsize&page=$page
&act=past\#$no\">$treehead2 <font color=\"$no_color\">No\.$no</font> - $sub</a> - <b>$name</b> $dat
\n";
  } else {
print "
\n<a href=\"$script?gno=$no&reno=$reno&mode=allread
&no=$no&fsize=$fsize&page=$page\">$treehead";
print "_$oya</a>.<b><a href=\"$script?no=$no&reno=$reno&oya=$oya&mode=msgview
&fsize=$fsize&page=$page\"> $sub </a></b>- <b>$name</b> - $dat $newsign
\n";

こんな感じです。途中に改行をいれてます。

>  そそ,体裁が変なんですね,今は。特定の発言に飛ばないケースがあるとい
> う点も変なのですが,スレッド一覧の体裁と異なることで無用に利用者を混乱
> をもたらすということもかなり気に掛かります。でも,今年度中は手が付けら
> れないかもしれません。出向先から戻されるはずなので,後始末をきちんとし
> ておかないと引継に問題が出てしまいますから。

せめて▼の表示だけでもしてもらえるとありがたいですが、時間の無い時に
下手に弄るとドツボにはまるというマーフィーさんの法則。(^^;

[665] Re^7: 過去ログのリンク

めざら 2006/02/06(Mon) 17:31
[663]へのコメント <mezala@nifty.com> http://homepage3.nifty.com/mezala/
 横からでも縦からでも,どうぞどうぞ。(^^)

> これは私も気になってました。どうやら標準のままでは表示しないようです。

 あれ,やっぱりそうですか。弄った記憶がないので,どうして過去ログのツ
リーにはないのかなって思っていました。

 青空文庫関係の掲示板「こもれび」さんでは,過去ログにも▼が出ています。
 → http://hpcgi1.nifty.com/hongming/komorebi/wforum.cgi

 ここの掲示板は色々と改造(迷惑投稿対策や INCM 対応, Exif 情報対応,
文字色選択など)が加えられているようですね。

> せめて▼の表示だけでもしてもらえるとありがたいですが、時間の無い時に
> 下手に弄るとドツボにはまるというマーフィーさんの法則。(^^;

 サンプルの提示をありがとうございました。このあたりはわたしも相当弄っ
ているところだと思うので,時間ができたら wforum のバージョンアップに加
えて現在・過去で表示を統一できるように検討してみたいと思います。

[669] Re^7: 過去ログのリンク

としき 2006/02/08(Wed) 19:33
[663]へのコメント http://www.hinocatv.ne.jp/~toshiki/
えと、よくわからないのですが。
私の手元では、以下のような制御構造となっています。

# 過去記事
if ($mode eq "past") {

# 削除記事
} elsif ($pw eq 'DEL') {

# レス記事
} elsif ($lx != 0) {

# 親記事
} else {

}

なので、mode=pastがついていると全て過去記事のところに落ちてしまって、
親記事のところに行ってくれませんでした。仕方ないので、過去記事の部分
に親記事か否かを判別するルーチンをつけるような形にしました。

konnoさんのところでは、どのような制御構造になっているのか教えていただ
けますでしょうか。
 

[671] Re^8: 過去ログのリンク

konno 2006/02/10(Fri) 01:42
[669]へのコメント http://homepage3.nifty.com/tamaneko/
としきさん
 
> なので、mode=pastがついていると全て過去記事のところに落ちてしまって、
> 親記事のところに行ってくれませんでした。仕方ないので、過去記事の部分
> に親記事か否かを判別するルーチンをつけるような形にしました。

あ、そうでしたね、私はうそを書いてしまいました。

> konnoさんのところでは、どのような制御構造になっているのか教えていただ
> けますでしょうか。

私は元の過去記事ルーチンをコメントにして、レス記事と親記事それぞれに
過去記事への条件分枝を書いたのでした。ツリー表示だけなら過去記事部分
をコメントにするだけで出来そうですが、記事へジャンプできない。(^^;

過去ログへのリンクは良さそうですね。参考にさせてもらいます。(丸写し
ともいう)

↑ このページの先頭