diff --git a/cypress/integration/origin-search.spec.js b/cypress/integration/origin-search.spec.js
--- a/cypress/integration/origin-search.spec.js
+++ b/cypress/integration/origin-search.spec.js
@@ -77,7 +77,7 @@
.should('be.visible');
cy.contains('tr', archivedRepo.url)
.should('be.visible')
- .children('#visit-status-origin-2')
+ .children('#visit-status-origin-0')
.children('i')
.should('have.class', 'fa-check')
.and('have.attr', 'title',
diff --git a/swh/web/assets/src/bundles/browse/origin-search.js b/swh/web/assets/src/bundles/browse/origin-search.js
--- a/swh/web/assets/src/bundles/browse/origin-search.js
+++ b/swh/web/assets/src/bundles/browse/origin-search.js
@@ -25,35 +25,35 @@
$('#origin-search-results tbody tr').remove();
}
-function populateOriginSearchResultsTable(data, offset) {
+function populateOriginSearchResultsTable(origins, offset) {
let localOffset = offset % limit;
- if (data.length > 0) {
+ if (origins.length > 0) {
$('#swh-origin-search-results').show();
$('#swh-no-result').hide();
clearOriginSearchResultsTable();
let table = $('#origin-search-results tbody');
- for (let i = localOffset; i < localOffset + perPage && i < data.length; ++i) {
- let elem = data[i];
- let browseUrl = Urls.browse_origin(elem.url);
- let tableRow = `
`;
- tableRow += `${elem.type} | `;
- tableRow += `${encodeURI(elem.url)} | `;
- tableRow += ` | `;
+ for (let i = localOffset; i < localOffset + perPage && i < origins.length; ++i) {
+ let origin = origins[i];
+ let browseUrl = Urls.browse_origin(origin.url);
+ let tableRow = `
`;
+ tableRow += `${origin.type} | `;
+ tableRow += `${encodeURI(origin.url)} | `;
+ tableRow += ` | `;
tableRow += '
';
table.append(tableRow);
// get async latest visit snapshot and update visit status icon
- let latestSnapshotUrl = Urls.browse_origin_latest_snapshot(elem.id);
+ let latestSnapshotUrl = Urls.api_1_origin_visit_latest(origin.url);
+ latestSnapshotUrl += "?require_snapshot";
fetch(latestSnapshotUrl)
.then(response => response.json())
.then(data => {
- let originId = elem.id;
- $(`#visit-status-origin-${originId}`).children().remove();
+ $(`#visit-status-origin-${i}`).children().remove();
if (data) {
- $(`#visit-status-origin-${originId}`).append('');
+ $(`#visit-status-origin-${i}`).append('');
} else {
- $(`#visit-status-origin-${originId}`).append('');
+ $(`#visit-status-origin-${i}`).append('');
if ($('#swh-filter-empty-visits').prop('checked')) {
- $(`#origin-${originId}`).remove();
+ $(`#origin-${i}`).remove();
}
}
});
@@ -64,8 +64,8 @@
$('#swh-no-result').text('No origins matching the search criteria were found.');
$('#swh-no-result').show();
}
- if (data.length - localOffset < perPage ||
- (data.length < limit && (localOffset + perPage) === data.length)) {
+ if (origins.length - localOffset < perPage ||
+ (origins.length < limit && (localOffset + perPage) === origins.length)) {
$('#origins-next-results-button').addClass('disabled');
} else {
$('#origins-next-results-button').removeClass('disabled');