COMCHAT

皆さんご存知であろう、KENT-WEBのKENTさんのCOMCHATの改造方法です。
 このテキストに対応してるバージョンはCOMCHAT 4.4です。

以下はCOMCHAT v4.4の改造方法です。一部COMCHATのスクリプトから引用しています。
COMCHATの著作権はKENTさんにあります。  KENT WEB フリーソフト利用規定
んでもって、この改造部分の著作権は紅堂幹人にある事を忘れないでください。
 既に改造済みのCOMCHAT v4.4を『ElDorado Chat』として再配布しています。無改造の方は是非。

CGI改造に成功しましたら、著作権・フッター部分ででもリンクしてくれると嬉しいです。
  改造協力:<a href="http://eldorado1st.cool.ne.jp/GalleBasra/">紅堂幹人</a>
……という感じでしょうか。リンクしなくてもいいから、改造協力:紅堂幹人は必ず。

ここではコピーがしやすいようにと『<textarea>~</textarea>』で表示しています。
 スクリプトにそのまま貼り付ける時にインデント(字下げ)が崩れないようにという配慮でもあります。
 ……そのせいでここで見辛いのはご愛嬌、ね?(汗)。

時間表記変更+α Ref.2005/02/05 追加

寂れたチャットで年や曜日が無ければいつのログかわからなくなります(まぁ、寂れさせなければいいわけですが)。
そこで、『2/5-17:39:55』を『05/02/05-17:39:55』にする方法です。

改造する場所は、『sub decode(デコード処理)』の部分です。
($sec,$min,$hour,$mday,$mon) = localtime($times);
$date = sprintf("%s/%s-%02d:%02d:%02d",$mon+1,$mday,$hour,$min,$sec);
となっている場所を
とするだけです。05を2005と西暦表示にしたい場合は、-100の部分を+1900にするだけでできます。

通常、下フレーム(ログ表示部分)には『参加者(*)~』という表記しかありません。
『[15:31:22] 参加者(*)~』という風に時間が表示されていれば良い、とは思いませんか?
そういう場合は、上記の『sub decode(デコード処理)』の最後の方にある$date指定の次の行に以下を追加します。


そして、『sub log_view(記事表示)』の『 ## 参加者表示』と書いてある所……
print "<table width='100%'><tr><td>参加者($num):$member</td>\n";
という箇所を
とするだけです。
後、時間表記の部分を押したらリロードできるようにするには、
とすればいいのです。これはステータス機能を付けた場合の例ですので、ステータス機能をつけない場合は『 local($estatus) = &url_enc($in{'status'});』と『$estatus』は不要です。