2006/07/24(月)画像の表示プラグイン
リスト表示プラグイン(list.cpp)と画像一覧プラグイン(thumbnail.cpp)でページをサポートしました。
1ページに表示する画像の枚数は、リスト表示で10件、画像一覧で40件になっています。
この枚数を変更する場合は、それぞれのプラグインのiniファイルにおいて、
numというエントリを追加し、表示枚数を設定してください。
2006/07/23(日)行方不明画像
さっそく,ハッシュデータベースから,画像が見つからなかった時用のfilenotfound.gifを作成,設置してみた.
今回の変更点
- [gallery][noimage] @ config.ini\見つからなかったときに表示する画像の指定\この画像は,img/フォルダの中に置いておく.
- common.cpp{CSString ImageNotFound(void)}の追加.{Make*****URI(CImage *image)}において,ハッシュから画像を見つけられなかったときにImageNotFoundを呼び出すように変更.
2006/07/23(日)新着画像
hatena_sunflower.JPGを上げて気づいたけど,新着でファイルが見つからないときに500が出てるね.行方不明画像を作って,そっちを参照するように変更したいなぁ.
2006/07/20(木)20060720版
変更
新着をmenu.cgi側で出力するようにしたため,dir.txtの一部のエントリが不必要になります.
修正前のdir.txt
entries=.recent, adiary [.recent] entries= name=新着画像 [adiary] entries=
修正後のdir.txt
entries=adiary [adiary] entries=
追加
- inifile\iniファイルからエントリを消す関数を実装
- common\hashデータベースからエントリを消す関数を実装
- plugin\ファイルの移動,スライドショーを行うプラグインをいっしょに配付するようにしました.
- plugin/move\ファイルの移動,ファイルの削除ができます.
- plugin/slideshow\ファイルをスライドショーで表示することができます.
2006/07/15(土)ファイルの移動
メインの画像,サムネイル以外も移動できるように修正中.scandir使いたいけど,ソートする必要は無いし,そもそもPOSIXに準拠していないので見送り.今回はすなおに,readdir使ってエントリを探すことにする.
2006/07/14(金)upload.cpp
パッチを参考に一部修正.
2006/07/13(木)アルバムの使用について
元々,不特定多数に公開することを前提としていなかったので,外部からの悪意のあるアクセスや,内部のプラグインのバグや仕様といったものには非常に弱い仕様になっています.
分かっているだけでも,プラグインで1種類,フォーム処理で2種類の仕様上のセキュリティホールがあります.他にも仕様上のセキュリティホールはあるし,実装上のバグはどれだけあるか分かりません.特にプラグインは,外部プログラムを呼び出すため,何をされるか分かったものじゃありません.
外部からの攻撃を気にするのであれば,一応免責を書いてはいるものの,アルバムの作者としては,アルバムの使用は薦められません.
2006/07/13(木)20060713版
やばめのバグを修正したバージョン.
2006/07/12(水)common.cpp
CreateFile
デバッグ中に入れていた数値を直し忘れていました.
441行目付近
for(int index = 0; index < 10; ++index){ を
for(int index = 0; index < 10000; ++index){ にしてください.
現在のままだと,同じファイル名で10番までテストした時点でエラーが出ます.
しかも,アーカイブの場合,新着に画像が登録されない模様.
時間が出来たときにでも,直します.
InitApplication
configのmax_file_sizeを見落としていました.
140行目付近 if(form.Init(CForm::GET | CForm::POST)){ を
次のように直してください.
int max_mem = atol(ini["upload"]["max_file_size"]); if(max_mem <= 0) max_mem = 10*1024*1024; // 10M if(form.Init(CForm::GET | CForm::POST, max_mem)){
2006/07/11(火)配布ページ
かなり手抜きではあるが,一応作ってみた.問題なのは,相変わらず動作確認していないところ(汗)
一次配布は,せりか式のcgiのページ.サンプルページはここでよければここにする.