その後の2.2

ご無沙汰しております。
仕事は多忙で時間的余裕は少なめですが、精神的な余裕は先月の半ばから多少出てきたので、XCL2.2の開発をちょびちょび再開しました。
今のところ、以下でご紹介する機能はSVNにもあげていません。リンク先のフォーラムに添付ファイルとして上がっているだけで、様子を見ているのですが、認知度も低いフォーラムなせいか、例によって反応なしな状態です(^ ^;。

profile モジュールはとりあえず形になりましたので、今度は javascript を取り扱う機能を作っています。この機能は、直接はサイト管理者や利用者には関係しませんが(管理者は多少楽になるかも)、これによって、javascript を活かしたモジュールが続々登場するようになります。なるといいですね。

現在、XCL では、jQuery をデフォルトのjavascriptライブラリとして採用する方向になっています。
デフォルトでは Google Ajax Library API を使って jQuery, jQuery UI のライブラリを読み込みます。このため、サイト管理者はjQuery ファイルのダウンロードや更新などをする必要がありません。Google 万歳です。

なお、settings/site_custom.ini.php に記述することで、読み込む jQuery のバージョンを指定(デフォルトは最新)したり、ローカルの jQuery ファイルを読み込むこともできます。

一方、モジュール作者は、デリゲートを使って$xoops_module_header に書き出したい jQueryプラグインファイルやCSSファイル、DOM 読み込み後に実行したいスクリプト($(document).ready(function(){}) で実行するやつ)を登録することが可能です。
ただ、デリゲートだと全モジュールのスクリプトが書き出されてしまうので、集め方を変えるかもしれません。「この方法が良いんでわっ」という方がいらっしゃいましたら教えてください m(__)m。


もう一つ、先週追加したのが、dhtmltextareaのBBコードエディタの置き換えができるようなデリゲートです。
これが組み込まれると、モジュールインストールによってBBコードエディタを差し替えることができるようになります。まあ今までもテンプレートを修正すれば可能だったのですが、javascriptのライブラリを読み込ませたり、CSSや画像ファイルを設置したりで意外に面倒(どっちかというと、説明するのが)だったので、これで簡単に換装できるようになるかと思います。
個人的には今のデフォルトのエディタは、大いに不満でしたので。