「アンパンマンDB(システム)」に関する日記(6)

<前 次>

アンパンマンDB(システム)


設定画面が、到達経路によってはエラーになってしまうことが判明しました。
開発環境では起こらなかったので、おそらくWAFによりオープンリダイレクト対策が必要以上に機能してしまったものと思われます。
ただまあ、戻り先をパラメータで指定できるのも事実なので、単にWAFを回避するだけでなく、ちゃんと安全性を向上させるようにしたいですね。

アンパンマンDB(システム)

タイトルをいい感じに改行させるためのデータ、タイトル構造を検索するための機能を作っていました。
これはもうほぼ管理人専用ですが、ストリクトクエリでのみ使用可能です。

例えば、分割記号「|」を使っている、つまりタイトルがいい感じに改行される記事を探すのは、以下のようになります。
検索結果「"title:structure:contain:|"」 | アンパンマンアニメDB

ドラゴンクエスト10とアンパンマンDB

ドラゴンクエスト10

大型アップデート情報 バージョン7.1 (2024/7/10 更新)|目覚めし冒険者の広場
大型アップデート!!

毎月10日はDQXで遊ぼう! ~果ての大地ゼニアス 探索おうえんアイテムプレゼント!~ (2024/7/10更新)|目覚めし冒険者の広場
テンの日!!

イベントの重なった日だからさぞかしゲームに忙しかっただろうと思いきや、テンの日の最低限のアイテム回収しかしてませんでした。
というのも…

アンパンマンDB(システム)


タイトルをいい感じに改行する機能作ってました。
先日のレイアウト崩れの件もあるので早々にリリースして、映画のタイトルを一通り対応させました。

このやり方もQiitaに書いてもいいかな。
ツイートでは事細かに処理を書いていますが、これを自動でやってくれるHTML/CSSがあるのです。
JavaScriptは使ってないよ。

アンパンマンDB(システム)

タイトルをいい感じに改行する機能の前提として、これまで変な実装だった部分を修正していました。
修正内容は主に2つ。

1つ目は、何をやるにもなぜか商品情報を持ちまわしていたこと。
当然それは、タイトル項目にも及んでいて、たとえ商品が一つもなくてもタイトルを表示するには商品情報を渡さなければなりませんでした。
商品情報は必要なときだけ使えればいい…というか、渡さなくても商品コードから生成できるので、商品情報を渡す相手を最小限にする対応を行いました。

2つ目は、タイトル項目自体の扱いがしっちゃかめっちゃかだったこと。
アンパンマンDB側から見た「項目名」とSQLから見た「列名」はまったく異なる概念なのですが、ごっちゃにしていた部分が多々ありました。
これまで問題が起きていなかったのは、たまたま項目名と列名が全部一致していたから。
このあたり、ちゃんと正しい概念で使い分けるようにしました。

で、修正とは別の、前向きな実装としては、タイトル項目の、タイトルそのものとタイトルの構造を示すデータを使い分けられるような仕組みの準備をしていました。
これまでは、タイトル項目にはタイトルそのもののデータしか入っていなかったので、どのデータを選ぶみたいなことはしなくてよかったのですが、今後は選ぶ必要が出てきます。
このあたりを、自然に対応できるような仕組みを作っています。

あとはいい感じの入力フォームと、構造データも記録できるような仕組みと、構造データを反映する機能…かな。
まだやることが多いな。

そそうそう、今回の機能に必要なCSSは先行してリリースしたのですが、タイトル以外が微妙にレイアウト崩れるようになったので、機能完成後にもうちょっと調整します。

アンパンマンDB

アンパンマンDB(記事更新)

実は結構前から書きかけていたんですが、いつまでも寝かしとくわけにもいかないので、書き上げて公開しました。
この熱さ、わかってほしい!

#再登場してほしいアンパンマンキャラ」の追加です。
タグ自体は数ヶ月前からありましたが、利用者が増えてきたので、このタイミングで追加しました。

アンパンマンDB(システム)

サブタイトル、キャラDBにも適用しました。
えほんのルルンのページとかわかりやすいかと。

他にもいろいろ作業はしたのですが、そのあたりはリリースしてたりしてなかったり。
タイトルをいい感じに改行する機能とか、実装しようとはしているのですが、どうやってタイトルに改行ヒントを盛り込むかが、案外決まらない。
書式は決めたんだけど、タイトルそのものを上書きする方法だと、タイトル項目に入るのがタイトルそのものじゃなくなって気持ち悪いし、いたるところで使っている都合上、全部で対応しないといけなくて大変。
だからと言ってタイトルとは別の項目にすると、二重管理が面倒臭くなる。
どうしたものか。

アンパンマンDB(システム)

サブタイトルもなんですが、タイトル本体(h1タグによる大見出し)のほうの見え方も工夫したいなと思っているところです。
スマホなど、横方向が狭い端末だと、タイトルが改行されるわけです。
改行されるのはいいんですが、中途半端な位置で改行されて、例えば「しょくぱんまんといちごだいふくちゃん」が、

1行目:しょくぱんまんといちごだ
2行目:いふくちゃん

みたいになって、しょくぱんまんと苺について述べた後、謎の新キャラ「衣服ちゃん」が爆誕してしまったりします。
だからと言って、ちょうどいい位置にbrタグを置いて強制改行させると、PCとかの横長環境だと無駄に縦に長い見出しになってしまうわけです。

そういうわけで、縦長環境、横長環境両対応できるいい感じの自動改行を求めて調べものと実験をしていました。

自動改行の基本的な考え方を以下の記事を参考に。
Webブラウザの日本語改行問題 -改行を実現するHTML/CSS-(1) #JavaScript - Qiita

折り返しの細かいところは以下の記事を参考に。
文章の折り返し指定のCSS最新版 - ICS MEDIA

アンパンマンDB

アンパンマンDB(記事更新)

来週の放送情報。
昨年の映画前編のテレビ放送ですね。

アンパンマンDB(システム)

とりあえずアニメDBだけ現状の実装でサブタイトル機能リリース。
まだ見た目がんばれそうなので、もうちょっと調整してみます。

Qiitaとドラゴンクエスト10と日記とアンパンマンDB

Qiita

TGWSを構成する技術1:全体的な構成
投稿しました。
まだあんまりオリジナリティも役立つ技術情報も込められていないですが、今後各種の話をするときの前提になる想定です。
だからまあ、これからですね、これから。

ドラゴンクエスト10

大型アップデート情報 バージョン7.1 (2024/7/3)|目覚めし冒険者の広場
次回のアップデート情報来てますね。
クエストスキップ機能とか、言ってみれば「お前が金を出したこのゲーム、金さえ出せば遊ばなくていいぞ」って言ってるようなものなので、ゲームクリエイター側とすれば、できれば提供したくなかった機能でしょうね。
私としては、やっぱり自分でクエストクリアしたいけど、私みたいにサボって全然進めない人にこそ有用な機能でもあるんだよなァ…複雑。

日記


この日記には、その日やったことをスムーズに思い出せるように、最近の活動を表示する機能が管理人専用で存在するのですが、Qiita投稿情報もちゃんと出てくれました!
この機能の実装はもうずいぶん前なんですが、Qiita投稿は久しぶりだったんで、ここにちゃんと出るのか心配だったんですよね。
ちなみに、雑多やキャラ倉庫の更新情報も出ます。

アンパンマンDB(システム)

機能完成まで内緒にしておくつもりだったんですが、画面写真に写ってしまったので。
サブタイトル機能を追加します。
アニメとかの「サブタイトル」とは違う概念で、ここでは、ウェブページの見出しに付加する情報のことを言います。
例えば、「ばいきんまんとマジカちゃん」というタイトルは2つ存在しますが、この2つを区別できるように話数情報を加えて、「1041話Bパート『ばいきんまんとマジカちゃん』」みたいにします。
ここで、正式名称は「ばいきんまんとマジカちゃん」のままで、「1041話Bパート『」と「』」がタイトルの隣に、しかしタイトルとは少し違うものとして、表示されるようになります。
システムとして整合性を保ちつつ、一目で区別しやすくするのが目的です。

アンパンマンDB(システム)

アンカー機能を付けました。
「>>数字」の形式でリンクが作られます。
デザインのほうは、地味なデザインも試してみたのですが、結局微妙だったので、昨日の浮いてるデザインに戻しました。
ひとまず、アンカー機能自体はできたので、リリースしました。

アンパンマンDBとBomber丸World

アンパンマンDB(システム)


コメントの表示を調整中です。
コメント番号を表示する修正のついでにデザインもいじったのですが、アンパンマンDBではちょっと浮いたデザインですかね。
番号を表示した以上はアンカー機能も付けたいし、もうちょっと調整します。

Bomber丸World

開発は実質頓挫したようなものですが、作ったものは何かしらの形で残しておきたいので、整理することにしました。
開発室Wikiに書いた内容をダウンロードページの開発室とキャラ倉庫に転記して、開発室を過去の足跡を残したアーカイブに、キャラ倉庫は別の何かを作るときにキャラを拝借できればと考えています。

アンパンマンDB(システム)

先日からCSV出力関連の機能を作っていたわけですが、普通の人はCSV出力機能なんかあったって使わないわけじゃないですか。
一方で管理人の私は、できるだけ多くのページでCSV出力に対応させたいと考えていまして。
今のところ、個別DBの検索結果では、設定を変更すればCSV出力のリンクを表示できるようになっています。
この仕組みをうまく全体に適用できれば、必要な人だけCSV出力機能に便利にアクセスできるようになると思うんですよね。
このあたりのこと、今ちょっと考え中です。

アンパンマンDB(システム)

コメントのルールは、込み入ったものはハードコード、単純なものはデータベースに登録しているんですが、データベースに入れているほうのコメントルールの管理画面を作りました。
単純とはいっても、文面を動的に変えられないだけで、どういう場合に出すかとかは結構柔軟に指定できて、現在は最新映画のページに出ています。
管理画面向けのルールも同じように編集できるので、変なコメントへの対応がもうちょっとスピーディーになるかと思います。

アンパンマンDBとNeoMupl

アンパンマンDB(システム)

画像表示を刷新しました。
5月にやってたのがやっといい感じのところまでできてきたので。
画像形式をJPEGより小サイズなWebPにしたのと、画像IDをランダム文字列化しました。
実は古い画像は微妙に法則性が残っていたりしますが、そのへんはあまり気にしない方向で。
もしかしたら古いブラウザで表示できなくなるかもしれませんが、そんな古い環境知ったこっちゃないです。

NeoMupl

自分で使ってて気になったので、課題立てました。
再生停止後に、停止する直前の状態のまま残ったり、状態がリセットされたりして、統一感がなくて気持ち悪かったんですよね。

アキタラヤメル[ポジティブ不老不死さん]とアンパンマンDBとTgwsMark

アキタラヤメル[ポジティブ不老不死さん]

サーバーが変わってPerlCGIが動かなくなって長らく放置されていましたが、復活しました!
いえ、不老不死なんで死んでないんですが、コンテンツとして復活しました!
一応今のサーバーにも別バージョンのPerlが入ってるっぽいんですが、もうほとんど覚えていない言語で今更別バージョンに合わせた大規模改修をする気力もないので、PHPで全面的に書き直しました。

アンパンマンDB(システム)

ペアリストもCSV出力対応しました。
通常のリストの表記に加え、「=」で左辺と右辺を繋いでいます。

TgwsMark

README更新しました。
使い方やら文法やらを書いています。
完全に網羅ってわけじゃないんですが、主に使う部分についてはまあまあ書けた感じです。

<前 次>