[twitter]tweet calendar
カレンダーにtweetをプロットするだけ。
jsでflashっぽくできるか第2弾。
今回モデルにしたのは「なにかにキクぜ。グラソー ビタミンウォーター」です。
第1弾はこちら ajax like flash #01
CSS3を使っているのでブラウザによって動作が異なります。
GoogleChrome6.0.472.55(完璧に動作)
SRWareIron4.0.280(完璧に動作)
Safari4.0.5(完璧に動作)
Firefox3.6.2(3D回転無し)
IE8(2D回転3D回転無し)
[javascript]Photoshopの自動化
前提としてjavascriptに精通していること。
1)
C:\Program Files\Adobe\Adobe Photoshop CS4\Scripting\Utilities\ScriptListener.8li
↑を↓へコピー
C:\Program Files\Adobe\Adobe Photoshop CS4\Plug-ins\Automate
2)
Photoshop上でスクリプト化したい操作をする
3)
デスクトップに出来たScriptingListenerJS.logを開いて
処理の該当部分をコピー
4)
3)でコピーしたものをペーストして※1を参照しながら
必要なコードをガリガリ書く
5)
拡張子jsx、文字コードUTF-8で保存
6)
ファイル>スクリプト>参照>出来たjsxファイル
で実行できます。
jsxファイルを下記フォルダへ入れておけばPhotoshop再起動後に
ファイル>スクリプトのメニューに表示されるようになります。
C:\Program Files\Adobe\Adobe Photoshop CS4\Presets\Scripts
※1 Photoshop CS自動化作戦
http://www.openspc2.org/book/PhotoshopCS/
あなたが誰に何回ツイートしたか調べます。OAuth認証バージョン。
最近フォローした100人まで、過去3200ツイートまで調べることが出来ます。
OAuth認証なのでツイート非公開の人も使えます。
逆に自分以外のIDは使えません。 -> 修正。friendのIDなら使える。
前回のものより正確。※Twitterのサーバの調子による。
前回のものよりサーバに優しい。
[update] 7/23 セッション、クッキーまわりを修正。
[update] 7/27 不具合を修正。safari5に対応。
[update] 7/28
暫定的にTwitpicタイムラインに対応。
TwitpicにTwitterと同じIDでアカウントを作ってある場合「+」にTwitpicが現れる。
[update] 8/2 「more」の不具合を修正。
[update] 8/6 誰宛か明確にした。
[update] 8/9 後回しにしてた諸々を実装。
[update] 8/11 色々改装。IE8に対応。「retweet_by_me」に「undo」を追加。
「@somebody」を追加。reply tracerの機能を実装。
[update] 9/15 こっそりTwitpicTLの不具合を修正。
[update] 10/28
「@somebody」「Twitpic」廃止。
モバイルに対応。見た目を細かく修正。
[update] 11/08
押し間違いやすかったretweetをツイート下部へ。
favoriteとかretweetとか出来ない不具合修正。
bookmarkをfavoriteへ。
[update] 11/17 リツイート系にdetail追加。誰がリツイートしたかわかる。
WindowsXPの下記のブラウザで動作を確認しました。
Firefox3.6
Google Chrome5.0.375.99
SRWare Iron4.0.280
Safari5.0
「sign in with twitter」をクリックすると
twitterのサイトにリダイレクトされるのでアプリケーションを許可してください。
上部の「+」から追加したいタブを選択してください。
上部のauto updateの値が自動更新の間隔です。0にすると自動更新はしません。
IE6,7でjavascriptのwindow.openでリンクを開くとリファラが取得できない。
また、AS3のnavigateToURL、AS2のgetURL、AS2のExternalInterfaceでwindow.open
ではswfファイルの絶対パスがリファラになってしまうようです。
その回避方法をここに記します。
//リンクを開くときにこのメソッドを使う function open_main2(url, target){ if(document.all){//IEの時 var body=document.getElementsByTagName("body")[0]; var atag=document.createElement("a"); atag.href=url; atag.target=target; body.appendChild(atag); atag.click(); body.removeChild(atag); }else{//IE以外 window.open(url, target); } }
var t="frasio report | /"; var url="http://twitter.com/home?status="+encodeURIComponent(t); window.open(url, "_blank");
はてなブックマーク
var t="frasio report"; var u="/"; var url="http://b.hatena.ne.jp/add?mode=confirm&url="+u+"&title="+encodeURIComponent(t); window.open(url, "_blank");
Yahoo!ブックマーク
var t="frasio report"; var u="/"; var url="http://bookmarks.yahoo.co.jp/bookmarklet/showpopup?t="+encodeURIComponent(t)+"&u="+encodeURIComponent(u)+"&ei=UTF-8"; window.open(url, "_blank");
Googleブックマーク
var t="frasio report"; var u="/"; var te=encodeURIComponent((window.getSelection&&window.getSelection())||(document.getSelection&&document.getSelection())||(document.selection &&document.selection.createRange&&document.selection.createRange().text)); var url; if(te==""){ url="http://www.google.com/bookmarks/mark?op=add&bkmk="+u+"&title="+encodeURIComponent(t) }else{ url="http://www.google.com/bookmarks/mark?op=add&bkmk="+u+"&title="+encodeURIComponent(t)+"&annotation="+te; } window.open(url, "_blank");
var t="frasio report"; var u="/"; var url="http://www.facebook.com/sharer.php?u="+u+"&t="+encodeURIComponent(t); window.open(url, "_blank");
delicious.
var t="frasio report"; var u="/"; var url="http://delicious.com/save?v=5&noui&jump=close&url="+encodeURIComponent(u)+"&title="+encodeURIComponent(t); window.open(url, "_blank");
Yahoo!カレンダー
var std=new Date(); var st=std.getFullYear()+pzero(std.getMonth()+1,2)+pzero(std.getDate(),2)+"T"+pzero(std.getHours().toString(), 2)+pzero(std.getMinutes().toString(), 2); var dur="0100"; var t="frasio report"; var s="flashやflashとかflashなど・・・最近はそうでもない"; var url='https://calendar.yahoo.co.jp/?'; url+='V=60'; url+='&ENC=UTF-8'; url+='&ST='+st; url+='&DUR='+dur; url+='&TITLE='+encodeURIComponent(t); url+='&DESC='+encodeURIComponent(s); url+='&URL='+"/"; url+='&chgp=1'; window.open(url, "_blank");
あなたが誰に何回ツイートしたか調べます。
最近フォローした100人まで、過去3200ツイートまで調べることが出来ます。
twitterAPIを一回だけ使用します。
追記
少し修正しました。
・最近フォローした100人まで → フォローしている人全員
・twitterAPIを一回だけ使用します。 → twitterAPIを使用しません。
次の更新は6月の予定