View | Details | Raw Unified | Return to bug 34339
Collapse All | Expand All

(-)a/Koha/ERM/Providers/EBSCO.pm (-2 / +2 lines)
Lines 210-219 sub embed { Link Here
210
210
211
sub build_query_pagination {
211
sub build_query_pagination {
212
    my ( $self, $params ) = @_;
212
    my ( $self, $params ) = @_;
213
    my $per_page = $params->{_per_page}
213
    my $per_page = $params->{per_page}
214
      // C4::Context->preference('RESTdefaultPageSize') // 20;
214
      // C4::Context->preference('RESTdefaultPageSize') // 20;
215
    if ( $per_page == -1 || $per_page > 100 ) { $per_page = 100; }
215
    if ( $per_page == -1 || $per_page > 100 ) { $per_page = 100; }
216
    my $page = $params->{_page} || 1;
216
    my $page = $params->{page} || 1;
217
217
218
    return ( $per_page, $page );
218
    return ( $per_page, $page );
219
}
219
}
(-)a/Koha/REST/V1/ERM/EHoldings/Packages/EBSCO.pm (-5 / +8 lines)
Lines 30-42 sub list { Link Here
30
30
31
    return try {
31
    return try {
32
32
33
        my $args       = $c->validation->output;
34
        my $params     = '?orderby=packagename&offset=1&count=1';
33
        my $params     = '?orderby=packagename&offset=1&count=1';
35
        my $ebsco      = Koha::ERM::Providers::EBSCO->new;
34
        my $ebsco      = Koha::ERM::Providers::EBSCO->new;
36
        my $result     = $ebsco->request( GET => '/packages' . $params );
35
        my $result     = $ebsco->request( GET => '/packages' . $params );
37
        my $base_total = $result->{totalResults};
36
        my $base_total = $result->{totalResults};
38
37
39
        my ( $per_page, $page ) = $ebsco->build_query_pagination($args);
38
        my ( $per_page, $page ) = $ebsco->build_query_pagination(
39
            {
40
                per_page => $c->stash('koha.pagination.per_page'),
41
                page     => $c->stash('koha.pagination.page'),
42
            }
43
        );
40
        my $additional_params =
44
        my $additional_params =
41
          $ebsco->build_additional_params( $c->req->params->to_hash );
45
          $ebsco->build_additional_params( $c->req->params->to_hash );
42
46
Lines 61-69 sub list { Link Here
61
        $c->add_pagination_headers(
65
        $c->add_pagination_headers(
62
            {
66
            {
63
                base_total   => $base_total,
67
                base_total   => $base_total,
64
                page         => $args->{_page},
68
                page         => $page,
65
                per_page     => $args->{_per_page},
69
                per_page     => $per_page,
66
                query_params => $args,
67
                total        => $total,
70
                total        => $total,
68
            }
71
            }
69
        );
72
        );
(-)a/Koha/REST/V1/ERM/EHoldings/Resources/EBSCO.pm (-9 / +12 lines)
Lines 38-50 sub list { Link Here
38
38
39
    return try {
39
    return try {
40
40
41
        my $args = $c->validation->output;
41
        my $ebsco = Koha::ERM::Providers::EBSCO->new;
42
        my $ebsco      = Koha::ERM::Providers::EBSCO->new;
43
42
44
        # FIXME Do we need more validation here? Don't think so we have the API specs.
43
        # FIXME Do we need more validation here? Don't think so we have the API specs.
45
        my ( $vendor_id, $package_id ) = split '-',
44
        my ( $vendor_id, $package_id ) = split '-',
46
          $c->validation->param('package_id') || q{};
45
          $c->param('package_id') || q{};
47
        my $title_id = $c->validation->param('title_id') || q{};
46
        my $title_id = $c->param('title_id') || q{};
48
47
49
        my $url =
48
        my $url =
50
          $title_id
49
          $title_id
Lines 74-80 sub list { Link Here
74
73
75
        my $base_total = $result->{totalResults};
74
        my $base_total = $result->{totalResults};
76
75
77
        my ( $per_page, $page ) = $ebsco->build_query_pagination($args);
76
        my ( $per_page, $page ) = $ebsco->build_query_pagination(
77
            {
78
                per_page => $c->stash('koha.pagination.per_page'),
79
                page     => $c->stash('koha.pagination.page'),
80
            }
81
        );
78
82
79
        my $additional_params = $ebsco->build_additional_params( $c->req->params->to_hash );
83
        my $additional_params = $ebsco->build_additional_params( $c->req->params->to_hash );
80
        my $searchfield = 'titlename';
84
        my $searchfield = 'titlename';
Lines 107-113 sub list { Link Here
107
                base_total   => $base_total,
111
                base_total   => $base_total,
108
                page         => $page,
112
                page         => $page,
109
                per_page     => $per_page,
113
                per_page     => $per_page,
110
                query_params => $args,
111
                total        => $total,
114
                total        => $total,
112
            }
115
            }
113
        );
116
        );
Lines 127-133 sub get { Link Here
127
130
128
    return try {
131
    return try {
129
        my ( $vendor_id, $package_id, $resource_id ) = split '-',
132
        my ( $vendor_id, $package_id, $resource_id ) = split '-',
130
          $c->validation->param('resource_id');
133
          $c->param('resource_id');
131
        my $ebsco      = Koha::ERM::Providers::EBSCO->new;
134
        my $ebsco      = Koha::ERM::Providers::EBSCO->new;
132
        my $t = try {
135
        my $t = try {
133
              return $ebsco->request( GET => '/vendors/'
136
              return $ebsco->request( GET => '/vendors/'
Lines 182-191 sub edit { Link Here
182
    my $c = shift or return;
185
    my $c = shift or return;
183
186
184
    return try {
187
    return try {
185
        my $body        = $c->validation->param('body');
188
        my $body        = $c->req->json;
186
        my $is_selected = $body->{is_selected};
189
        my $is_selected = $body->{is_selected};
187
        my ( $vendor_id, $package_id, $resource_id ) = split '-',
190
        my ( $vendor_id, $package_id, $resource_id ) = split '-',
188
          $c->validation->param('resource_id');
191
          $c->param('resource_id');
189
192
190
        my $ebsco = Koha::ERM::Providers::EBSCO->new;
193
        my $ebsco = Koha::ERM::Providers::EBSCO->new;
191
        my $t     = try {
194
        my $t     = try {
(-)a/Koha/REST/V1/ERM/EHoldings/Resources/Local.pm (-1 / +1 lines)
Lines 60-66 sub get { Link Here
60
    my $c = shift or return;
60
    my $c = shift or return;
61
61
62
    return try {
62
    return try {
63
        my $resource_id = $c->validation->param('resource_id');
63
        my $resource_id = $c->param('resource_id');
64
        my $resource = $c->objects->find( Koha::ERM::EHoldings::Resources->search, $resource_id );
64
        my $resource = $c->objects->find( Koha::ERM::EHoldings::Resources->search, $resource_id );
65
65
66
        unless ($resource ) {
66
        unless ($resource ) {
(-)a/Koha/REST/V1/ERM/EHoldings/Titles/EBSCO.pm (-6 / +6 lines)
Lines 38-50 sub list { Link Here
38
38
39
    return try {
39
    return try {
40
40
41
        my $args = $c->validation->output;
42
43
        my $ebsco = Koha::ERM::Providers::EBSCO->new;
41
        my $ebsco = Koha::ERM::Providers::EBSCO->new;
44
42
45
        # We cannot get base_total as a search kw is required by the API
43
        # We cannot get base_total as a search kw is required by the API
46
44
        my ( $per_page, $page ) = $ebsco->build_query_pagination(
47
        my ( $per_page, $page ) = $ebsco->build_query_pagination($args);
45
            {
46
                per_page => $c->stash('koha.pagination.per_page'),
47
                page     => $c->stash('koha.pagination.page'),
48
            }
49
        );
48
50
49
        my $additional_params = $ebsco->build_additional_params( $c->req->params->to_hash );
51
        my $additional_params = $ebsco->build_additional_params( $c->req->params->to_hash );
50
52
Lines 86-92 sub list { Link Here
86
               #base_total   => $base_total,
88
               #base_total   => $base_total,
87
                page         => $page,
89
                page         => $page,
88
                per_page     => $per_page,
90
                per_page     => $per_page,
89
                query_params => $args,
90
                total        => $total,
91
                total        => $total,
91
            }
92
            }
92
        );
93
        );
93
- 

Return to bug 34339