MODx Evolution 日本語版 1.0.2J用 インストール時の失敗対策パッチ配布
2009年11月22日 23時30分 shortlink:http://modx.jp/?id=147
MODx Evolution 日本語版 1.0.0Jまたは1.0.1Jから1.0.2Jにアップデートしようとすると失敗し、管理画面にログインできなくなるケースがあることが分かりました。これに対応するパッチファイル及び、パッチを含んだMODx Evolution 1.0.2Jをリリースします。なお、コアファイル及びインストーラ本体の変更はありません。すでにアップデートに失敗している人は、ファイル1つを上書きするだけですむ当パッチを適用し、インストールを再び試してみてください。
1.概要
http://forum.modx.jp/viewtopic.php?t=179
上記トピックで報告があったとおり、MODx Evolution 日本語版 1.0.0Jまたは1.0.1Jから、1.0.2Jにアップデートしようとすると失敗し、ログインできなくなるケースがあります。当パッチはこの不具合に対応するものです。すでにアップデートに失敗した状態からでも利用できます。
※このパッチはMODx Evolution 日本語版専用です。
2.パッチ適用方法
http://code.google.com/p/modx-ja/downloads/detail?name=patch_tinymcetpl3.2.7p1.zip
- tinymce3.2.7p1_install.zipを上記からダウンロードします。
- ファイルを展開 >> readme.txtと1つのフォルダ(/install/)が作成されます。
- このフォルダをmodxをインストールしている同名フォルダに上書きします。
※階層さえ合っていれば、installフォルダ最下層のtinymce.tplのみを上書きするだけでもかまいません。FTP操作に慣れている場合はそのほうが確実です。 - 通常手順でMODxのアップデートを始めます。すでに失敗している場合も同様です。
3.修正対象ソース
[modxインストール先]/install/assets/plugins/tinymce.tpl
4.解説
MODx Evolution 1.0.2から、アドオンのインストール・アップデートに必要な情報の記述をルール化できるようになりました。従来は生のSQLスクリプトを読み込ませて直接インストールしていましたが、Javadoc(PHPDocumenter)のコメント記述ルール(DocBlock形式)に従って該当ファイルにアドオン名・バージョン・サマリー・コード本体などの情報を記述することにより、インストーラが自動的にこれを検出し、インストールまたはアップデート対象として提示できるようになっています。
このインストールエンジンに不備があり、プラグインのconfigストリングにダブルクォート・シングルクォート・アスタリスクなどが混在する場合、稼働環境によっては正しくアップデートを完了できず、結果として、アップデート未遂状態となり管理画面にログインできなくなります。
今回はインストールエンジン側の改善は見送り、tinymceインストールファイル側の記述をエンジンに合わせて改めることとしました。
上記のように、バージョン表記を変更することで「バージョンが上がっている」ことを明示し、すでにインストールされているTinyMCEプラグインのコードとの比較をせずにアップデートされるようにしました。実際、構成が変わっているためアップデートされる必要があります。また、シングルクォート・ダブルクォートの違いに問題がある可能性があるため、念のためダブルクォートに統一しました。どのような文字でも使えるように改善する必要があり、これは次バージョンに持ち越します。
5.更新情報
2009/11/22 … リリース