diff options
author | dakkar <dakkar@thenautilus.net> | 2016-06-19 18:39:01 +0100 |
---|---|---|
committer | dakkar <dakkar@thenautilus.net> | 2016-06-19 18:39:01 +0100 |
commit | a4048d62bc088cd685bfd2f1804536bae3ba4733 (patch) | |
tree | 60aecd3584788e1fb6d4f7e25aeade8f9090c4f7 /lib | |
parent | bump perl requirement to 5.24 (diff) | |
download | Sietima-a4048d62bc088cd685bfd2f1804536bae3ba4733.tar.gz Sietima-a4048d62bc088cd685bfd2f1804536bae3ba4733.tar.bz2 Sietima-a4048d62bc088cd685bfd2f1804536bae3ba4733.zip |
SubjectTag role
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Sietima/Role/SubjectTag.pm | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/lib/Sietima/Role/SubjectTag.pm b/lib/Sietima/Role/SubjectTag.pm new file mode 100644 index 0000000..1daa662 --- /dev/null +++ b/lib/Sietima/Role/SubjectTag.pm @@ -0,0 +1,26 @@ +package Sietima::Role::SubjectTag; +use 5.024; +use Moo::Role; +use Types::Standard qw(Str); +use namespace::clean; + +has subject_tag => ( + is => 'ro', + isa => Str, + required => 1, +); + +around munge_mail => sub { + my ($orig,$self,$mail) = @_; + + my $tag = '['.$self->subject_tag.']'; + my $subject = $mail->header_str('Subject'); + unless ($subject =~ m{\Q$tag\E}) { + $mail->header_str_set( + Subject => "$tag $subject", + ); + } + return $self->$orig($mail); +}; + +1; |