TreeOrder v1.3.1 リリース

公開日:

ライセンス認証の「認証」ボタンが動作しない不具合を修正しました

システムメニューの「プラグイン設定」画面で、TreeOrder のライセンスキーを入力して「認証」ボタンを押しても何も起きない場合がある不具合を修正しました。

弊社の他のライセンス付きプラグイン(AITranslator など)を同じ Movable Type に導入している場合に発生します。TreeOrder のみをご利用の場合は影響ありません。

原因

Movable Type の「プラグイン設定」画面は、インストールされている全プラグインの設定テンプレートを 1 ページにまとめて出力します。そのため、複数のプラグインが同じ DOM id を使っていると、ページ内で id が重複します。

TreeOrder は license-key-input のようなプレフィックスのない id を使用していました。JavaScript の document.getElementById() は最初に見つかった 1 つしか返さないため、ページ内で TreeOrder より先に出力される他プラグインが同じ id を使っていると、TreeOrder のスクリプトが他プラグインの要素を掴んでしまい、「認証」ボタンを押しても TreeOrder 側の表示が更新されない状態になっていました。

変更内容

  • ライセンス認証まわりの DOM id・CSS クラス・@keyframes 名に to- プレフィックスを付与し、他プラグインとの衝突を回避しました。
    • 例: license-key-input → to-license-key-input、.license-spinner → .to-license-spinner
  • TreeOrder 管理画面のライセンス未認証の警告(license-warning)にも同様にプレフィックスを付与しました。

影響範囲

  • 保存済みのライセンス情報はそのまま引き継がれます。再認証は不要です。 フォームの name 属性(license_key / license_verified)は MT::PluginData によってプラグインごとにスコープが分かれており、もともと衝突しないため変更していません。
  • 機能・テンプレートタグ・データベースに変更はありません。テンプレートの修正も不要です。
  • 「認証」ボタンが押せずにお困りだった場合は、本バージョンへの更新後、あらためてライセンスキーを入力して認証してください。

更新方法

plugins/TreeOrder/ および mt-static/plugins/TreeOrder/ を上書きしてください。データベースの更新は不要です。