From: Galen Charlton Date: Wed, 23 May 2018 20:16:32 +0000 (-0400) Subject: add print cart action X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=6ec1967e137b6a1471e5543f43f1c4df09db6deb;p=working%2FEvergreen.git add print cart action Signed-off-by: Galen Charlton --- diff --git a/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm b/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm index b92fa47a4c..f69a0e6bed 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader.pm @@ -150,6 +150,7 @@ sub load { return $self->load_mylist_add if $path =~ m|opac/mylist/add|; return $self->load_mylist_delete if $path =~ m|opac/mylist/delete|; return $self->load_mylist_move if $path =~ m|opac/mylist/move|; + return $self->load_mylist_print if $path =~ m|opac/mylist/doprint|; return $self->load_mylist if $path =~ m|opac/mylist|; return $self->load_cache_clear if $path =~ m|opac/cache/clear|; return $self->load_temp_warn_post if $path =~ m|opac/temp_warn/post|; diff --git a/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm b/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm index 7309b613d4..c692b94735 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Container.pm @@ -167,6 +167,32 @@ sub _do_mylist_delete { return ($cache_key, $list); } +sub load_mylist_print { + my $self = shift; + + my $cache_key = $self->cgi->cookie((ref $self)->COOKIE_ANON_CACHE); + + if (!$cache_key) { + return $self->generic_redirect; + } + + my $url = sprintf( + "%s://%s%s/record/print/%s", + $self->ctx->{proto}, + $self->ctx->{hostname}, + $self->ctx->{opac_root}, + $cache_key, + ); + + my $redirect = $self->cgi->param('redirect_to'); + $url .= '?redirect_to=' . uri_escape_utf8($redirect); + my $clear_cart = $self->cgi->param('clear_cart'); + $url .= '&is_list=1'; + $url .= '&clear_cart=1' if $clear_cart; + + return $self->generic_redirect($url); +} + sub load_mylist_move { my $self = shift; my @rec_ids = $self->cgi->param('record'); diff --git a/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm b/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm index f7d4882ff9..a30f64ad97 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/WWW/EGCatLoader/Record.pm @@ -539,6 +539,11 @@ sub load_print_record { 'open-ils.search', 'open-ils.search.biblio.record.print', $list); + if ($self->cgi->param('clear_cart')) { + $self->clear_anon_cache; + } + $self->ctx->{'redirect_to'} = $self->cgi->param('redirect_to'); + return Apache2::Const::OK; } diff --git a/Open-ILS/src/templates/opac/mylist/print.tt2 b/Open-ILS/src/templates/opac/mylist/print.tt2 new file mode 100644 index 0000000000..118c7d9491 --- /dev/null +++ b/Open-ILS/src/templates/opac/mylist/print.tt2 @@ -0,0 +1,24 @@ +[%- PROCESS "opac/parts/header.tt2"; + PROCESS "opac/parts/misc_util.tt2"; + WRAPPER "opac/parts/base.tt2"; + INCLUDE "opac/parts/topnav.tt2"; + ctx.page_title = l("Confirm Cart Printing") %] +

[% l('Confirm Cart Printing') %]

+ [% INCLUDE "opac/parts/searchbar.tt2" %] +
+
+

[% l('Please confirm that you want to print the [_1] titles in the cart.', ctx.mylist.size) %] +

+ + + +
+ + +
+
+
+
+[%- END %] diff --git a/Open-ILS/src/templates/opac/parts/cart.tt2 b/Open-ILS/src/templates/opac/parts/cart.tt2 index daaa617d90..2fcbb6273b 100644 --- a/Open-ILS/src/templates/opac/parts/cart.tt2 +++ b/Open-ILS/src/templates/opac/parts/cart.tt2 @@ -3,9 +3,9 @@
  • [% l('Cart Actions') %]
  • diff --git a/Open-ILS/src/templates/opac/record/print.tt2 b/Open-ILS/src/templates/opac/record/print.tt2 index 24cb94ee27..26c35432a8 100644 --- a/Open-ILS/src/templates/opac/record/print.tt2 +++ b/Open-ILS/src/templates/opac/record/print.tt2 @@ -22,7 +22,11 @@ [% END %]

    + [% IF ctx.redirect_to %] +

    [ [% l("Return") %] ]

    + [% ELSE %]

    [ [% l("Back to Record") %] ]

    + [% END %]