[トップ] [掲示板] [F.A.Q.] [コラム] [ひとりごと] [利用規約] [履歴] | |
行先表示板 |
今日の情報(状態とメモ)をweb上に掲示するCGI。「出欠表示板」の姉妹品にあたります、というかスケジュール部分をごっそり削って、ステータスをアイコン化しただけです。
まず、下のファイルをダウンロードして、解凍します。解凍すると、"officest.cgi"と"kabalib.pl"の2つのテキスト・ファイルとimgディレクトリの下に6つのGIFファイルができます。
※kabalib.plはVer.1.20以降を使ってください。
cgi-lib.plを入手します。
http://cgi-lib.berkeley.edu/
jcode.plを入手します。
ftp://ftp.iij.ad.jp/pub/IIJ/dist/utashiro/perl/
"officest.cgi"をテキスト・エディタで編集します。
※"officest.cgi"はEUCで書いてありますので、EUCが扱えるエディタでないと日本語部分が読めません。
最低限、次の個所を変更する必要があります。
ftpソフトなどでサーバーのCGI用ディレクトリにアップロードしましょう。仮にcgi-bin/にアップロードしたら、次のようにディレクトリとパーミッションを設定します。
※kabalib.plはofficest/の下でもOKです。
※jcode.plとcgi-lib.plはCGIスクリプトではしょっちゅう参照される定番なので、lib/ディレクトリとして独立させておくと使いまわせて便利です。
cgi-bin/ ├-- lib/ | ├-- jcode.pl | ├-- cgi-lib.pl | └-- kabalib.pl └-- officest (755)/ ├-- data (777)/ ├-- img (755)/ | └-- *.gif └-- officest.cgi (755)
設定が終わったら、ブラウザからCGIを設置したURLを開いてみましょう。上の例のようなディレクトリ構成なら、次のようなURLになります。
http://xxx.yyy.zzz/cgi-bin/officest/officest.cgi
「出欠表示板 初期登録」画面が表示されればOKです。
officest.cgiはデータ管理も全部ブラウザからできるようにしています。設置して最初に起動した時にデータを登録するようになっていますので、次のような手順で部署名・ファイル名・メンバー名などを設定してください。登録ミスがあっても、後で削除や訂正ができますから、大丈夫です。
officest.cgiを設置後、最初に起動した時(データファイルが1つもなく、クッキーも送信されてこない時)にだけ、「行先表示板 初期登録」画面が表示されます。
「初期登録」画面で、部署名(全角・半角可)と、ファイル名(半角英数字・"-"ハイフン・"_"アンダーバー)を登録します。メンテナンス・キーはここで登録するわけではなく、不正な登録を防ぐために照会するものです。メンテナンス・キーはアップロード前にスクリプトに書き込んでおきましょう。注意が必要なのはデータ登録用ディレクトリ($dataDirで指定したディレクトリ)のパーミッションが777になっていないと、登録できない事です。(UNIXに詳しい方はご存知でしょうが、httpサーバーとサイトのアカウントの関係によって775や757でもOKです)
「初期登録」で初期登録が完了すると、次に「行先表示板 メンテナンス・モード」が表示されます。
「メンテナンス・モード」で、メンバーの名前、チーム(係)を登録します。またメンテナンス・キーを入れるのがご面倒とは思うのですが、CGIは基本的に前の情報を保持しない一期一会の仕組みなので、「この人はさっきちゃんとメンテナンス・キーをいれてくれたんだよー」と覚えているのが大変なんです。(不可能ではない。)
メンバー登録が終わったら、右上の[行先表示板へ]で通常モードに入れます。
"officest.cgi"の「設定、適当に変更してください」〜「設定はここまで」の間を適当に変更すると、見た目をカスタマイズできます。
ページのタイトル、チーム表示の有無、メンテナンス・キーを指定できます。メンテナンス・キーは初期値は使わない方が無難です。
$Title = "行先表示板"; #ページのタイトル $remdays = 35 ; #過去何日分記録するか? $maxdays = 14 ; #今日から以後何日表示するか? $page = 8; #1ページに表示する日数。7〜8日位が適当。 $enTeam = 1 ; #チームを表示するときは1、いらないときは0 $mentKey = '0123'; #メンテナンス・キー、不要なら''にするかコメントアウト。
「今日の情報」の「状態(ステータス)」はセレクトメニューで選べるようになっています。そのメニューに表示する候補は変更できます。ただ、あまり多いとセレクトメニューに縦スクロールバーが出て使いにくくなりますので注意しましょう。縦スクロールバーがどうしても出てしまう(くらい候補を増やしたい)なら、せめて使用頻度が高い候補を前に書くと良いと思います。ステータスを変更したら、それに対応するアイコンも用意しましょう。
#ステータス設定 #上のリスト(ステータス)と下のリスト(アイコン)の順番は一緒にすること。 @statList = ( '出勤', '会議', '外出', '出張', '帰宅' ); @imgList = ( 'avale', 'meeting', 'visit', 'travel', 'home' );
officest.cgiで意識して指定している色は下のとおりです。各々の色は好きなように変更できます。基本的な事ですが、文字色とそれ以外の色はコントラストがハッキリするようにしましょう。下で指定していない、リンク文字色や、訪問済みリンク文字色はブラウザのデフォルト・カラーになり、大抵は濃いめの色になるはずです。ですから、文字色は濃い色、それ以外は淡い色にしておくのが無難です。
#色指定 $clrText = '#003399'; #文字色(群青) $clrBG = '#FFFFF0'; #背景(アイボリー) $clrFormBG = '#FFFFFF'; #フォーム部の背景色(白) $clrMsgBG = '#FFFF99'; #エラーメッセージの背景色(レモンイエロー) $clrLTitle = '#F0E68C'; #行タイトルの色(柿) $clrLine1 = '#F0FFF0'; #奇数行の背景(ハニーデュー) $clrLine0 = '#FFFFFF'; #偶数行の背景(白)
データ・ファイルを保存するディレクトリは、初期値では"data"になっていますが、このディレクトリはパーミッション777のセキュリティー的に弱い部分なので、他の人に推測されにくい名前にすることをお勧めします。何かとんでもない名前を考えて一人で楽しんではどうでしょうか?
データ・ファイル用ディレクトリ名を変更するには、"officest.cgi"の$dataDirの部分と、実際のディレクトリ名を変更してください。下は、"data"を"monooki"に変更した例です。
[officest.cgiファイル]
$dataDir = 'monooki'; #データ・ファイル用ディレクトリ名
[ディレクトリ構成]
cgi-bin/ ├-- lib/ | ├-- jcode.pl | ├-- cgi-lib.pl | └-- kabalib.pl └-- officeio (755)/ ├-- monooki (777)/ ├-- img (755)/ | └-- *.gif └-- officest.cgi (755)
アイコンや壁紙込みでCGIを配布するときは、画像を用意するのに苦労します。自分のサイトで使うだけなら、インプレスの素材集とか、WEB上にたくさんあるフリー素材から好きなものを探してくれば良いのですが、再配布となると無条件に許可している配布元はあまりありません。
そんな訳で、配布する場合には画像を自分で作るのですが、人様にお見せするほど絵のセンスがあるでなし、苦心して時間がかかるわりにお粗末なものになってしまいます。マウスで描いてるせいもあるとは思うけど。
2003/1/28 | Ver.1.10p | kabalib.plの重大なバグを修正。(Ver.1.20) |
2002/8/3 | Ver.1.10 | 「連絡先」の掲示を追加しました。 |
2002/7/21 | Ver.1.00 | つくりました。 |