2006年 03月 08日

認証付きコメント実装

この日記にもつけてみた。

結局大して書く人がいないだろうってことでログインごとにユーザー情報を保持している XML を更新し、それを XSLT から document() 使って読み込むようにした。

Ajax では URL が変わらない?

そうとは限らないし、ちゃんと変わったほうがいいことも多い。

Ajax なりなんなりを含めて、JavaScript でいいことって画面遷移がないことであって、URL が変わらないことじゃない。

UI の補助ではなく、コンテンツを書き換える場合はむしろ URI は変わったほうがいい。要はあとでそのリソースにリンクを貼りたいとき、困るか困らないかが分かれ目だと思ってる。

2006年 03月 07日

外部認証

外部認証をコメント投稿に導入したくていろいろやっているんだけど、なんともかんとも。

Flickr, TypeKey を用いてログインするところまでは作った。とりあえず、コメントを投稿するとき、アイコンやら、名前やらもそのまま記録するような方式のをやってみたのだけど、やっぱ認証サービス側で名前とかが変わったら、こっちの過去の名前とかも変えたいなぁ、と思った。

サービス名と、サービス内で特定できる ID だけをコメントの情報につけて、ログインするごとに他のデータを更新するような感じにしたい。でもめんどい。RDB でテーブル複数つくって関係付ければ簡単なんだけど、いかんせん全てのデータを XML に入れてしまっているのでめんどうくさい。かなり重くなるだろうし……

というところで、諦めて全部一気に保存して更新しないようにするか、ちゃんと更新するようにするかで悩む

2006年 03月 03日

コメントのポスト方法をちょっと変更

Ajax るようにした。UI がイマイチ。

  • Comments を押したらとりあえず消えて欲しい。
  • 投稿したあとガックンってなるのがちょっとキモイ。

なんかいい方法はないかなぁ。

Opera でおかしい。めんどいので Opera はじく。

なんだか、この今のスタイルがまずだめみたいで、Opera だと挙動不審になる。

クッキーに保存を実装しろといいたい。誰に。俺に。

Ajax のほうのフォームはクッキーに保存するようにした。Singleton Cookie オブジェクト

2006年 03月 02日

はてブと del.icio.us を同時に使うように

CGI 設置するのとかめんどいので xpost-del-hatena.user.js, GM スクリプトにした。

はてなの認証方法がややこしいので、はてなをメインにして、del.icio.us をスクリプトで同期するように。新規ブックマーク, 編集, 削除がそれぞれ del.icio.us にも反映される。ただ、編集の場合、del.icio.us で上にあがってしまう問題がある (はてなの編集画面にはポスト時刻が表示されないのでめんどい)。

最初なぜか API 使わないで実装してた。頭が悪い

ちょっと補足します。

Fx 1.5.0.1 + GreaseMonkey 0.6.4 ではとりあえず動いています。中身で無駄に E4X 使っているので、1.5 未満では絶対に動かないです。

ついでに動いてても何も言われません。淡々と del.icio.us に追加されたり削除されたりします。(最初の一回は del.icio.us の API Basic 認証がでます。これには del.icio.us のユーザ名とパスを入れます。)

del.icio.us 側の操作ははてブに反映されません。「はてなをメインにして」はそういう意味です。

はてダ の2カラムさえ

はてダ の2カラムさえなんか邪魔になってきたので ignore-hatena-2c.user.js 書いた。

GM ばっか書きまくり!!

GM の Edit ボタンが効かなかったんだけど、改めて about:config で設定しなおしたら使えるようになった。前より簡単につくれる><

2006年 02月 25日

FEEDBRINGER で未読がないフィードを非表示に

FEEDBRINGER で未読がないフィードを非表示にする GreaseMonkey スクリプト。feedbringer-hide-read.user.js。まぁ誰か作ってるだろうけど……

最近 Sage から FEEDBRINGER に移行したのだけれど、俺はフォルダ分けを全くしない横着ものなので、未読がないフィードが邪魔で未読フィードがどれぐらいあるのかぱっとみわからない。そんなわけで GM

消すだけじゃなくて、トグルできる (Toggle Read Feeds クリック) ので、導入しても弊害は少ないかなと思う。

Bloglinesの「Show only updated feeds」をチェックしてない人が多すぎる を見てからなんとなく考えてた。

FEEDBRINGER 用 User CSS

ユーザーCSSを適用した FEEDBRINGER

feedbringer.css。すごく、きたないです。

/feed にしか適用しません。かなりソースがアレで苦労した。ソースがアレな上に、JS で擬似フレームの大きさを変えているので、そのあたりがかなり汚い……素直にフレーム使ったほうがいい気がする。

いろいろ変更。フォルダの矢印とか。

  • フォルダを閉じた状態だと、フォルダの次のアイテムのアイコンが乱れる。
  • 擬似フレームのリサイズ不可 (#splitter がキモイので消してある。一時的に stylelish を切ることで対処すべし)
2006年 02月 24日

Google Adsense / XHTML

document.write を使ってるおかげで、application/xhtml+xml だと使えないあの広告コードをどうにかして導入する。

まー Keystone Websites: Making AdSense work with XHTML をまるパクって、/google-adsense.html を作って、あとは object 要素作っといた。

<xsl:template name="adsense">
<div class="google-adsense">
<xsl:choose>
<xsl:when test="$real-flavor = 'html'">
<script type="text/javascript"><xsl:comment><![CDATA[
google_ad_client = "pub-4629424540171624";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text";
google_ad_channel ="";
google_color_border = "000000";
google_color_bg = "F0F0F0";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
]]></xsl:comment></script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
</xsl:when>
<xsl:when test="$real-flavor = 'xhtml'">
<object
width="468"
height="60"
data="/google-adsense.html"
type="text/html"></object>
</xsl:when>
</xsl:choose>
</div>
</xsl:template>
2006年 02月 22日

検索おーばーれーいしようと

検索オーバーレイをクロスブラウザ化しようと思って作業してて、よし IE で確認してみるかって思ったら、そもそも IE だと検索フォームがでてないのに気付いた。そうそう、この CSS 書くときにどうしても IE はちゃんとした位置に出せなかったから消してたのよねー、あははー。ばかかと