OSDN Git Service

mail address link update to simple mailto link on iPod/iPhone UI (#17740)
authorishikawa <ishikawa@180c8125-5b33-4295-ad04-72a68a15b4cc>
Sun, 12 Jul 2009 03:19:22 +0000 (03:19 +0000)
committerishikawa <ishikawa@180c8125-5b33-4295-ad04-72a68a15b4cc>
Sun, 12 Jul 2009 03:19:22 +0000 (03:19 +0000)
lib/plugins/20mail

index ff41893..d25be13 100644 (file)
@@ -1,7 +1,7 @@
 # -*- mode: perl; coding: utf-8 -*-
 # keitairc/lib/plugins/20mail
 # メールアドレス
-# $Id: 20mail,v 1.8 2009-07-12 02:54:22 ishikawa Exp $
+# $Id: 20mail,v 1.9 2009-07-12 03:19:22 ishikawa Exp $
 # $Source: /home/ishikawa/work/keitairc/tmp/keitairc/lib/plugins/20mail,v $
 
 # The line number (1 incremented) and filename below must be
@@ -14,8 +14,17 @@ $plugin = {
        message_replace_regexp => '\b(\w[\w.+=-]*\@[\w.-]+[\w]\.[\w]{2,4})\b',
        message_replace_imprementation => sub {
                my ($request, $session_id, $param) = @_;
-               sprintf('<a target="_self" class="inline" href="%s%s/mail/%s">%s</a>',
-                       $::cf->web_root(), $session_id, $param, $param);
+                my $ci = new Keitairc::ClientInfo($request);
+               if ($ci->is_ipod()) {
+                       # ipod/iphone は mailto リンクにして keitairc側で
+                       # 余計な処理をしないで ブラウザ側処理に任せる
+                       # http://sourceforge.jp/ticket/browse.php?group_id=1057&tid=17740
+                       sprintf('<a target="_self" class="inline" href="mailto:%s">%s</a>',
+                               $param, $param);
+               } else {
+                       sprintf('<a target="_self" class="inline" href="%s%s/mail/%s">%s</a>',
+                               $::cf->web_root(), $session_id, $param, $param);
+               }
        },
 
        action_imprementation => sub {