############################################################ # # 日記帳。もちろん更新にも使えますけど。 # # ver 6.63 : 2012/08/15 # 製作者 : moon # ホームページ : http://mwq.jp/web/ # メールアドレス : moon@mwq.jp # ############################################################ 使い方は常識的範囲内で。 たまに常識がわからない人がいるので、 そういう人がいたらどんどん規約を追加しますけど。 普通に自分のHPで使うぶんには問題ありません。 ※商用HPに使用して頂いても結構です。(常識的範囲外の使用は除く) ※使用報告の義務はありませんが、報告していただければ私がひそかに「ムフーーッ♪」っとなります。 ※「常識的範囲」は私(製作者)の常識的範囲なので、使用者の常識的範囲は適用しません。 ※「常識的範囲」かどうか迷ったら問い合わせてください。 # 携帯でも使えます。(絵文字も対応) # 多分大丈夫とは思いますが、バグがあればHPまで。 # バージョンアップをする場合、機能設定をいじったので、機能設定を再設定してください。 # 5.0からset.pl内のデータファイル拡張子を .txt から .log にしたものがあるので、 # バージョンアップの方でset.plをそのままアップロードしてしまうと罠にはまるかもしれません # 6.00以下から6以上にする場合は、まずset.cgi(管理画面)を開いてください。 # 携帯絵文字画像表示には以下より画像が必要です。(詳しくは下のほうで) # My First HDML # http://www001.upp.so-net.ne.jp/hdml/ # サムネイル作成には外部ファイルが必要です。(詳しくは下のほうで) # http://sugachan.dip.jp/obsolete/ext/ # repng2jpeg / resize.pl # お絵かきするには外部ファイルが必要です。(詳しくは下のほうで) # しぃ堂 # http://shichan.jp/ # しぃペインター sptr1114.zip / pchview_123.zip ------------------------------------------------------------ ● 設置の仕方 1、解凍をします。 ※ ファイルの頭に「#」がある場合はCGIを設置したあとにCGIスクリプトが自動作成します。 (なくても動く。)でも、nikset.logは一応初期設定されているので、そのまま設置してください。 [ ]の中の数字はパーミッションです。右のほうがセキュリティーが高いのですが、 サーバによって動かない場合があります。その場合は左のものを設定してください。 ※一部ディレクトリのパーミッションを変更すると正常に動かないサーバも存在しますので、  まずはディレクトリのパーミッションはデフォルトで試したほうがいいかもしれません。 root [777 or 755 or 705] ┃ ┠ #index.htm(自動作成) [666 or 604 or 600] 日記閲覧用ファイル ┠ #nik.rdf(自動作成) [666 or 604 or 600] RSSファイル ┃ ┠ nik.cgi [755 or 705] 日記本体 ┠ set.cgi [755 or 705] 設定管理用CGI ┠ tb.cgi [755 or 705] トラックバック受信用CGI ┠ pict.cgi [755 or 705] お絵かき記録用CGI ┠ old.cgi [755 or 705] 過去LOG HTML化用CGI(通常使用ではこちらを使用しなくても問題ありません) ┠ set.pl [644 or 604 or 600] 設定など用 ┠ rib.pl [644 or 604 or 600] ルーチン・ライブラリ ┠ kei.pl [644 or 604 or 600] 携帯閲覧ライブラリ ┠ jcode.pl [644 or 604 or 600] 日本語処理ファイル(Copyright (c) 1995,1996 Kazumasa Utashiro)(半角カナ強化版) ┠ cgi-lib.pl [644 or 604 or 600] ファイルデコードライブラリ(Copyright (c) 1993-1999 Steven E. Brenner) ┠ sutf8.pl [644 or 604 or 600] UTF-8へ変換用。(Copyright (C) 2006 Sato-Si(さとーし))(改造版) ┠ CP932.TXT [644 or 604 or 600] UTF-8へ変換用テーブル。sutf8.plから参照。 ┠ pop3.pl [644 or 604 or 600] メールサーバ読み込みライブラリ(メール投稿機能を使う場合のみ必要) ┠ EscapeSJIS.pm [644 or 604 or 600] 携帯絵文字用 Copyright 2004-2005 Kawasaki Yuusuke (改造版) ┃ ┠─ #nikuptmp/(自動作成) [777 or 755 or 705] ファイル一時アップロードフォルダ ┃ ┠─ nikup/ [777 or 755 or 705] ファイルアップロードフォルダ ┃ │ ┃ └ index.htm [644 or 604 or 600] ダミーファイル ┃ ┠─ niklog/ [777 or 755 or 705] LOG保存フォルダ ┃ │ ┃ └ index.htm [644 or 604 or 600] ダミーファイル ┃ ┠─ log/ [777 or 755 or 705] LOG・設定LOG保存フォルダ ┃ │ ┃ ├ index.htm [644 or 604 or 600] ダミーファイル ┃ ├ emoji_ez.dat [644 or 604 or 600] 携帯絵文字変換用DAT(au用) ┃ ├ emoji_sb.dat [644 or 604 or 600] 携帯絵文字変換用DAT(SoftBank用) ┃ ├ #nik.log(自動作成) [666 or 604 or 600] 最近日記保存ファイル ┃ ├ #kibun.log(自動作成) [666 or 604 or 600] 気分設定ファイル ┃ ├ #tenki.log(自動作成) [666 or 604 or 600] 天気設定ファイル ┃ ├ #resicon.log(自動作成) [666 or 604 or 600] レスアイコン設定ファイル ┃ ├ #nikset.log(自動作成) [666 or 604 or 600] 日記設定ファイル ┃ ├ #bgimg.log(自動作成) [666 or 604 or 600] 背景画像設定ファイル ┃ ├ #nikcount.log(自動作成) [666 or 604 or 600] ミニカウンタファイル ┃ ├ #res_flag.log(自動作成) [666 or 604 or 600] レス表示ファイル ┃ ├ #master.cgi(自動作成) [666 or 604 or 600] 管理用パスワード保存ファイル ┃ ├ #pop3.log(自動作成) [666 or 604 or 600] メールサーバ閲覧フラグファイル ┃ ├ #theme.log(自動作成) [666 or 604 or 600] テーマ保存ファイル ┃ ├ #user_pass.cgi(自動作成) [666 or 604 or 600] ユーザーパスワード保存ファイル ┃ ├ #res_pass.cgi(自動作成) [666 or 604 or 600] レス用パスワード保存ファイル ┃ └ #karamu.log(自動作成) [666 or 604 or 600] カラム表示設定用ファイル ┃ ┃ ┠─ img/ [777 or 755 or 705] 画像保存フォルダ(背景色、アイコン等) ┃ │ ┃ ├ index.htm [644 or 604 or 600] カラーチャートフレームファイル ┃ ├ sample.htm [644 or 604 or 600] カラーチャート結果表示 ┃ └ table.htm [644 or 604 or 600] カラーチャート設定編集 注:.plファイルをブラウザから見られてしまう場合があるので、動くのならば.plファイルを600にしてください。 2、まずnik.cgiとset.cgiを開きます。 一番上にあるperlのパス(#!/usr/local/bin/perl) を自分に環境にあったものに変えてください。 大抵 #!/usr/local/bin/perl #!/usr/bin/perl のどちらかです。(例外アリ。わからない場合はサーバ管理者に聞いてください) 3、HPにアップロードします。 このファイル(readme.txt)と更新履歴のファイル(history.txt)はいりません。 画像以外は全てアスキーモードでアップロード。 そしてパーミッションを変えます。 各パーミッションは上の[755]というところです。 注:一部このパーミッションでは動かない場合もあります。 とりあえずアップロードして、パーミッションを変えずに動かしてみて、 それでまともに動くのなら変えなくてもいいと思います。 4、設置完了。 ブラウザからnik.cgiを開いてください。 まずは管理パスワードを設定してください。 (注:nik.cgiを開いてもダメな場合はset.cgiを開いてみてください) あとはなんとでもできるはずです。 動作確認をしてください。(下記「使い方説明」参照) ------------------------------------------------------------ ★503サーバーエラーが出る場合 rib.plの1677行目辺り eval { use LWP::UserAgent; }; return if $@; eval { use HTTP::Request::Common; }; return if $@; #eval ("use LWP::UserAgent;"); return if $@; #eval ("use HTTP::Request::Common;"); return if $@; これ(↑)を #eval { use LWP::UserAgent; }; return if $@; #eval { use HTTP::Request::Common; }; return if $@; eval ("use LWP::UserAgent;"); return if $@; eval ("use HTTP::Request::Common;"); return if $@; こう(↑)するか、 #eval { use LWP::UserAgent; }; return if $@; #eval { use HTTP::Request::Common; }; return if $@; #eval ("use LWP::UserAgent;"); return if $@; #eval ("use HTTP::Request::Common;"); return if $@; こう(↑)すると動く場合があります。 (これをした場合、トラックバックは使用できません。←受信は可能だが送信するとエラーになります) ------------------------------------------------------------ ● バージョンアップをする場合 ほとんどはnik.cgi、rib.pl、set.cgi、kei.plくらいを更新するだけです。 たまにほかのものを更新しないといけない場合もあります(更新時間参照) sel.plは更新する必要はありませんが、更新記録(history.txt)に印がついている場合は更新してください。 結構昔のバージョンからバージョンアップする場合は、 niklog/とnikup/以外のものを上書きしてから管理画面を開き、設定確認と設定更新をしましょう (更新する設定が無い場合でも更新ボタンを押したほうがよいです)。 ------------------------------------------------------------------ ● 使い方説明 まずは右下にある「パスワード」の入力ボックスに指定したパスワードを入れましょう。 そうすると、クッキーが発行され、書き込めるようになります。 (クッキーが使えないと書き込めません) ちなみに、空白でボタンを押すと、クッキーを削除します。 管理設定をしたい場合は右下に「管理画面へ」のリンクが出現しているはずなので、 そこをクリックしてください。 ------------------------------------------------------------------ ● 諸注意・細かい説明 ☆タグは全面許可です。 使うときはプレビューで確認してから書き込まないとすごいことになるかも知れません ただし、レスのタグは不許可です。 ☆引用文字色説明。 管理用の LOG表示の中にある 引用文字色の設定を説明します。 これは、文字の最初が「>」または「>」の場合に、 その一行を設定色の色にして、斜体にします。 色の設定を行わない場合は色も斜体もしません。 ☆レス書込み機能説明。 [管理用]-[レス設定] の「レス書込み表示」の説明。 レスが付いたときに「レスがついたー」と表示する機能です。 数字にリンクが貼ってあるので、数字をクリックすれば該当のLOGが表示されます。 管理者がレスをしてもレスが付いた表示にはなりません。 「レス確認」ボタンを押せば表示が消えます。 ☆カレンダー設定 カレンダーを設定するときには管理画面の「カレンダ設定」を開き、 カレンダの使用を設定してください。 レイアウトは変更してみてください。 祝日設定は色を変えるだけです。 他に効果はありません。 春分の日・秋分の日は毎年日が変わります。 この日を自動計算します。 これは、毎年官報にて公示されます。 計算で出せないことはないので計算で出すことが出来ます。 今までの計算で違ったことはありませんが、今後違う可能性もあります。 多分平気とは思いますが。 詳しくはWEBで検索すれば出てくると思います。 カレンダの色などは設定しながら見てください。 携帯からはカレンダ表示されません。 携帯の検索表示は新しい日順で表示されます。 ☆インデックス 日記を書くと index.htm(任意のファイル名に変更可能) に最新の日記が書き出されます(書き出しファイル名は管理画面で変更可能) 書き出されるのは最新の日記のみです。 検索や個別の日記へのリンクはnik.cgiについています。 少しでもトラフィックを気にする方は使用してください。 日記を書き込まなければ更新されません。 カレンダを使用している場合は書いた月のカレンダが表示されます。 日記を更新しないとカレンダが表示している月が替わりません。 index.htmを使用する場合のミニカウンタもカウントアップされます。 ☆RSSはnik.cgi(set.plで設定してある$cgiのスクリプト)にリンクされます。 index.htmにリンクをつける場合はnik.cgiの4349行目辺りの sub make_rss 内を修正してください。 ($cgi を $index_file に変える) ☆画像を使用している場合、「画像更新」や「プレビュー」で画像をアップロードしています。 この状態で編集や書き込みを止めた場合(完了しない場合)は、次回使用することが可能です。 ただし、一旦書き込んだ記事の編集をする場合、途中でやめると画像が表示されなくなることや残ってしまう場合があります。 ☆メール投稿機能ははSocketしか使用してないので、perl5ならば動くはずです。たぶん。 ☆メール投稿機能の注意 メール投稿をする場合は、メール投稿専用のPOP3アカウントが必要です。 APOPなどの暗号化には対応していません。 HTMLメールを送ると変なデータを取り込むのでやめてください。 件名がタイトルになり、本文が日記の本文になります。 メール投稿の時間は送信日時になります(正確にはメール作成日時)。 画像もアップロードできますが、画像投稿数以上の画像を送った場合、 サーバ上に保存はされますが、表示がされません。(消せません) アップロードできるのは画像(jpg,gif,png)のみです。 nik.cgi?mail で、メールの即時読み込みを行います。 または nik.cgi?pop3=mail でもメール読み出し可能。 メール更新は多少重いので、更新期間を長くして(例えば一年。60*60*24*365)、 自分がメール送信した場合に nik.cgi?mail でメールの取り込みをすると 多少軽くなります。(携帯からでもOK) メール投稿した場合の画像は自動的に上に貼り付きます。 投稿用メールアドレス制限をしている場合、これ以外のメールアドレスから送られてきた場合には、 強制的にメールを削除します。データは復旧できません。 画像のみの投稿の(本文と件名がない)場合記事を書き込まずに画像だけ保存するようになります。 Socketが使用できないときは、set.plの$pop3_plを変更してください 詳しくはサーバ管理者に聞いてください。 Socketが使えない場合は諦めてください。 WEB上での設定だと設定が見られてしまう可能性があります。 拡張子を.cgiにするなどの処理が必要です。 ☆分類(テーマ)を使用する場合の注意 過去のテーマをつけてない記事は「未分類」として表示されます。 分類項目を削除した場合でも、その記事の設定項目は消えません。 間違って分類を削除してしまった場合、theme.txtにはデータとして残っているので、メモ帳などで開いて、 最後の「DEL」(右からタブ一個左に「DEL」があるデータが削除されたデータです)を削除してください。 子分類をつけられます。基本は管理画面からの設定ですが、 書込み時に分類を選択した上で右の入力欄に文字を入れると、選択した分類の子分類を作成します。 分類検索の場合は、親分類を選択した場合、子分類も検索対象に入ります。 ☆最新記事、最新レス、最新トラックバックについて。 設定に関係なくデフォルトでログを50件保存しますが、保存LOGを50件以上に設定した場合、 LOGが貯まるまで指定LOG数分の表示はされません。 また、TOP表示機能でTOP表示している記事は最新記事数とは別の扱いになります。 例)TOP記事を2件設定して、最新LOGを5件にした場合、TOP記事2件、最新LOG5件の計7件記事表示されます。 ☆最大記事保存数について サーバ容量を圧迫している場合などに使用してください。 ○日前まで保存します。 例)1日 という設定の場合、08/10/04 の時点で、08/10/03に書き込んだ(設定した)記事まで保存されます。 例)1ヶ月 という設定をした場合 08/10/04 の時点で、先月の 08/09/01に書き込んだ(設定した)記事まで保存されます。 →月にすると、前月の記事が丸々残ります。 削除されるタイミングは、書き込み時ですので、設定が過ぎても記事を書き込まない限りは自動的には削除されません 注意:昔のデータで、整合性が取れていない場合があります。この場合、削除されずに記事が残る場合があります。 (記事が残るというよりも、記事に上げた画像や、レスが残る場合があります) ☆パスワード認証について。 機能設定2でユーザーのパスワード認証の設定が行えます。 パスワードは右下の管理用のパスワード入力欄と一緒です。 [入室時に使用]または[記事毎に使用]が選択できます。 [入室時に使用]はパスワードがないと記事全体が見れません。 [記事毎に使用]は、パスワードが無くても許可記事のみは閲覧できます。 記事の見える見えないは、閲覧権限がない場合は記事そのものを非表示にするか、記事内容を非表示にするかの違いです。 因みに、LOGファイルの加工はしていないので、見ようと思えばLOGから見れます。 あまり硬い認証ではないので、簡易的な使用にとどめておくほうがよいです。 (硬いものにしたい場合、LOGファイルを通常見られない場所に移動するか加工するかしないとダメ) ☆個別記事パスワード認証について。 記事一つ一つに「パスワード認証」とは違うパスワードがかけられます。 ただし、閲覧権限もつけている場合はパスワード認証のほうが優先されます。 例)閲覧権限9+個別記事パスワードをつけている記事では、 ユーザーの権限9のパスワードを持っているユーザーは個別記事パスワードに関係なく記事が読めます。 「誰でも」とつけた場合は個別記事パスワードが分からないと読めません。 ☆ユーザー投稿について。 管理者以外のユーザーに投稿をさせることが出来ます。 set.pl内の設定に入ってるので見てください。パスワード認証と関連させることが出来ます。 ☆トラックバック トラックバックを送信するときにモジュールを使用します。 一部のサーバではモジュールが使えない場合があるかもしれません。 管理設定の機能設定2でモジュールチェックが出来ます。 「使用する(LWP::UserAgentモジュール使用)」が [LWP::UserAgent][HTTP::Request::Common]のモジュールを使用しています。 トラックバックはUTF-8で送信しています。 なぜか受信してくれないブログがあります。だんだんと改善されていくかもしれません。 ☆レスパスワード設定 レスを書き込むときにパスワードがないと書き込めない機能です。 自動変更にした場合、高確率でスパム書き込みを減らすことが出来ます。 ただし、自動でレスFORMを表示してて、INDEXを作成している場合は、INDEXからの書き込みが最初エラーになります。 また、運悪くHIDDENにしていて、投稿したときがパスワード切替時間の場合はエラーになります。 自分指定表示で「あああを英字で」という使い方も出来ます。 パスワードは英数字のみにしてください。 日本語は対応してないですが、使える場合もあります。(多分SoftBank機種ではエラーになると思います) ☆文字サイズなどの設定 一部テーブルに class設定を入れたのでそこでCSSの指定が可能となります。 指定可能なものは、カラム設定で設定するもの全般。 ただし、記事、タイトル、カレンダー、枠をつけないコメント等は適用されません。 要するに同じようなテーブルで囲っているものが適用されます。 書式例は以下の通り。 /* 以下テーブルに囲われているものに適用(記事・タイトルは除く) */ /* タイトル */ .nik_1{ font-size:110%; } /* 内容 */ .nik_2{ font-size:80%; } /* 内容2(記事一覧/タイトル一覧の月3/4のみ適用) */ .nik_3{ font-size:100%; } nik_3の設定はタイトルや記事一覧の月3/4表示はtable内にtableを設定しているので、 nik_2だけでは適用されない場合につけてください。 バグかなんだか知りませんが、nik_3を設定していないとnik_2が適用されない場合もあるみたいです。 この辺は実際にテストしながら設定してください。 ☆レスのメール送信機能 レスがあった場合にメール送信されます。 ただし、管理者の場合はメールの送信は行いません) SendMailが使用できない場合はつかえません。 # レスがあった場合にメールを送る場合 # sendmailのパス $sendmail = '/usr/sbin/sendmail'; →パスがわからない場合はサーバ管理者に聞いてください。 # メールタイトル $subject = '日記にレスがつきました'; →実際のメールのタイトル(件名)です。 # 送信元アドレス(未設定だと送信先アドレスを使用=送信先と送信元アドレスが一緒) # SPAMメール判定される場合設定してください。 #$mail_from = 'nomail@xxx.xxx'; →ここをいじらないと送信者と受信者のメールアドレスが同じになります。 詐称アドレスと認定されるとSPAMフィルターで引っかかってメールが届かない場合があります。 その場合ここを設定すればよいかもしれません。 ☆検索隠し機能 「himitsu()」または「himitsu(0)」と入れると閲覧ランクが設定された記事全てが表示されます。 カッコの中に数字を入れると入れた数字の閲覧ランクが表示されます。 ------------------------------------------------------------------ ● 携帯絵文字使用 絵文字をPC用画面、キャリア間から表示できるように出来ます。 絵文字画像はパッケージ化してないので、個別対応してみてください。 やり方は、 My First HDML http://www001.upp.so-net.ne.jp/hdml/ サイト内の「携帯絵文字対応BBS」内で配布している 「i-mode絵文字画像」、「vodafone絵文字画像」、「EZweb絵文字画像」をそのまま利用します。 これをDLして、日記フォルダ内のどこでもいいので展開して転送します。 (現在.gifファイルのみで.pngファイルは使用していません。 ただし、今後使う可能性はあります。←GIF表示が出来ない機種もあるので。) そして、set.pl内の「$emoji_img_i = '';」「$emoji_img_ez = '';」「$emoji_img_sb = '';」を設定してください。 (設置したフォルダのパスを入れる) PCからの絵文字投稿もできます(上の設定+タグ入力支援を使う場合のみ)。 注意:メール投稿からの絵文字使用はauのみ可能です。 Docomoは送信サーバの時点で絵文字を下駄(〓)に変換してしまうみたいなので対応不可能。 Softbankはよくわからないのでできたらそのうちやるかも知れません。 PCからの絵文字表示が重い場合は、sel.plから絵文字を一枚の画像で表示することが可能です。 これをする場合、まずは小さな絵文字がすべて表示されるのを確認してから行ってください。 (絵文字が無い場合でも入力が可能になってしまうので) 尚、一枚絵の画像はMy First HDMLさんの画像を使用しているので、感謝しておいてください。 ------------------------------------------------------------------ ● サムネイル作成機能 サムネイル作成機能を使用するには外部ファイルが必要です。 以下のURLより repng2jpeg と resize.pl をダウンロードしてください。 http://sugachan.dip.jp/obsolete/ext/ 基本的にはこの中の説明書(readme.txt)に従ってください。 転送するファイルはnik.cgiと同じ階層に転送してください。 簡単に説明すると ・resize.plのなかにcheck.cgiでチェック ・repng2jpegを使用する場合、バイナリモードで転送(パーミッション変更) ・set.plを編集する 詳細 1:DLしたresize.pl(resize.zip)を解凍します。 2:中に入っているcheck.cgiをサーバにあげてアクセスする。 3:表示される結果にしたがって自分のサーバにあった設定をしてください。   ○PerlMagick が OK の場合は resize.pl.magick を resize.pl にリネームしてアップロードする。   パーミッションは644。   この場合以下設定は必要ありません。(4を飛ばして5へ)   ○NetPBM が OK の場合は resize.pl.netpbm を resize.pl にリネームしてアップロードする。   パーミッションは644。   この場合以下設定は必要ありません。(4を飛ばして5へ) 4:上記の PerlMagick、NetPBMがともにNGだったら、repng2jpegの所を見ます。 repng2jpeg(i386-freebsd) dynamic :OK standard:OK static :OK このようになっている場合、repng2jpegをアップロードすれば使用できます。 OKがひとつも無い場合は使えませんのであきらめてください。 ・repng2jpegを使う場合 repng2jpeg_1.0.4.zip を解凍します。 カッコの中の(i386-freebsd)を参考に該当するフォルダを開きます。 dynamic : OS依存が大きいので ファイルサイズは小さいです standard : OS依存が中くらい。 ファイルサイズは中くらいです static : OS依存が少ないので ファイルサイズは大きいです 下に行くほど使える確立が大きくなります。 ・該当するrepng2jpegをバイナリモードで転送して下さい。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ パーミッションは755。もしくはサーバ指定のパーミッション。 ・再度check.cgiを開いて、 ./repng2jpeg Found SIZE : 59036 MD5 : a375f3fc944740ca5706f0ea272fb5c0 ./repng2jpeg Permisson:OK ./repng2jpeg Exec:OK ->(repng2jpeg TestMode:OK version 1.0.4) がすべてOKになっていることを確かめてください。 ・resize の resize.pl.re を resize.pl にリネームしてアップロードする。   パーミッションは644。 5:set.plを編集してください。 # サムネイル作成用 #$resize_pl = 'resize.pl'; となっているので、初めの#をとって # サムネイル作成用 $resize_pl = 'resize.pl'; これで問題があれば repng2jpeg / resize.pl の作者ではなく、私にご連絡ください。 わかる人はrepng2jpegのソースが付属されているので、サーバでコンパイルすれば使えるようになります。 ● フォーマット デフォルトではサムネイルはJPEG固定ですが、 resize.plを編集することによって元画像のフォーマットのサムネイルを作成します。 ※ここの編集は自己責任にてお願いします!! わかる人のみ編集してください。 手順: set.plの # サムネイル画像(0:jpg固定/1:画像フォーマットに倣う※resize.plを編集すること!!) $resize_pl_sw = 0; を $resize_pl_sw = 1; とする。 以下該当ファイルを編集する ★resize.pl.magick 以下を置き換え sub imgresize{ my ($src,$dst,$w,$h,$jpegq,$del_flag) = @_; unless($w =~ /^\d+$/ || $h =~ /^\d+$/){ return 0;} if(eval 'use Image::Magick; 1'){ my $i = Image::Magick->new; $i->Read($src); if(@$i >= 2){ my $g = Image::Magick->new; $g ->Read($src.'[0]'); $i = $g; } $i->Scale(width=>$w, height=>$h); if ($jpegq =~ /^\d+$/) { $i->Set(quality => $jpegq); } $i->Write("$dst"); chmod(0666,$dst); if($del_flag == 1){ unlink($dst) if(-e $dst && (-s $dst) > (-s $src)); } } if(-e $dst){ return 1 ;} return 0; } ★resize.pl.netpbm 以下を置き換え(テストしてない(テスト環境がない)から動かないかも) sub imgresize{ my ($src,$dst,$w,$h,$jpegq,$del_flag) = @_; my @src = imgbbs::GetImageSize($src); eval{ if ($src[2] == 2){ `djpeg $src | pnmscale -xsize $w -ysize $h | cjpeg -quality $jpegq > $dst`; }elsif($src[2] == 3){ `pngtopnm $src | pnmscale -xsize $w -ysize $h | ppmtopng > $dst`; }elsif($src[2] == 1){ `giftopnm $src | pnmscale -xsize $w -ysize $h | ppmtogif -interlace > $dst`; } }; chmod (0666,$dst); if($del_flag == 1){ unlink($dst) if(-e $dst && (-s $dst) > (-s $src)); } if(-e $dst){ return 1 ;} return 0; } ★resize.pl.re unless($w =~ /^\d+$/ || $h =~ /^\d+$/){ return 0;} my @src = imgbbs::GetImageSize($src); unless($src[2] >= 1 && $src[2] <= 3){ return 0; } unless($jpegq =~ /^\d+$/){ $jpegq = 75;} if($jpegq < 1 || $jpegq > 100){ $jpegq = 75; } を削除。 ------------------------------------------------------------------ ● しぃペインター しぃペインターが使用できます。 使用する場合は、 しぃ堂(http://shichan.jp/)サイト内より 「しぃペインター」(sptr1114.zip(264KByte))をダウンロードしてください。 解凍して、res/フォルダ、spainter.jar 、 sp.js を nik.cgiのある場所にバイナリモードでアップロードしてください。 適宜パーミッション変更をしてください。 set.pl内の # しぃペインター用(使う場合は説明書参照) #(0:不使用/1:normal使用/2:pro使用) $painter_sw = 0; を1か2にします。 管理画面で「絵描」という設定ボタンが増えてますので、ここで設定を行ってください。 これで描けるはずです。 書いた場合、更新をしないと表示されないので注意してください。 ● アニメーションに関して 描画の手順をアニメーションとして再生できます。 pchview を ダウンロードしてください。 res/res.zip 及び PCHViewer.jar をアップロードしてください。 注意:res/tt.zipをアップロードするとしぃペインターが正常に動かなくなるので注意してください。 ------------------------------------------------------------------ ● テンプレートの使い方 注意:HTMLが分からない方はいじると大変なことになるので辞めましょう。 set.plの下のほうで # ログテンプレートファイル $log_html = ""; という設定があるので、テンプレートファイル名を入れてください。 このテンプレートファイルはログの表示のみのテンプレートになります。 他の場所はソースからいじるしかありません。 HTMLで書いてください。 ただし、HTMLタグやBODYタグなどは使用しないこと! ログ表示の場所だけをHTMLで記述してください。 特殊タグ ※各特殊タグの先頭ににSとEをつけると、その項目がある場合表示する。 例)
がある場合は 「XX/XX/XX XX:XX:XX
」 と表示する。 →がない場合は表示しない(挟まれた特殊タグごと削除します) ※各特殊タグの先頭ににSxとExをつけると、その項目がない場合表示する。 例)時間がありません
がない場合は 「時間がありません
」 と表示する。 →がある場合は表示しない(挟まれた特殊タグごと削除します) ※表示/非表示は挟む特殊タグと必ずある項目以外で有効です。(挟む特殊タグはその設定が無効の場合は特殊タグごと消えます) 管理者のみ表示スタート。 管理者のみ表示エンド。 書きこみ時間を表示します 指定時間表示設定がある場合のみ時間を表示します(管理者のみ表示) 指定時間非表示設定がある場合のみ時間を表示します(管理者のみ表示) タイトルを表示します 閲覧ランクを表示します 記事の個別パスワードがある場合は「*」を表示します 日記のURLを表示します。括弧()の中の文字でリンクします。 気分アイコンの表示 天気アイコンの表示 テーマの表示 ユーザーが書き込んだ場合のアイコンを表示します。 ユーザーが書き込んだ場合の名前を表示します。 ユーザーが書き込んだ場合のランクを表示します。 本文の表示 記事編集する場合のリンク(管理者のみ表示されます。一般の人には表示されません) 記事TOP用スタートタグです。 記事TOP用設定ボタン。 記事TOP用上に移動ボタン。 記事TOP用解除ボタン。 記事TOP用エンドタグです。 レスの削除タグスタートです。 からを挟んでください。(の上に記述すること) レス表示スタートタグです。レスが複数書き込まれている場合この中身で繰り返します レス削除用checkbox。(管理者のみ表示されます。一般の人には表示されません) レスを書き込んだ人の名前 レス用アイコン表示 レスのコメント文 レス時間 レスの繰り返し終わり レスの削除ボタン(管理者のみ表示されます。一般の人には表示されません) レスの削除タグ終了です。(の下に記述すること) レスをするリンクです。 レス書きこみFORMのを表示する場合の開始タグです。 レス書きこみFORMの名前入力欄です。カッコの中は表示の広さ(size)です。 レス書きこみFORMの名前入力欄です。カッコの中は表示の広さ(size)です。クッキーで名前が保存されている場合それを表示します。 レスを書き込んだ人のクッキーに保存されている名前 レスのアイコン レスのアイコンサンプルのURL レス書きこみFORMの書込みパスワード入力欄です。カッコの中は表示の広さ(size)です。 レス書きこみFORMの書込みパスワードHIDDENです。非表示にて設定します。 レス用のパスワード(使用時のみ) レス書きこみFORMのコメント入力欄です。カッコの中は(広さ,高さ)(cols,rows)になります。 レス書きこみFORMのSUBMITボタンです。カッコの中はボタンの文字になります。 レス書きこみFORMの終了タグです。 レス表示の畳み込み時開始地点。 レス表示の畳み込み時終了地点。 トラックバックの削除タグスタートです。 からを挟んでください。(の上に記述すること) トラックバック表示スタートタグです。トラックバックが複数書き込まれている場合この中身で繰り返します トラックバック削除用checkbox。(管理者のみ表示されます。一般の人には表示されません) トラックバック元のURL トラックバック先のURL トラックバックのブログ名 トラックバックのタイトル トラックバックのコメント文 トラックバック時間 トラックバックの繰り返し終わり トラックバックの削除ボタン(管理者のみ表示されます。一般の人には表示されません) トラックバックの削除タグ終了です。(の下に記述すること) 記事のトラックバックURLです。 トラックバック表示の畳み込み時開始地点。 トラックバック表示の畳み込み時終了地点。 ---例:以下のHTMLで初期設定のデザインとほぼ等価。 ---(表示仕様が違うので完全に等価にはなりません)
<!--_USERNAME_-->




分類:
閲覧ランク:


NAME:
ICON:

------------------------------------------------------------------ ● 過去LOGのHTML化 old.cgiを使用するとLOGをすべてHTMLにすることができます。 ただし、おまけ程度の位置づけなので正しく動かない場合があります。 ------------------------------------------------------------------ ● その他設定(通常はいじる必要はありません) set.pl の中で設定できるところがあります。 詳しくはset.plをご覧ください。 以下は一部です。 # CSSファイル(設定する場合はCSSファイルを自分で作ること) $css_file = ""; CSSが使用できます。 設定をした場合、自分でCSSファイルを作成してください。 パーミッションは変えなくても平気です。動かない場合は644とかにしてください。 # HTMLファイル書き出し等でフォルダを変えた場合以下を設定すると正しく表示できる(出来ない場合もあります) # 以下フォルダをnik.cgiがあるフォルダまでを設定する。 # 分からない場合はHTTPからの絶対パスでもOKな気がする # → パスの最後は / で終わること $nikdir = ''; 真中あたりの 日〜土の文字を変更すると、 カレンダーと書き込みの曜日の文字が変わります。 $week_n[0] = "日"; $week_n[1] = "月"; $week_n[2] = "火"; $week_n[3] = "水"; $week_n[4] = "木"; $week_n[5] = "金"; $week_n[6] = "土"; 書込み日付の書式を変えたい場合は、 nik.cgiの1441行目辺りの $in{'date'} ="$in{'year'}年$in{'mon'}月$in{'day'}日($wday)"; と言うところを編集すると変わります。 ------------------------------------------------------------------ 最後に、分かっているとは思いますが、これによりトラブルが発生しても 私は一切の責任は負いません。各自で対処してください。 ------------------------------------------------------------------ とにかく、バグ、意見、質問等があったらHPまで。