diff options
author | dakkar <dakkar@thenautilus.net> | 2023-03-31 16:51:15 +0100 |
---|---|---|
committer | dakkar <dakkar@thenautilus.net> | 2023-03-31 16:51:15 +0100 |
commit | d2285cc4df35540ec5b3d0f978f3eb4475912bad (patch) | |
tree | 5e7dd2a3789778f5fdc58e4b327daf2b04703eb4 /lib/Sietima/Role/ManualSubscription.pm | |
parent | v1.1.2 (diff) | |
parent | Dzil-build release 1.1.1 (from 8a400b7 on master) (diff) | |
download | Sietima-d2285cc4df35540ec5b3d0f978f3eb4475912bad.tar.gz Sietima-d2285cc4df35540ec5b3d0f978f3eb4475912bad.tar.bz2 Sietima-d2285cc4df35540ec5b3d0f978f3eb4475912bad.zip |
Dzil-build release 1.1.2 (from ddcb163 on master)v1.1.2release/master
Diffstat (limited to 'lib/Sietima/Role/ManualSubscription.pm')
-rw-r--r-- | lib/Sietima/Role/ManualSubscription.pm | 64 |
1 files changed, 46 insertions, 18 deletions
diff --git a/lib/Sietima/Role/ManualSubscription.pm b/lib/Sietima/Role/ManualSubscription.pm index c2711f0..cfd290f 100644 --- a/lib/Sietima/Role/ManualSubscription.pm +++ b/lib/Sietima/Role/ManualSubscription.pm @@ -4,11 +4,45 @@ use Sietima::Policy; use Sietima::HeaderURI; use namespace::clean; -# VERSION +our $VERSION = '1.1.2'; # VERSION # ABSTRACT: adds standard list-related headers to messages with 'Sietima::Role::WithOwner'; + +around list_addresses => sub($orig,$self) { + my $list_name = $self->name // 'the list'; + + return +{ + $self->$orig->%*, + subscribe => Sietima::HeaderURI->new_from_address( + $self->owner, + { subject => "Please add me to $list_name" }, + ), + unsubscribe => Sietima::HeaderURI->new_from_address( + $self->owner, + { subject => "Please remove me from $list_name" }, + ), + }; +}; + + +1; + +__END__ + +=pod + +=encoding UTF-8 + +=head1 NAME + +Sietima::Role::ManualSubscription - adds standard list-related headers to messages + +=head1 VERSION + +version 1.1.2 + =head1 SYNOPSIS my $sietima = Sietima->with_traits( @@ -26,29 +60,23 @@ C<Headers>|Sietima::Role::Headers >>) applied will add, to each outgoing message, headers specifying that to subscribe and unsubscribe, people sould email the list owner. -=modif C<list_addresses> +=head1 MODIFIED METHODS + +=head2 C<list_addresses> This method declares two "addresses", C<subscribe> and C<unsubscribe>. Both are C<mailto:> URLs for the list L<owner|Sietima::Role::WithOwner/owner>, with different subjects. -=cut +=head1 AUTHOR -around list_addresses => sub($orig,$self) { - my $list_name = $self->name // 'the list'; +Gianni Ceccarelli <dakkar@thenautilus.net> - return +{ - $self->$orig->%*, - subscribe => Sietima::HeaderURI->new_from_address( - $self->owner, - { subject => "Please add me to $list_name" }, - ), - unsubscribe => Sietima::HeaderURI->new_from_address( - $self->owner, - { subject => "Please remove me from $list_name" }, - ), - }; -}; +=head1 COPYRIGHT AND LICENSE +This software is copyright (c) 2023 by Gianni Ceccarelli <dakkar@thenautilus.net>. -1; +This is free software; you can redistribute it and/or modify it under +the same terms as the Perl 5 programming language system itself. + +=cut |