@@ -, +, @@ - opacuserlogin - EnhancedMessagingPreferences - EnhancedMessagingPreferencesOPAC ---- GENERAL ---- (grep -r 'GetMessagingOptions'). ---- OPAC ---- ---- INTRANET ---- with the categorycode you were just editing. --- C4/Form/MessagingPreferences.pm | 5 +++-- C4/Members/Messaging.pm | 40 +-------------------------------- Koha/Patron/Category.pm | 3 ++- opac/opac-messaging.pl | 2 -- 4 files changed, 6 insertions(+), 44 deletions(-) --- a/C4/Form/MessagingPreferences.pm +++ a/C4/Form/MessagingPreferences.pm @@ -24,6 +24,7 @@ use CGI qw ( -utf8 ); use C4::Context; use C4::Members::Messaging; use C4::Debug; +use Koha::Patron::Message::Preferences; use constant MAX_DAYS_IN_ADVANCE => 30; @@ -73,7 +74,7 @@ adds a settings_updated template variable. sub handle_form_action { my ($query, $target_params, $template, $insert, $categorycode) = @_; - my $messaging_options = C4::Members::Messaging::GetMessagingOptions(); + my $messaging_options = Koha::Patron::Message::Preferences->get_options; # TODO: If a "NONE" box and another are checked somehow (javascript failed), we should pay attention to the "NONE" box my $prefs_set = 0; OPTION: foreach my $option ( @$messaging_options ) { @@ -128,7 +129,7 @@ C<$template> is the Template::Toolkit object for the response. sub set_form_values { my ($target_params, $template) = @_; # walk through the options and update them with these borrower_preferences - my $messaging_options = C4::Members::Messaging::GetMessagingOptions(); + my $messaging_options = Koha::Patron::Message::Preferences->get_options; PREF: foreach my $option ( @$messaging_options ) { my $pref = C4::Members::Messaging::GetMessagingPreferences( { %{ $target_params }, message_name => $option->{'message_name'} } ); $option->{ $option->{'message_name'} } = 1; --- a/C4/Members/Messaging.pm +++ a/C4/Members/Messaging.pm @@ -21,8 +21,6 @@ use strict; use warnings; use C4::Context; - - =head1 NAME C4::Members::Messaging - manage patron messaging preferences @@ -184,42 +182,6 @@ END_SQL return; } -=head2 GetMessagingOptions - - my $messaging_options = C4::Members::Messaging::GetMessagingOptions() - -returns a hashref of messaging options available. - -=cut - -sub GetMessagingOptions { - - my $sql = <<'END_SQL'; -select message_attributes.message_attribute_id, takes_days, message_name, message_transport_type, is_digest - FROM message_attributes - LEFT JOIN message_transports - ON message_attributes.message_attribute_id = message_transports.message_attribute_id -END_SQL - - my $sth = C4::Context->dbh->prepare($sql); - $sth->execute(); - my $choices; - while ( my $row = $sth->fetchrow_hashref() ) { - $choices->{ $row->{'message_name'} }->{'message_attribute_id'} = $row->{'message_attribute_id'}; - $choices->{ $row->{'message_name'} }->{'message_name'} = $row->{'message_name'}; - $choices->{ $row->{'message_name'} }->{'takes_days'} = $row->{'takes_days'}; - $choices->{ $row->{'message_name'} }->{'has_digest'} = 1 if $row->{'is_digest'}; - $choices->{ $row->{'message_name'} }->{'transport_' . $row->{'message_transport_type'}} = ' '; - } - - my @return = values %$choices; - - @return = sort { $a->{message_attribute_id} <=> $b->{message_attribute_id} } @return; - - # warn( Data::Dumper->Dump( [ \@return ], [ 'return' ] ) ); - return \@return; -} - =head2 SetMessagingPreferencesFromDefaults C4::Members::Messaging::SetMessagingPreferencesFromDefaults( { borrowernumber => $borrower->{'borrowernumber'} @@ -240,7 +202,7 @@ sub SetMessagingPreferencesFromDefaults { } } - my $messaging_options = GetMessagingOptions(); + my $messaging_options = Koha::Patron::Message::Preferences->get_options; OPTION: foreach my $option ( @$messaging_options ) { my $default_pref = GetMessagingPreferences( { categorycode => $params->{categorycode}, message_name => $option->{'message_name'} } ); --- a/Koha/Patron/Category.pm +++ a/Koha/Patron/Category.pm @@ -24,6 +24,7 @@ use C4::Members::Messaging; use Koha::Database; use Koha::DateUtils; +use Koha::Patron::Message::Preferences; use base qw(Koha::Object); @@ -80,7 +81,7 @@ my $messaging = $category->default_messaging(); sub default_messaging { my ( $self ) = @_; - my $messaging_options = C4::Members::Messaging::GetMessagingOptions(); + my $messaging_options = Koha::Patron::Message::Preferences->get_options; my @messaging; foreach my $option (@$messaging_options) { my $pref = C4::Members::Messaging::GetMessagingPreferences( --- a/opac/opac-messaging.pl +++ a/opac/opac-messaging.pl @@ -52,8 +52,6 @@ my ( $template, $borrowernumber, $cookie ) = get_template_and_user( my $patron = Koha::Patrons->find( $borrowernumber ); # FIXME and if borrowernumber is invalid? -my $messaging_options = C4::Members::Messaging::GetMessagingOptions(); - if ( defined $query->param('modify') && $query->param('modify') eq 'yes' ) { my $sms = $query->param('SMSnumber'); my $sms_provider_id = $query->param('sms_provider_id'); --