Lines 21-28
use strict;
Link Here
|
21 |
use warnings; |
21 |
use warnings; |
22 |
use C4::Context; |
22 |
use C4::Context; |
23 |
|
23 |
|
24 |
|
|
|
25 |
|
26 |
=head1 NAME |
24 |
=head1 NAME |
27 |
|
25 |
|
28 |
C4::Members::Messaging - manage patron messaging preferences |
26 |
C4::Members::Messaging - manage patron messaging preferences |
Lines 185-226
END_SQL
Link Here
|
185 |
return; |
183 |
return; |
186 |
} |
184 |
} |
187 |
|
185 |
|
188 |
=head2 GetMessagingOptions |
|
|
189 |
|
190 |
my $messaging_options = C4::Members::Messaging::GetMessagingOptions() |
191 |
|
192 |
returns a hashref of messaging options available. |
193 |
|
194 |
=cut |
195 |
|
196 |
sub GetMessagingOptions { |
197 |
|
198 |
my $sql = <<'END_SQL'; |
199 |
select message_attributes.message_attribute_id, takes_days, message_name, message_transport_type, is_digest |
200 |
FROM message_attributes |
201 |
LEFT JOIN message_transports |
202 |
ON message_attributes.message_attribute_id = message_transports.message_attribute_id |
203 |
END_SQL |
204 |
|
205 |
my $sth = C4::Context->dbh->prepare($sql); |
206 |
$sth->execute(); |
207 |
my $choices; |
208 |
while ( my $row = $sth->fetchrow_hashref() ) { |
209 |
$choices->{ $row->{'message_name'} }->{'message_attribute_id'} = $row->{'message_attribute_id'}; |
210 |
$choices->{ $row->{'message_name'} }->{'message_name'} = $row->{'message_name'}; |
211 |
$choices->{ $row->{'message_name'} }->{'takes_days'} = $row->{'takes_days'}; |
212 |
$choices->{ $row->{'message_name'} }->{'has_digest'} = 1 if $row->{'is_digest'}; |
213 |
$choices->{ $row->{'message_name'} }->{'transport_' . $row->{'message_transport_type'}} = ' '; |
214 |
} |
215 |
|
216 |
my @return = values %$choices; |
217 |
|
218 |
@return = sort { $a->{message_attribute_id} <=> $b->{message_attribute_id} } @return; |
219 |
|
220 |
# warn( Data::Dumper->Dump( [ \@return ], [ 'return' ] ) ); |
221 |
return \@return; |
222 |
} |
223 |
|
224 |
=head2 SetMessagingPreferencesFromDefaults |
186 |
=head2 SetMessagingPreferencesFromDefaults |
225 |
|
187 |
|
226 |
C4::Members::Messaging::SetMessagingPreferencesFromDefaults( { borrowernumber => $borrower->{'borrowernumber'} |
188 |
C4::Members::Messaging::SetMessagingPreferencesFromDefaults( { borrowernumber => $borrower->{'borrowernumber'} |
Lines 241-247
sub SetMessagingPreferencesFromDefaults {
Link Here
|
241 |
} |
203 |
} |
242 |
} |
204 |
} |
243 |
|
205 |
|
244 |
my $messaging_options = GetMessagingOptions(); |
206 |
my $messaging_options = Koha::Patron::MessagePreferences->get_options; |
245 |
OPTION: foreach my $option ( @$messaging_options ) { |
207 |
OPTION: foreach my $option ( @$messaging_options ) { |
246 |
my $default_pref = GetMessagingPreferences( { categorycode => $params->{categorycode}, |
208 |
my $default_pref = GetMessagingPreferences( { categorycode => $params->{categorycode}, |
247 |
message_name => $option->{'message_name'} } ); |
209 |
message_name => $option->{'message_name'} } ); |