HOME > ETC. > STARTING OVER日記。 > 「今日は何の日?」改修計画。(1)

STARTING OVER日記。

 
« それはそうと。 | インデックス | 「今日は何の日?」改修計画。(2) »

 

2008年04月14日(月)

「今日は何の日?」改修計画。(1)

びくでんのほぼ全部のページの右上にある「今日は何の日?」へのリンク。
実はこの「今日は何の日?」というCGIは2001年春に作った、私にとっては5番目のCGI。
殆ど修正せずに使っています。
今のびくでんで動いている最も古いCGIかと。
(ちなみに最初に作ったCGIはチケット画像を出す物で、2~4番目は今は亡き「The Alfee Links」用の物だった。)

で、処理自体も面倒な仕組みになっているし、ソースも読みづらいし。
データもね、「何の日?」用の特殊な物だし、出来れば他のCGIとデータを共有したい。

それで、綺麗なCGIに作り替えようかと。

常々。
常々常々。
常々常々常々、思っていたわけです。

現在、自宅でのんびりしているワタクシなので、今のうちにやってしまおうかと。

まず、データについてから考えましょ。

実は今回、リリース関係とライブ関係のデータを別々にしてしまおうかと。
リリース関係はそんなに苦労しそうにないので、とりあえずは横っちょのほうに置いといて。

ライブ関係のデータを別に分ける、というか、「この日のアルコン、何本目?」というCGI用のライブデータは別にあるので、それを共有できたらという考えです。
ただ、その場合、「何本目?」データでは2007年の武道館は

2128,20071222,日本武道館,
2129,20071223,日本武道館,
2130,20071224,日本武道館,

その前年の武道館は

2068,20061222,日本武道館,
2069,20061223,日本武道館,
2070,20061224,日本武道館,

という具合になっているのですが
(ちなみにこれは「通番,日付yyyymmdd,会場名,」というcsv)
現在の「何の日?」のデータは

0,1987-2007,12,24,日本武道館,東京,1

という具合の省略形のデータで。
(こっちは「内部コードその1,年yyyy,月mm,日dd,会場名,都道府県名,内部コードその2」というcsv)
※これは武道館の例だから1987-2007なんてのになっていますが、1年しかやっていないものはその年だけが入っている。飛び年の場合は「2001+04」とかいう感じ。
…互換性、無いし。

「何本目?」データを生かすとすれば、末尾に都道府県名をつけるのはいいし、内部コードもこっちの下手くそな処理の都合上の物なのでどうにでもなるとして。
どうやって、「○年連続」の公演を処理するかが課題になります。
あと、武道館みたいな「○年連続」はまだいいとして、飛び年が困る。
例えば。

0,1985+86+88+92-99+2001+04-07,12,29,大阪城ホール,大阪,1

これは1985年、86年、88年、92~99年、2001年、2004~07年の12/29に城ホールをやっているよ、というデータなんですけどね。

そんなわけで、「何本目?」データから見栄えの良い表示を作り出すロジックを作り出さねばならんわけです。
少なくとも、上の城ホールの例でいうなら「1985,86,88,92-99,2001,04-07年」なんて表示をせずに単純に「1985,86,88,92,93,94,95,96,97,98,99,2001,04,05,06,07年」という表示を出すのならすぐにでも出来ますがね。
長いし。
レベルダウンはしたくないところ。
…配列につっこんで、隣の配列が翌年で、その隣がふたつ先の年かどうかで判別するかねぇ。
(漠然。)

そういうややこしいことさえなければ、プログラムが呼び出されたら、現在の月と日と同じライブを表示させる。
単にこれだけ。

単純な作りですけどね、さて、どうなりますやら。