*メールアドレス複数指定を可能にして欲しい [#vcdd07ee] -ページ: BugTrack -投稿者: [[kokki-]] -優先順位: 低 -状態: CVS待ち -カテゴリー: 欲しいプラグイン -投稿日: 2003-06-10 (火) 19:22:52 -バージョン: 1.3.5 **メッセージ [#ncf94219] メールアドレスを入力すると、自動的にmailto:を付けてくれますが、複数のメールアドレス宛のリンクを付けたいと思っても、別々のmailto:が付いてしまう。subject,bodyなんかも考慮すると、プラグインで対応するのが良いのかも。 ---- -ためしに、本体の修正で[[mailto scheme>RFC:2368]]に対応させる方法をやってみました。 -- [[masao]] &new{2003-06-15 (日) 02:19:23}; diff -u -b -r1.44 make_link.php --- make_link.php 2 Jun 2003 09:58:27 -0000 1.44 +++ make_link.php 14 Jun 2003 17:17:31 -0000 @@ -404,7 +404,7 @@ $s1 = $this->start + 1; return <<<EOD (?:\[\[([^\]]+)(?:>|:))? # (1) alias - ([\w.-]+@[\w-]+\.[\w.-]+) # (2) mailto + ([\w.-]+@[\w-]+\.[\w.-]+|mailto:[!~*'();\/?:\@&=+\$,%#\w.-]+) # (2) mailto (?($s1)\]\]) # close bracket if (1) EOD; } @@ -416,8 +416,8 @@ { $arr = $this->splice($arr); - $name = $arr[2]; - $alias = ($arr[1] == '') ? $arr[2] : $arr[1]; + $name = htmlspecialchars(preg_replace('/^mailto:/', '', $arr[2])); + $alias = ($arr[1] == '') ? $name : $arr[1]; return parent::setParam($page,$name,'mailto',$alias); } ↓な記述ができるようになります。 [[help:mailto:foo@example.com,bar@example.net?body=help&subject=help]] --よく考えたら、他のURLと同様に処理した方がシンプルでしたね。。。↓で良い気がします。 -- [[masao]] &new{2003-06-15 (日) 22:51:00}; diff -u -b -r1.44 make_link.php --- make_link.php 2 Jun 2003 09:58:27 -0000 1.44 +++ make_link.php 15 Jun 2003 13:48:55 -0000 @@ -330,7 +330,7 @@ ([^\]]+)(?:>|:) # (2) alias )? ( # (3) url - (?:https?|ftp|news):\/\/[!~*'();\/?:\@&=+\$,%#\w.-]+ + (?:(?:https?|ftp|news):\/\/|mailto:)[!~*'();\/?:\@&=+\$,%#\w.-]+ ) (?($s1)\]\]) # close bracket EOD; -1度に複数の宛先という意味での mailto ということで理解しておりました。で、他のプロトコルで、その対応の意味合いが理解できません。対応した意味を教えていただけませんか? -- [[upk]] &new{2003-06-15 (日) 23:18:01}; --えっと、「他のschemeと同様にURLとして認識されるようになる」というだけで、「他のプロトコルで対応」した訳ではないのですが。。。 -- [[masao]] &new{2003-06-16 (月) 15:08:36}; ---おっと失礼しました。よく読まない病が... 処理をまとめただけだったのですね。-- [[upk]] &new{2003-06-16 (月) 18:02:33}; #comment