ただのにっき
2006-07-08(土) [長年日記]
■ 久々にツッコミspamにやられた(2)
昨日の策では、説明書きを読まずにメールアドレスを入力してしまう善意のツッコミ人に申し訳ないので、スパマーがJavaScriptを解釈しないbotだという前提で、入力欄自体を動的に隠す方向で細工してみた。
こんなプラグインを入れることで、ラベルともども消えてくれる。
# hide-mail-field.rb add_footer_proc do if @mode == 'day' then <<-SCRIPT <script type="text/javascript"><!-- mail = document.getElementsByName("mail")[0]; mail.value = ""; mail.style.display = "none"; mail.parentNode.style.display = "none"; //--></script> SCRIPT else '' end end
botにはフィールドが見えるのでspamの投入はできるが、アドレス入りツッコミはフィルタされるので実効性がない。一方、通常のブラウザからはフィールドが見えない上にcookieが書き込んでしまったアドレスも消すので、誤って入力することもない(w3mな人には申し訳ないが)。さて、効き目はいかに?
追記(2006-10-31): dayモードの時のみスクリプトを埋め込むように変更。
■ 朝比奈ミクルの輸送
どうしても貼りたいネタを見てしまったので、思わずYouTube貼り付けプラグインを書いてしまったよ。ハルヒ放送終了後の喪失感を吹き飛ばしてくれた快作。
# youtube.rb # 引数はYouTubeのURLに含まれるvパラメタの値 # 例: {{youtube 'ApSBG0TntTU'}} def youtube( video_id ) <<-TAG <object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/#{video_id}"></param><embed src="http://www.youtube.com/v/#{video_id}" type="application/x-shockwave-flash" width="425" height="350"></embed></object> TAG end