fastladder/fastladder — pull request #150 by eagletmt (2013-03-26 02:30:24+00:00)
Title: Purify pins link

リンクに `&` を含むようなアイテムに関するピンの操作がおかしかったので修正しました。

`/api/all` が html escape されたリンクを返す一方、 `/api/pins/all` はそうでなかったので、 `/api/pins/all` でも html escape されたリンクを返すようにしました。ついでに `/api/pins/all` が `member_id` 等の余計な要素も含むような JSON を返していたのも修正されています。

また、JS 側でも `toggle_pin()` するときに a[href] の値をそのまま `Pin#has()` に渡しており不整合が起きるので、ここでも html escape するようにしました。
具体的には、

1. リンクに `&` を含むようなアイテムにピンを立てる
2. 別のフィードに一旦移動する
3. 再び 1. のフィードに戻るとピンが立てられていないように判定される

という手順で問題が確認できると思います。