From f09616657f3c09e9ed009ebac22cad545528d5f3 Mon Sep 17 00:00:00 2001 From: Alex Arnaud Date: Fri, 10 Nov 2017 14:46:02 +0000 Subject: [PATCH] Bug 17047 - Move ability to comment mana entities from search results table to report/subscription detail page + code refactoring --- C4/Reports/Guided.pm | 11 +++- C4/Serials.pm | 6 ++ Koha/SharedContent.pm | 12 +++- koha-tmpl/intranet-tmpl/prog/en/includes/mana.inc | 44 ++++++++++++++ .../en/includes/mana/mana-report-search-result.inc | 27 +------- .../mana/mana-subscription-search-result.inc | 13 +--- .../prog/en/includes/reports-toolbar.inc | 71 +++++++++++----------- .../prog/en/includes/serials-toolbar.inc | 35 +++++++++++ .../en/modules/reports/guided_reports_start.tt | 20 ------ .../prog/en/modules/serials/subscription-add.tt | 45 -------------- reports/guided_reports.pl | 4 ++ serials/subscription-detail.pl | 1 + svc/mana/share | 2 +- 13 files changed, 147 insertions(+), 144 deletions(-) create mode 100644 koha-tmpl/intranet-tmpl/prog/en/includes/mana.inc diff --git a/C4/Reports/Guided.pm b/C4/Reports/Guided.pm index d61b282..70d1f25 100644 --- a/C4/Reports/Guided.pm +++ b/C4/Reports/Guided.pm @@ -33,6 +33,7 @@ use C4::Log; use Koha::AuthorisedValues; use Koha::Patron::Categories; +use Koha::SharedContent; BEGIN { require Exporter; @@ -715,7 +716,15 @@ sub get_saved_report { } else { return; } - return $dbh->selectrow_hashref($query, undef, $report_arg); + my $report = $dbh->selectrow_hashref($query, undef, $report_arg); + + if ( my $mana_id = $report->{mana_id} ) { + my $mana_report = Koha::SharedContent::manaGetRequestWithId( + 'report', $mana_id, {usecomments => 1}); + $report->{comments} = $mana_report->{data}->{comments}; + } + + return $report; } =head2 create_compound($masterID,$subreportID) diff --git a/C4/Serials.pm b/C4/Serials.pm index d7c44e8..abb08e9 100644 --- a/C4/Serials.pm +++ b/C4/Serials.pm @@ -300,6 +300,12 @@ sub GetSubscription { }); $subscription->{additional_fields} = $additional_field_values->{$subscriptionid}; + if ( my $mana_id = $subscription->{mana_id} ) { + my $mana_subscription = Koha::SharedContent::manaGetRequestWithId( + 'subscription', $mana_id, {usecomments => 1}); + $subscription->{comments} = $mana_subscription->{data}->{comments}; + } + return $subscription; } diff --git a/Koha/SharedContent.pm b/Koha/SharedContent.pm index c54a8e1..ca484c1 100644 --- a/Koha/SharedContent.pm +++ b/Koha/SharedContent.pm @@ -78,9 +78,11 @@ sub manaIncrementRequest { =cut sub manaPostRequest { - my ($lang, $loggedinuser, $resourceid, $resourcetype) = @_; + my ($lang, $loggedinuser, $resourceid, $resourcetype, $content) = @_; - my $content = prepareSharedData($lang, $loggedinuser, $resourceid, $resourcetype); + unless ( $content ) { + $content = prepareSharedData($lang, $loggedinuser, $resourceid, $resourcetype); + } my $result = manaRequest(buildRequest('post', $resourcetype, $content)); @@ -161,8 +163,12 @@ sub buildRequest { if ( $type eq 'getwithid' ) { my $id = shift; + my $params = shift; + $params = join '&', + map { defined $params->{$_} ? $_ . "=" . $params->{$_} : () } + keys %$params; - my $url = "$MANA_IP/$resource/$id.json"; + my $url = "$MANA_IP/$resource/$id.json?$params"; return HTTP::Request->new( GET => $url ); } diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/mana.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/mana.inc new file mode 100644 index 0000000..d57290c --- /dev/null +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/mana.inc @@ -0,0 +1,44 @@ + \ No newline at end of file diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/mana/mana-report-search-result.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/mana/mana-report-search-result.inc index 312af44..b95600c 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/mana/mana-report-search-result.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/mana/mana-report-search-result.inc @@ -24,6 +24,7 @@ $(document).ready(function() { }); //]]> +[% INCLUDE 'mana.inc' %] [% IF statuscode == "200" AND reports %] @@ -68,14 +69,6 @@ $(document).ready(function() { [% UNLESS search_only %] [% END %] @@ -86,21 +79,3 @@ $(document).ready(function() { [% ELSE %]

[% msg %] statuscode: [% statuscode %]

[% END %] - - diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/mana/mana-subscription-search-result.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/mana/mana-subscription-search-result.inc index 30e10ca..34c3f42 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/mana/mana-subscription-search-result.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/mana/mana-subscription-search-result.inc @@ -2,7 +2,7 @@ [% USE Koha %] [% USE AuthorisedValues %] [% USE Branches %] - +[% INCLUDE 'mana.inc' %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/reports-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/reports-toolbar.inc index 9e5e6ba..0ca33e4 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/reports-toolbar.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/reports-toolbar.inc @@ -1,3 +1,4 @@ +[% INCLUDE 'mana.inc' %]
[% IF ( CAN_user_reports_create_reports ) %]
@@ -49,6 +50,40 @@
[% END %] + [% IF ( mana_id && Koha.Preference('Mana') == 1 ) %] +
+ + +
+ + + [% END %] + [% IF ( execute ) %]
@@ -90,8 +125,6 @@
[% END %] - - diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc index dbddfbe..d0242f0 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc @@ -1,3 +1,4 @@ +[% INCLUDE 'mana.inc' %]
- -