2008年5月28日(水曜日)

XOOPS Cubeの公式サイトと、日本ユーザ向けの情報

カテゴリー: - gusagi @ 10時30分54秒

gusagiです。
今日は、XOOPS Cubeの公式サイトと、日本ユーザ向けの情報サイトについて書きます。

日本では、「公式サイト」と言うと、xoopscube.jpを想像する人が多いと思います。
実際は、xoopscube.jpは「公式サイト」ではなく、「日本コミュニティサイトの一つ」なのですが、
これは以外と知られていないようです。
また、本当の「公式サイト」は、xoopscube.sourceforge.netなのですが、これも殆ど知られていません。

この原因は、幾つかあると思うのですが、一つには、xoopscube.jpが昔は
「XOOPSの日本公式サイト」だったことにあります。
昔、xoopscube.jpは閉鎖予定になったこともあるのですが、現在は
数あるコミュニティサイトの一つという位置づけで存在しています。
また、Googleで「xoops」を検索した場合、2008/05/28時点で一番上に表示される日本語サイトが
xoopscube.jpであることも大きな要因です。

この誤解自体は、直接的にはそれほど大きな問題を起こさないように見えます。
しかし、XOOPSについて詳しくない人にとっては、これは大きな問題を引き起こしているのが現状です。
というのも、前述のように、「xoops」で検索をした場合、xoopscube.jpが一番上に表示されるため、
大抵の人はここを訪れます。
しかし、現在のxoopscube.jpは、XOOPS初心者にとって必要な情報が殆どありません。
日本のXOOPS初心者にとっては、XUGJひよこむ文系のためのXOOPS入門の方が
必要な情報を探しやすいはずです。

今の、XOOPS日本コミュニティにとっては、必要な情報サイトを結びつける導線が不足しています。
そこで、XOOPS Cubeのメイン開発者であるminahito氏は、公式サイトのリニューアルに着手を決めたようです。
公式サイトをリニューアルし、公式サイトで必要な情報を入手したり、各国のコミュニティへ導線を張り直すことで、
状況を改善しようと考えています。
他にも、一部の開発者を中心にして、http://xoopscube.sourceforge.net/ へのリンクを貼る動きが出てきています。
これは、のバナーとリンクを自分のサイトに貼るだけですので、
モジュールやテーマを開発出来なくても、協力可能です。
これらの動きは、すぐに効果が出るものではないかも知れません。
しかし、決して無駄にはならないでしょう。
もし、このリンク貼りに興味の有る方がいましたら、上のバナーをダウンロードの上で、自分のサイトでも貼ってみてください。
そして、XOOPS Cubeを盛り上げて行きましょう :mrgreen:


2008年5月20日(火曜日)

日本以外からのPOSTを弾くフィルタpreload

カテゴリー: - gusagi @ 23時52分51秒

gusagiです。
今日は、日本以外からのPOSTを弾くフィルタpreloadを書いてみようと思います。

トラックバックスパムやコメントスパムなどで困っている方は結構いると思います。
簡単な対応方法は、protectorモジュールを入れて対応することなのですが、
日本以外からPOSTされた場合は全て弾きたい、などという場合もあります。
その場合、PEARのNET_GeoIPを利用することで実現が可能になります。

Net_GeoIPでは、MaxMind社が配布しているGeoLite Countryのデータを利用します。
利用するデータは、こちらのファイルで、無料で利用可能です。
このファイルと、前述のPEARパッケージを、サーバの適当なディレクトリにアップロードして下さい。
 ※下記のコードでは、PEARパッケージを{XOOPS_TRUST_PATH}/PEAR、GeoLite Countryのデータを
 {XOOPS_TRUST_PATH}//PEAR/GeoIP/GeoIP.datとしています。
(続き…)


2008年5月12日(月曜日)

piCal用Googleカレンダープラグインの実験(3)

カテゴリー: - gusagi @ 10時10分40秒

大型連休の休みボケがようやく抜けてきたgusagiです。
かなり間が空いてしまいましたが、前回の記事の続きです。

前回のコードで、"example@example.com"というアカウントに共有されているカレンダーのリストを取得しましたので、リストの分だけ処理を繰り返して、カレンダーごとのイベントを取得します。
(続き…)


2008年4月22日(火曜日)

piCal用Googleカレンダープラグインの実験(2)

カテゴリー: - gusagi @ 23時52分08秒

大型連休を目の前に、何をしようか悩み中のgusagiです :-D
今日は、前回の記事の続きです。

前回は、piCalのカレンダー形式に合わせて、何日から何日までのイベントを取得するか、というところまでのサンプルコードを書かせて頂きました。
次にやることは、どのカレンダーのイベントを取得するか、です。
これは、Zend_Gdata_CalendarクラスのgetCalendarListFeedメソッドを利用するのが簡単です。

前回も書いたように、あるアカウントに共有されているカレンダーのイベントを取得したいので、まずはそのアカウントで認証を行うことが必要です。
(続き…)


2008年4月15日(火曜日)

piCal用Googleカレンダープラグインの実験

カテゴリー: - gusagi @ 18時17分04秒

最近、構成管理の重要性を改めて痛感しているgusagiです。
先日、piCalにGoogleカレンダーの予定を表示させる必要があったので、
piCal用プラグインを作ってみました。
まだ公開出来るレベルではないため、今日のところは触りだけ書かせて頂きます。

【要件】

  • Googleカレンダーのデータを取得出来ること
  • 複数人のデータを取得し、piCalに出力出来ること
  • 取得対象は、あるアカウントに共有されているカレンダー
  • データの登録や更新は不要

(続き…)


2008年4月8日(火曜日)

知らなかったTortoiseSVNの便利な機能

カテゴリー: - gusagi @ 14時27分19秒

暖かくなったかと思えば、昨日からの雨で気温が下がったりといった気候で、体調管理に不安を覚えているgusagiです。

ファイルのリリース作業を行う際に、ある時点から現在までに変更したファイルを取得したい、なんてことがあったりします。
今までは、"svn log"でログを確認しては、変更のあったファイルを個別に"svn export"していたんですが、これだとミスが発生する可能性が高いため、調べてみました。
そこで、初めて知ったのですが、実はTortoiseSVNにはリビジョン間の差分だけ取得するという、まさに欲しい機能が存在していました :oops:

詳細は、こちらを参照して頂けば判ると思うのですが、SVNのログを表示して、差分を取得したいリビジョン2つを選択した状態で右クリックすると、右クリックメニューの中に、リビジョン比較が存在するので、それを実行します。
リビジョン比較では、差分ファイルの一覧が表示されますので、後はそのファイルを選択してエクスポートすれば、差分ファイルだけの取得が完了です。
今まで、チマチマと時間を掛けてやっていた作業が、1分も掛からないで完了してしまいました :shock:

TortoiseSVNは、結構長い間使っているのですが、こんな便利な機能があることに本日初めて気付きました。
TortoiseSVN以外にも、実は知らないだけで便利な機能がありそうですし、普段使っているアプリケーションについて、改めて使い倒してみるというのも面白いかも知れませんね。


2008年4月1日(火曜日)

iモードIDについて調べてみました

カテゴリー: - gusagi @ 23時54分01秒

4/1で新卒っぽいスーツ姿を沢山見かけ、何となく懐かしさを覚えたgusagiです。
RYUSでも、haltさんやsatoさんという新しいメンバーが増え、ブログに技術ネタを相次いで投稿してくれましたし、私もちょっと書いてみようと思います。

3/31にiモードIDの仕様が公開されたので、少し調べてみました。
あちこちで書かれているように、SSL通信時に取得できないとか、guidって変数名を使ってるシステムはどうするんだとか、色々と問題があるのは知っていたのですが、個人的に一番「なんじゃこりゃ」と思ったのは、こちらにあるformでの送出パターン。
携帯対応とかやる際は、さらに注意すべき点(というか、バッドノウハウ)が増えた気がするのは私だけでしょうか・・・ :neutral:


2008年3月25日(火曜日)

XCL2.1.4がリリースされました

カテゴリー: - gusagi @ 18時18分18秒

今週末はプライベートで色々と忙しく、XOOPS関連の情報を追いきれなかったgusagiです。
ということで(?)、今更ながらXCL2.1.4リリースについて書かせて頂きます。

2.1.4の正式版では、2.1.4RCに取り込まれたパッチの一つが未取り込みの状態に戻っています。
このパッチは、存在しなくても動作に支障がないものだったため、RCのリリース後に元に戻すこととなりました。
なお、RCから正式版へのアップデートの際に、該当のファイルが存在しても問題にはなりません。

詳細は、XUGJのニュースをご参照下さい。

なお、この2.1.4で私が開発したWizMobileも単独リリースが可能となりました。
細かい部分の調整を行った上で、リリースするつもりです :-D


2008年3月20日(木曜日)

“unsigned” にハマりました・・・

カテゴリー: - gusagi @ 09時32分11秒

最近、花粉症でティッシュが手放せないgusagiです。
今日は、つい先日にモジュールを作成している際にハマったことについて書きます。

XOOPSモジューでは、ユーザのIDをDBに保存するケースが結構あります。
フォーラムの書き込みだったら、誰が書き込んだか判るように保存する、という具合にです。
今回、{prefix}_usersテーブルの定義に合わせて、mediumint型で作成で作成したんですが、
発行しているSQLと別の値がDBに保存されていました。
デバッグ用にログを吐かせてみましたが、SQLでは確かにIDとして"10000001″という値を
セットしています。
ところが、DBに保存されている値は"8388607″。
あれこれプログラムを弄ってみたんですが、状況は変わらず。。。
「こりゃ、DB定義を変えてテストしてみるしかないか」なんて思いながら、テーブル作成用のSQLを
見たところ、対象のカラムの定義に"unsigned"が含まれていないことに気づきました・・・。
念のため、{prefix}_usersテーブルを確認してみると、そちらには"unsigned"と書かれています。
もしやと思いながら、テーブル定義を変更してみたところ、不具合は無事に解消されました。
今まで、カラムの最大値を超えた値をセットしたSQLはエラーとなると思いこんでいたため、
エラーではなく、定義の最大値がDB保存されるという動作は想定外でした。

通常のXOOPSの運用の場合、1からauto_incrementで値がセットされていくので、IDが"8388607″を
超えることは無いと思いますが、ちょっとしたハマりどころになりそうなところです。
今後モジュールを作る際には、"unsigned"も忘れないようにしようと思います :razz:


2008年3月13日(木曜日)

HD同梱の携帯対応(その2)

カテゴリー: - gusagi @ 13時14分45秒

gusagiです。
先週に引き続き、HD同梱の携帯対応モジュールについて書かせて頂きます。

(4) テーマ下テンプレートによる最適化が可能
携帯対応モジュールでは、出力の最適化処理は殆ど実装していません。
将来的にも、テーブル部分の表示組み替えなどは、未実装のつもりです。
では、携帯用に出力を最適化するにはどうすればよいか。
その答えが、テーマ下テンプレートの活用です。
これは、携帯対応モジュールではなく、HD側の機能ですが、テーマ毎のディレクトリの
中に、templatesディレクトリを作り、最適化したいテンプレートを配置します。
例えば、user_block_login.htmlを最適化したい場合は、
自分で最適化したテンプレートを

{XOOPS_ROOT_PATH}/themes/mobile/templates/user_block_login.html
として配置することで、最適化したテンプレートが出力されるようになります。
※パスから「templates/」が抜けていたので、修正しました(2008.03.14 09:45)

(5) お手軽高速化
XOOPSでは、「○○を更新しました」などのメッセージ表示 -> リダイレクトという処理が
一般的です。
この処理は、PCの場合はそれほど大きな問題ではありませんが、携帯の場合
 ・metaタグのrefreshが動作しない端末がある
 ・リダイレクト画面の表示分、パケット代金が掛かる
などの問題が発生します。
そこで、携帯対応モジュールでは、お手軽高速化を標準で装備しています。
これは、XCL本体のコードには手を付けずに実装していますので、XCL本体の
アップデートにより処理が変わるという心配もありません。

以上、先週と今週で携帯対応モジュールの大まかな特徴を書かせて頂きました。
XCL本体も、2.1.4RCのリリース告知が出ましたし、モジュール単体での配布は
それほど遠くないと思います。
HDをお使いでない方も、興味がありましたらご利用下さい :-D


2008年3月5日(水曜日)

HD同梱の携帯対応(その1)

カテゴリー: - gusagi @ 17時19分49秒

gusagiです。
先週の段階では、HD(ホダ塾ディストリビューション)のリリースについて書こうと思っていたんですが、
二日連続で先に書かれてしまったので(笑)、HD同梱の携帯対応モジュールについて書かせて頂きます。
(続き…)


2008年2月27日(水曜日)

行動の前に考えてみることも重要

カテゴリー: - gusagi @ 17時56分19秒

gusagiです。
先日の天野の記事にも書いていましたが、質問事項はメールで送り、回答もメールでもらうということをやっているんですが、これが思った以上に効果を上げていて、驚いています。

今まではスタッフが数人ということもあり、何かあったら即座に質問を投げるということをやっていたのですが、これだと
 ・質問する側は、考えを整理出来ていないこともあるため、要件を上手く伝えられない
 ・質問される側は、取り組み途中の作業が中断されるために、パフォーマンスが上がらない
という、両者にとって得にならない状態がしばしば発生していました。

これが、メールで質問を投げるようにすることで、
 ・質問する側は、メールの文面にする段階で考えを整理出来るので、要件を伝え易い
 ・質問される側は、自分のペースで質問内容をチェック出来るため、作業が中断されない
という、両者にとって特になる状態が発生するようになりました。

この、質問する前に考えを整理するということは、システム開発にも通じるものがあります。
考えを整理する前に手を動かすと、ガリガリとプログラムを書いたけど、お客さんが求めるものと違っていたり、設計が甘かったりで作り直し、なんてこともあり得ます。
逆に、お客さんへの確認や、自問自答による検討を行ってからの場合、一度決まってからは突っ走るだけで済むことも多く、結果として作業時間が短縮されたりも。

もちろん、緊急の場合などもあるので、全てが全てに当てはまるという訳ではありませんが、緊急度が高くないなら、行動の前に少し考えてみることが重要だと最近は痛感しています。
どちらかと言えば、私は暴走するタイプなので、行動の前に考えることを常に意識していこうと思います。


2008年2月20日(水曜日)

OSC2008 Tokyo/Springのご案内

カテゴリー: - gusagi @ 17時50分56秒

今月末に行われるオープンソースカンファレンス(以下OSC)の準備に追われているgusagiです。
今日は、このOSCのホダ塾出展に関するご案内をさせて頂きます。

私も所属するホダ塾では、金・土曜日のブース出展と、土曜午前中のセミナーを行います。
内容は、ホダ塾ディストリビューションの紹介などで、セミナーではGIJOEさんによる利用メリットや活用法の紹介を予定しています。
このディストリビューションでは、XCL2.1では行われなくなった複数のモジュールパッケージングや、XOOPS_TRUSTPATH導入の簡易化など、複数のメリットが存在しています。
詳細は、OSCのブースやセッションでご紹介させて頂きますので、もし興味のある方は、一度いらしてみて下さい。
なお、OSCのセミナーに参加される場合は、事前登録が必要になります。
現時点では空きがあるようですが、ギリギリの場合満席となっているかも知れません。ご注意下さい。

OSCはディストリビューション正式リリースの直前に開催されるので、デバッグ真っ最中のホダ塾メンバーを見ることが出来るかも知れません 8)


2008年2月13日(水曜日)

デブサミ2008 一日目終了

カテゴリー: - gusagi @ 23時32分10秒

gusagiです。
今日は、2/13&2/14に開催されているデブサミ2008に参加してきました。
弊社の天野と朝からブースでデモムービーを流しながら、パンフレット配布などを行ってきました。
会場後まもなく、Tom_G3X氏とも会場で合流し、XOOPS Cubeの話などもしつつ、気がつくと18時を回っていました。
明日は、弊社からは天野と兎本がブースを担当します。
興味がある方は、是非会場までおいで下さい。


2008年2月6日(水曜日)

PHP4のサポートは終わったけど

カテゴリー: - gusagi @ 23時32分25秒

gusagiです。
今日は、XOOPSでも利用されているPHPについて書きます。

ご存じの方も多いと思いますが、1月頭にリリースされたバージョン4.4.8で、PHP4のサポートが終了となります。
以後は、セキュリティFIXなどに関しては8月まで継続されるものの、それ以降は完全に終了となります。
「なら、PHP5に移れば良いじゃん」となりそうですが、ケースによっては簡単に移行出来ない場合もあるかも知れません。
企業などで運用中のサービスは特にそうでしょう。

原因の一つは、単純にPHP4と5の違いによるものです。
PHP5では、変数スコープの管理などが明確になっています。また、スーパーグローバル変数についても一部変更が入っていたりします。
基本的にはPHP4用のプログラムも動作するはずなのですが、確実に動くという保証がないため、しっかりと検証しておく必要があります。

もう一つは、PHP5.3のリリースが準備されていることによります。
5.2.Xから5.3.Xへのバージョンアップでは、結構影響の大きい機能追加がされるそうなので、今すぐに5.2系にあげるよりも、5.3のリリースを待ってから、システムの改修を含めた移行を行ったほうが効率が良いかも知れません。

PHP5.3がリリースされたら、あれこれと弄ってみるつもりなので、面白そうな機能があったらまた書かせて頂くかも知れません。


2008年1月30日(水曜日)

2月はXOOPS Cube関連コミュが参加するイベントが2つも!

カテゴリー: - gusagi @ 17時47分13秒

gusagiです。
今日は、XOOPS Cube関連のコミュニティが参加するイベントについて書きます。
タイトルにもあるように、2月はXOOPS Cube関連のコミュニティが参加しているイベントは2つあります。

一つ目は、株式会社翔泳社さんが主催のDevelopers Summit 2008
こちらは、XOOPS Cubeなどのオープンソースコミュニティだけでなく、有名な企業も複数参加されるイベントです。
技術だけでなく、要件を満たす製品を探すためにも役立つかも知れません。
「実業務でこんなのを探しているんだけど・・・」という方は、時間があれば足を運んでみるのも良いのではないでしょうか?
こちらには、弊社の天野も「XOOPS Cube デブサミ委員会」のブースにいると思います。

二つ目は、株式会社びぎねっとさんが企画運営のオープンソースカンファレンス2008 Tokyo/Spring
こちらも、コミュニティ・企業ともに多数参加されていますが、こちらのイベントは各種ユーザ会のメンバーが参加されていることが特徴です。
ひょっとしたら、「実際にこんなことをやってみたんですよ」なんて話も聞けるかも知れません。
こちらのイベントは、現在は出展者募集の段階なので、参加者の登録はもう少し先になると思いますが、今の内からチェックしておくことをおすすめします。
人気のセッションは、あっという間に満席になってしまいますので・・・。
こちらのイベントには、私も「ホダ塾XOOPS Cubeディストリビューション」のメンバーとして参加するつもりでいます。
内容については、後日ご連絡させて頂くと思いますので、もう少々お待ち下さい。

こんな感じで、XOOPS Cube関連のイベントを紹介させて頂きました。
XOOPS Cubeに興味のある方は、ご参加してみてはいかがでしょうか?


2008年1月23日(水曜日)

WebDAV+SVNの設定で苦戦

カテゴリー: - gusagi @ 18時47分10秒

gusagiです。
今日は、WebDAV+SVNの設定に苦戦した一日だったので、はまった部分と設定方法について書きたいと思います。

RYUSでは、スタッフが増えてきたこともあり、作業の効率化のために色々と取り組んでいたりします。
ソースの管理についても、LAN内部でSVNを使うか、インターネット経由でもSVNを利用可能にするか検討中なのですが、実際に使ってみようということで、svn+sshでのアクセスや、WebDAV+SVNでのアクセスなど試してみました。
元々、svn+sshでの設定方法は判っていたのであっさりと実験出来たのですが、この場合サーバアカウントが必要になるなど、SVN利用者が増えるに従って管理が複雑になってきます。
逆に、WebDAV+SVNの場合は、アカウント管理はかなり単純になります。
ただし、暗号化やアクセス制御などは必要なので、こちらの設定が多少複雑化も知れません。

例として、http://example.com/repos でSVNにアクセス出来るようにしようと思います。
ドキュメントルートは /var/www/html、リポジトリは /home/project/svn とします。
WebDAV+SVNを利用する場合、mod_dav_svnやmod_authz_svnが必要なので、これらのモジュールを事前にインストールしておきます。
次に、apacheの設定ファイルで

<Location "/repos">
    DAV svn
    SVNPath /home/project/svn
    AuthzSVNAccessFile /var/www/html/svn/.authz
    AuthType Basic
    AuthName "Authentication"
    AuthUserFile /var/www/html/svn/.htpasswd
    Require valid-user
</Location>

と記述します。
上記の設定をした場合、/var/www/html/svn/.htpasswdに記述されたユーザのみ、/var/www/html/svn/.authzに記述された権限に従って、リポジトリにアクセスが可能になります。
なお、上記2ファイルはドキュメントルートの外に置いた方が安全です。

ここまで設定したら、apacheを再起動して、設定を有効にしてからブラウザでアクセスが出来るか確認します。
私も、ここまでは問題なく出来たのですが、この先ではまりました。
(続き…)


2008年1月18日(金曜日)

シングルサインオンについて考えてみる

カテゴリー: - gusagi @ 17時50分02秒

gusagiです。
しばらく前から、XOOPS Cube関連のコミュニティでもLDAP認証や、TypeKey認証などのサインオン系機能について、ちょくちょくと書き込みが出ている気がします。
シングルサインオン自体には興味があったので、ちょっと調べてみたところこういう記事を拝見しました。
HTTPまたはSOAPを基本としていて、OpenIDやLDAPにも対応しているとのことなので、時間を作って弄ってみようかと思います。
XOOPS Cubeにも応用できるかどうか、それ以前に自分に使いこなせるのか不安ではありますが、やってみないことには何も始まらないので、まずは試してみようと思います。
この結果は、後日の記事にも書くつもりですので、気長にお待ち頂けますと幸いです^^;


2008年1月16日(水曜日)

サーバの知識もあると便利

カテゴリー: - gusagi @ 18時02分59秒

gusagiです。
明けましておめでとうございます。本年もよろしくお願いいたします。

ウェブサイトを長く運営していると、アップロードしたファイルなどにより特定のディレクトリの容量が大きくなりすぎることがあると思います。
そのディレクトリに対してブラウザからアクセスさせていなければ問題ないのですが、画像やPDFファイルなどの場合、そのまま移動させるのが難しい場合が出てきます。

たとえば、/home/www/example.com/htdocs/photo というディレクトリに画像をアップロードしていたところ、/homeを含むパーテーションの使用率が100%になってしまいました。
使用量のほとんどは、上記のディレクトリにアップロードした画像が占めています。
/home/www/example.com/htdocs/photo/xxx.png へは、現在のところhttp://example.com/photo/xxx.png でアクセス出来ています。
画像のアップロードは今後も行う予定なので、example.com配下を別のディレクトリに移動に移動したいのですが、プログラム側の修正が発生するため、example.com配下の全てを移動させる訳には行きません。
こんな場合、一番工数を少なくして解決する方法は、apacheの設定ファイルで解決することだと思います。

(続き…)


2007年12月26日(水曜日)

XCL2.1.3RCがリリースされました

カテゴリー: - gusagi @ 18時45分04秒

gusagiです。
今日は、時事ネタというにはやや古いですが、XOOPS Cube2.1.3RCがリリースされていたので、それに関連したことを書いてみようと思います。

リリースニュースによれば、2.1.3RCは数多くのバグフィックスと、複数の改善要求に対応した機能が実装されているようです。
現在、RC版のテストとバグ報告が期待されており、それらを元にした安定版は来年1月の1週目にリリース予定となっています。
ファイルは、ここからダウンロードが出来ます。
バグを発見した場合は、こちらのトラッカーから報告出来ます。
また、トラッカーが推奨されてはいますが、英語が苦手などでトラッカーでの報告が出来ない場合は、XUGJのこちらのスレッドで報告するというのもありです :mrgreen:
興味のある方は、是非おためし下さい!


8 queries. 0.048 sec.
Powered by WordPress Module based on WordPress ME & WordPress

〒104-0061 東京都中央区銀座1丁目3番3号 G1ビル7階
お問い合わせ TEL 03-3524-8860

Copyright(c) 2012 RYUS.All Rights Reserved.