JavaScript > netvibesのようなRSSリーダーを実現するDragable RSS boxes

2006年03月20日

DHTML(Dynamic HTML)スクリプトが登録されてるライブラリサイト。 dhtmlgoodies.com

なかなか便利そう。

その中のDragable RSS boxesを見てみる。 netvibesの機能をRSSリーダー限定にした感じ。
デザインはもろにnetvibes。

netvibesの中の人が投稿したのかなって思っていろいろ調べたが、分からなかった。

概要

  • netvibes風RSSリーダー。
  • ボックスの中にRSSを表示。
  • ボックスはドラッグ&ドロップで自由に場所を動かせる。
  • ボックスの追加と削除が自由に出来る。
  • ボックスの設定ができる。設定できるのは、RSSの記事の表示数、ボックスの高さ、リロードの間隔。

ライセンス

外部ライブラリ
Dragable RSS boxesで使用しているSACK(ajax.js)は「X11ライセンスを修正したもの」が適用される。 作者の表示と作者のサイトのURLを明記する必要がある。
RSSのパーサーとして使われてるlastRSS.phpは「GNU/GPL」を適用。
dhtmlgoodies.comのスクリプト
著作権のメッセージが完全に表記される限りこのスクリプトを自由に使える。
営利目的・非営利目的は問わない。
スクリプトがアプリケーションの主要部にならない限り、アプリケーションに自由に組み込む事ができる。
ただし、dhtmlgoodies.comの許可なしに再配布・販売・再投稿、アプリケーションの主要部にする事は出来ない。
※注意
Dragable RSS boxesはライブラリというより、一つの完成されたアプリケーションである為、 ほとんどそのまま使う事になる。
これは使用条件の「アプリケーションの主要部にならない限り自由に使える」に接触すると思われる。
この問題についてdhtmlgoodies.com内のフォーラム、英語圏のWEBサイトで言及されてないか調べたが、有益な情報は見つからなかった。
そこでWEB上の翻訳サービスに力を借りながら、フォーラムで質問してみた。結果は追って書くことにする
追記
フォーラムでつたない英語を使い質問した答えが返ってきた。
再配布や販売しない限り問題ないとの事
初めて英語の掲示板でやりとりして、思う事がいろいろあった。これに関しては別エントリで書こうと思う。

パッケージの中身

Javascript
ドラッグやAjaxを処理するJavaScriptファイル
CSS
img
htmlで使用する画像ファイル
PHPスクリプト
RSSを取得するためのプロキシ

prototype.jsやscript.aculo.usは使用せず、 AjaxはSACKを利用、 ドラッグに関しては自前で作ったみたい。 また、RSSのパーサーはlastRSSを使ってる。

設定

使用する際にはユーザー定義の変数を設定する所があるので、 これを各自の環境に置き換える。
createDefaultBoxes()はクッキーにユーザーデータが存在しない場合に 呼ばれるので、関数の中身をデフォルトで表示したいURLに書き換える。

処理の流れ

ざっとソースを覗いて見た。

デフォルトではユーザーデータの保持にはクッキーを使用。
クッキー名はボックスのID
値には取得したいRSSのURLとボックスの位置や表示に関する設定が保存されてる。
クッキーの使用についてはユーザの設定で変えることが出来る。

スクリプトをファイルが読み込まれると 実行関数であるinitDragableBoxesScript()が実行される。 initDragableBoxesScript()は以下の順番で各関数を実行する。

createColumns()
ドラッグ可能な列を生成
createHelpObjects()
ヘルプコンテンツを表示するオブジェクトを生成
CSSのdisplayプロパティを"none"にしてるので表示はされない。
initEvents()
ボックスをドラッグできるようする。
createRSSBoxesFromCookie()
useCookiesToRememberRSSSourcesがtrueなら実行
クッキーから全てのユーザーデータを取り出し、個々のRSSを取得表示する
createDefaultBoxes()
クッキーにユーザーデータが存在しない場合にデフォルトのボックスを表示。

createRSSBoxesFromCookie()でボックスを表示する。
クッキーから全てのユーザデータを取り出し、 createARSSBox()の引数にクッキーの値を指定してボックスを表示。

使用方法

公式のドキュメントにはほとんど使い方は書いてなかった。 とりあえずcreateARSSBox()を使えばボックスを追加できるみたい。 細かい使い方はソース見ろって感じのようだ。

追記:使用方法について

ソースをちゃんと見てみると、Dragable RSS boxesはライブラリでは無く一つのアプリケーションに値する。
スクリプトを使用する側はCSSをいじって見栄えを変えるのに、ソースとにらめっこする必要があるので苦労しそうだ。

また、現状の設計では容易に拡張できるように作られてないので、このスクリプトをベースに改良を加えてアプリケーションを作ろうとしても苦労すると思う。

ということで、Dragable RSS boxesを使用する際は、ほとんどそのまま使う事になると考えた方がいい。

posted by 37to at : 13:36 | コメント (0) | トラックバック (0)

コメント

この記事に対するコメントはまだありません。


投稿する

投稿者情報を保存しますか?


トラックバック

トラックバックURI


一覧

この記事に対するトラックバックはまだありません。