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