H"PhoneでtDiary
H"PhoneからtDiaryを使うと絵日記プラグインの画像uploadフォームが 表示されない。調べてみると、tdiary.rbの中で、
class CGI : : def mobile_agent? self.user_agent =~ %r[(DoCoMo|J-PHONE|UP\.Browser|DDIPOCKET|ASTEL|PDXGW|Palmscape|Xiino|sharp pda browser|Windows CE|L-mode)]i end end
CGIクラスを拡張してmobile_agent?メソッドを追加している。 H"PhoneのUSER_AGENTは、
Mozilla/3.0(DDIPOCKET;KYOCERA/AH-K3001V/1.5.2.68.000000/0.1/C100) Opera 7.0
となってるので、"DDIPOCKET"に該当しているのだろう。 このメソッドの返す値で処理を分けているが、 更新画面を出力するupdate.rbでは
: if @cgi.mobile_agent? then body = conf.to_mobile( tdiary.eval_rhtml( 'i.' ) ) head = @cgi.header( :
として、eval_rhtml()に'i.'を渡している。これによって、 mobile_agentの場合は、skel/update.rhtmlの代わりにskel/i.update.rhtmlが 使われる。このupdate.rhtmlがuploadフォームを表示するform_proc()を 呼んでいるが、i.update.rhtmlでは省略されている。で、次のように i.update.rhtmlを変更。
--- i.update.rhtml.org Thu Oct 23 23:12:52 2003 +++ i.update.rhtml Mon Apr 11 14:29:26 2005 @@ -36,4 +36,5 @@ end %> <% if idx > 0 then %><P><INPUT TYPE="SUBMIT" NAME="comment" VALUE="ツッコミ表示状態変更"></P><% end %> </FORM> +<%%=form_proc( @date )%> <HR>
これで、H"Phoneからも絵日記プラグインが使えるようになった。早速、 神戸で撮った写真をuploadしてみる。問題無く使えるが、やはりQVGAの画面では 編集が辛い。
Last modified: 2011-03-20 by Unknown