diff options
| author | fukachan <fukachan> | 2006-01-13 00:07:14 +0000 |
|---|---|---|
| committer | fukachan <fukachan> | 2006-01-13 00:07:14 +0000 |
| commit | 09a3fbb1d38dcc8d54905f0fb188bc13f6de0df6 (patch) | |
| tree | 59e5ca38491be89576e13c26f5787be0ee98b852 /fml/doc/ja/tutorial | |
| parent | b57ff16584de4d479ae10c4eae2f63f3445cab64 (diff) | |
| download | fml8-09a3fbb1d38dcc8d54905f0fb188bc13f6de0df6.tar.gz fml8-09a3fbb1d38dcc8d54905f0fb188bc13f6de0df6.tar.bz2 fml8-09a3fbb1d38dcc8d54905f0fb188bc13f6de0df6.zip | |
add several Reply-To: related hacks
Diffstat (limited to 'fml/doc/ja/tutorial')
| -rw-r--r-- | fml/doc/ja/tutorial/customize/recipes.header.sgml | 152 |
1 files changed, 151 insertions, 1 deletions
diff --git a/fml/doc/ja/tutorial/customize/recipes.header.sgml b/fml/doc/ja/tutorial/customize/recipes.header.sgml index 9a3e332e..7d889694 100644 --- a/fml/doc/ja/tutorial/customize/recipes.header.sgml +++ b/fml/doc/ja/tutorial/customize/recipes.header.sgml @@ -1,5 +1,5 @@ <!-- - $FML$ + $FML: recipes.header.sgml,v 1.1 2005/10/29 04:21:38 fukachan Exp $ --> <qandaset> @@ -47,4 +47,154 @@ article_subject_tag = [\L$ml_name\E:%05d] </qandaentry> +<qandaentry> + +<question> +<para> +いつでも Reply-To: を投稿用アドレスに強制する。 +</para> +</question> + +<answer> +<para> +次の HOOK を config.cf の最後(=cutより後)に書いて下さい。 +<screen> +$article_header_rewrite_end_hook = q{ + my $ml = $config->{ article_post_address }; + $header->replace('Reply-To', $ml); +}; +</screen> +なおヘッダ書き換えルールに以下の命令を追加しても同じことが出来ます。 +<screen> +article_header_rewrite_rules += rewrite_reply_to_enforce_article_post_address +</screen> +</para> +</answer> + +</qandaentry> + + +<qandaentry> + +<question> +<para> +Reply-To: を送信者に設定する。 +</para> +</question> + +<answer> +<para> +次の HOOK を config.cf の最後(=cutより後)に書いて下さい。 +<screen> +$article_header_rewrite_end_hook = q{ + my $cred = $curproc->credential(); + my $sender = $cred->sender(); + + $header->replace('Reply-To', $sender); +}; +</screen> + +</para> +</answer> + +</qandaentry> + + +<qandaentry> + +<question> +<para> +Reply-To: を「送信者 + ML」に設定する。 +</para> +</question> + +<answer> +<para> +次の HOOK を config.cf の最後(=cutより後)に書いて下さい。 +<screen> +$article_header_rewrite_end_hook = q{ + my $ml = $config->{ article_post_address }; + my $cred = $curproc->credential(); + my $sender = $cred->sender(); + + $header->replace('Reply-To', "$ml, $sender"); +}; +</screen> + +</para> +</answer> + +</qandaentry> + + +<qandaentry> + +<question> +<para> +MLメンバーからの投稿であれば、Reply-To: を「送信者+ML」にする。 +</para> +</question> + +<answer> +<para> +次の HOOK を config.cf の最後(=cutより後)に書いて下さい。 +<screen> +$article_header_rewrite_end_hook = q{ + my $ml = $config->{ article_post_address }; + my $cred = $curproc->credential(); + my $sender = $cred->sender(); + + if ($cred->is_member($sender)) { + $curproc->log("member"); + $header->replace('Reply-To', "$ml, $sender"); + } +}; +</screen> + +</para> +</answer> + +</qandaentry> + + +<qandaentry> + +<question> +<para> +To: と Cc: の中にある fml8 が管理しているMLのアドレスだけを +Reply-To: に設定する。 +</para> +</question> + +<answer> +<para> +だいぶ複雑ですが HOOK で実現できます。 +次の HOOK を config.cf の最後(=cutより後)に書いて下さい。 +<screen> +$article_header_rewrite_end_hook = q{ + my $to = $header->get('to'); + my $cc = $header->get('cc'); + my $addr = "$to, $cc"; + + use Mail::Address; + my (@addrlist) = Mail::Address->parse($addr); + + my $reply_to = ''; + for my $a (@addrlist) { + my $_addr = $a->address; + if ($curproc->is_valid_ml_address($_addr)) { + $reply_to .= $reply_to ? ", $_addr" : $_addr; + } + } + + $header->replace('Reply-To', $reply_to) if $reply_to; +}; +</screen> + +</para> +</answer> + +</qandaentry> + + </qandaset> |
