[hns-dev:43] Re: one sectionへのアクセスのときに<TITLE>にNEWを表示する

Back to archive index

Kenji kenji****@club*****
2005年 4月 25日 (月) 22:56:56 JST


Kenji です。

On Mon, 25 Apr 2005 21:49:59 +0900
Masafumi Otsune <info****@otsun*****> wrote:

> otsuneです。
> 
> すいません。いくつかの不具合が判明しました。
> 
> 1.GRPを使用している日にTITLEがずれる

あ、ほんとですね。

> 2.セクションごとの表示でも「以上、1日分です」と表示される

これは、仕様っぽい感じはしますが、違和感ありますでしょうか?

 
> 1.は私はlib/HNS/Tools/HeadLine.pmを
> --- HeadLine.pm.bak     Mon Apr 25 21:47:22 2005
> +++ HeadLine.pm Mon Apr 25 21:47:22 2005
> @@ -143,7 +143,7 @@
>         }
>         $params->{para} = $para;
> 
> -       push(@title, $grp . $newHtml->AsHTML($templ, $params));
> +       push(@title, $grp . $newHtml->AsHTML($templ, $params)) if $grp
> eq '';
>      }
>      $self->title(\@title);
>  }
> としてGRP項目をヘッドラインに出力しないように殺してしまいました。
> これは正しい対処では無いと思いますので、何か良い方法があればいいのですが。

こんな感じだとどうでしょう?

===================================================================
RCS file: /cvsroot/h14m/hns-perl/public_html/diary/index.cgi.in,v
retrieving revision 1.40
diff -u -r1.40 index.cgi.in
--- index.cgi.in        25 Apr 2005 12:23:47 -0000      1.40
+++ index.cgi.in        25 Apr 2005 13:54:03 -0000
@@ -187,7 +187,12 @@
         $sectitle->getFileListByPattern($sectitle->diaryDir($y),"$y$m$d");
         $sectitle->readHnf("d$y$m$d.hnf", 'side');
         my @new = @{$sectitle->title};
-        my $stitle = @new[$s];
+        my $count = $s;
+        my $stitle = @new[$count];
+        while ($stitle =~ /<!-- GRP:.* -->/) {
+            $count++;
+            $stitle = @new[$count];
+        }
         $stitle =~ s/^.*>(.*)<\/a>$/$1/g;
         $HNS::System::Title .= ' ' . $stitle;
         $col->Read($y, $m, $d);


> 2.に関しては「?19990624S10 ; one section」のクエリーで表示した場合の見た
> 目の問題だけですので大した不具合ではないと思います。
> ただlib/HNS/Collection.pmの$HNS::Collection::FootMessagesをスイッチする
> タイミングをよく把握していないので、素直な対処方法が分かりません。


// Kenji



H14m-hns-dev メーリングリストの案内
Back to archive index