2015-06-05 11:06:36 +02:00
|
|
|
'use strict';
|
|
|
|
|
2015-06-16 13:48:48 +02:00
|
|
|
import requests from '../utils/requests';
|
2015-05-18 18:00:12 +02:00
|
|
|
|
2015-08-04 11:39:33 +02:00
|
|
|
import { mergeOptions } from '../utils/general_utils';
|
2015-10-30 17:43:20 +01:00
|
|
|
import { generateOrderingQueryParams } from '../utils/url_utils';
|
2015-05-20 16:44:45 +02:00
|
|
|
|
2015-05-19 17:16:01 +02:00
|
|
|
let PieceListFetcher = {
|
2015-05-19 17:01:28 +02:00
|
|
|
/**
|
|
|
|
* Fetches a list of pieces from the API.
|
|
|
|
* Can be called with all supplied queryparams the API.
|
|
|
|
*/
|
2015-08-04 11:39:33 +02:00
|
|
|
fetch(page, pageSize, search, orderBy, orderAsc, filterBy) {
|
2015-06-02 13:48:01 +02:00
|
|
|
let ordering = generateOrderingQueryParams(orderBy, orderAsc);
|
2015-08-04 11:39:33 +02:00
|
|
|
|
|
|
|
// filterBy is an object of acl key-value pairs.
|
|
|
|
// The values are booleans
|
|
|
|
let queryParams = mergeOptions(
|
|
|
|
{
|
|
|
|
page,
|
|
|
|
pageSize,
|
|
|
|
search,
|
|
|
|
ordering
|
|
|
|
},
|
|
|
|
filterBy
|
|
|
|
);
|
|
|
|
|
|
|
|
return requests.get('pieces_list', queryParams);
|
2015-07-01 19:05:47 +02:00
|
|
|
},
|
|
|
|
|
|
|
|
fetchRequestActions() {
|
|
|
|
return requests.get('pieces_list_request_actions');
|
2015-07-09 15:44:20 +02:00
|
|
|
},
|
|
|
|
|
|
|
|
fetchFirstEditionForPiece(pieceId) {
|
|
|
|
return requests.get('piece_first_edition_id', {'piece_id': pieceId});
|
2015-05-18 18:00:12 +02:00
|
|
|
}
|
|
|
|
};
|
|
|
|
|
2015-05-20 16:44:45 +02:00
|
|
|
export default PieceListFetcher;
|