digital matter

2006 年 10 月 のアーカイブ

JS用IDE Aptana

すげー!感動した。

でもこういうのを見るたびに、WEB界隈の開発環境がWin32開発環境に比べて遅れているのを感じますね…

で、qooxdooはこれで対応できるんですかね。

関連する投稿

…Feedのdescriptionも置換されるょ…

('A`)<えー
ATOMのsummaryとRSSのdescriptionまでもが%author%を置換してしまう件…
Feed周りヤバいなぁ…

今日はこれ以上時間割けないので対応は次回。

それともまさか意図した動作なんでしょうか。

関連する投稿

PivotのATOM FeedにnicknameじゃなくてログインIDの方が表示されてしまう件。

とりあえず%author%を追いかけてみる。

pivot/modules/module_parser.phpで置換をかけてるらしい。
…共通の置換エンジンがあるわけではないのか…

1849: "%author%",
(中略)
1869: $user,
(中略)
1882: $atom_item= str_replace($from, $to, $atom_item);

一応、対応タグは以下の通り。テンプレート内で、——で区切られた2番目の部分(item)に関してのみ。

$from = array(
  "%title%",
  "%subtitle%",
  "%link%",
  "%description%",
  "%summary%",
  "%author%",
  "%guid%",
  "%date%",
  "%date_rfc%",
  "%category%",
  "%content%",
  "%tag%",
  "%lang%",
  "%vialink%",
  "%viatitle%"
);

で、辿っていくと$userは下記コードで定義されてる。

824: $entry = $db->read_entry($list_entry['code'], TRUE);
(中略)
846: add_rss($entry['code'], $entry['date'], $entry['title'], $entry['introduction'], $entry['body'], $entry['user'], $entry['category'] );

$entryの中見たらこんな感じ。

array(22) {
  ["code"]=>
  ["date"]=>
  ["introduction"]=>
  ["body"]=>
  ["category"]=>
    [0]=>
    [1]=>
  ["publish_date"]=>
  ["edit_date"]=>
  ["title"]=>
  ["subtitle"]=>
  ["user"]=>
  ["convert_lb"]=>
  ["status"]=>
  ["allow_comments"]=>
  ["keywords"]=>
  ["vialink"]=>
  ["viatitle"]=>
  ["commnames"]=>
  ["commcount"]=>
  ["commcount_str"]=>
  ["tracknames"]=>
  ["trackcount"]=>
  ["trackcount_str"]=>
}

…ニックネームないね。

$fromの定義の前に

1843: if (isset($Users[$user]['nick']) && $Users[$user]['nick'] != '') {
1844:     $user = $Users[$user]['nick'];
1845: }

こんなコード追加して解決。
あとglobalに$Users追加。

1778: global $db, $rss_items, $atom_items, $items_added, $Cfg, $Weblogs, $Current_weblog, $Allow_RSS, $Paths, $Users;

%author-nick%みたいなのを追加するというのでもいいかな。

関連する投稿

prototype.js 1.4でのAjax同期取得

あれ?同期モードで取ろうと思ってasynchronousをfalseにしたらonCompleteが呼ばれなくなった…

var myAjax = new Ajax.Request(
    url,
    {
        method: 'post',
        parameters: pars,
        asynchronous: false,
        onComplete: showResponse
    });

要調査。

追記:解決編 Ajax/prototype.jsで同期通信

関連する投稿

qooxdooのデザインコーディング

どうにかqooxdooのデザインコーディングを楽にできないかと考えているのですが、XHTML+XSLTでいい感じに書いたHTMLをまるっと変換できたらスゴくね?とか思いついた。

…タブとかどーすんだ。

VisualStudioでレイアウト組んだものを変換できたりすると嬉しいなぁー…誰かー…

関連する投稿

デザインの変更

とりあえずこのblogのデザインをデフォルトのものから変更した。

あとはちょこちょこ気になる部分を修正していく方向で。 

しかし毎回、何かにインスパイア受けすぎ。

マウスオーバーでモードとか表示されるようにしたらどうだろう。

関連する投稿

qooxdooとprototype.jsでコンフリクト?

svnに上がってる最新のqooxdooではprototype.jsとコンフリクトするらしい…

とりあえず試してみないことには何とも言えませんが。

今回は0.6.1で作るからまぁいいか。

将来的にはmochikitへの移行も考えないといけないか…

関連する投稿

Pivotの個別エントリが飛ばない件

ん?Pivotの.htaccessがおかしいような気が。
個別エントリが404になる。

RewriteRule ^entry/([0-9]*)/.*$

↓修正

RewriteRule ^entry/([0-9]*).*$

おk。

関連する投稿

qooxdoo 0.6.1 XmlHttpTransport

サーバからXML取ってきてパースする必要があったのだけど、qx.io.remote.XmlHttpTransportがどうにも動かなかったので、prototype.jsと組み合わせることにした。

<script type="text/javascript" src="../../js/prototype.js" mce_src="../../js/prototype.js"></script>
<script type="text/javascript" src="../../script/qx.js" mce_src="../../script/qx.js"></script>

とりあえず不具合は起きていない模様。

TransportのTestコードから。

req = new qx.io.remote.RemoteRequest(val.getLabel(), "GET", "text/plain");
req.addEventListener("completed", function(e)
{
 inf.setValue("Completed");
 area.setValue(e.getData().getContent());
});

↓この部分をprototype.jsで置き換え。

var myAjax = new Ajax.Request(
 val.getLabel(),
 {
  method: 'get',
  onComplete: function(e)
  {
   inf.setValue("Completed");
   area.setValue(e.responseText);
  }
});

おー、動いたー。

関連する投稿

qooxdoo 0.6.1 Transport

qooxdoo » Demo » Test » Transport 1を実行すると、IE6でJSのエラーが出る件。

2の方はエラーでないので、Diff取って見ると、

145: req.setCrossDomain(true);

が、2ではコメントアウトされていたので、1でも外して見る。

OK、問題なし。

関連する投稿