Skip to content

UoE/WP2 bugfixes#5

Merged
dspeed2 merged 9 commits into
UoEMainLibrary:datashare-UoEMainLibrary-dspace-8_xfrom
dataquest-dev:uoe/sync-prs-2026-06-30
Jul 1, 2026
Merged

UoE/WP2 bugfixes#5
dspeed2 merged 9 commits into
UoEMainLibrary:datashare-UoEMainLibrary-dspace-8_xfrom
dataquest-dev:uoe/sync-prs-2026-06-30

Conversation

@milanmajchrak

@milanmajchrak milanmajchrak commented Jun 30, 2026

Copy link
Copy Markdown
Collaborator

This PR includes:
New feature:

  • Statistics pagination

Bugfix:

  • Reduced excessive console logging
  • Removed noise caused by unnecessary requests returning 401 and 403 responses
  • Fixed Datashare type to DataShare

milanmajchrak and others added 9 commits June 30, 2026 18:29
The statistics tables (e.g. the repository-wide "Total visits" report) rendered
every point in a single, ungoverned table and, combined with the backend cap of
10 items, users could only ever see the first 10 datasets.

Add client-side pagination to the shared StatisticsTableComponent so that all
reports paginate their points and every dataset can be browsed page by page.

- Render only the current page of points (default 10 per page).
- Show an ngb-pagination control when there are more points than fit on a page.
- Add the `statistics.table.pagination.label` i18n key for accessibility.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Replace the raw ngb-pagination control with DSpace's standard PaginationComponent
(ds-pagination) for consistency with the rest of the UI. Each statistics report
table now paginates its points independently via a unique pagination id, the
current page is driven through PaginationService, and the standard "Now showing
X - Y of Z" detail and page-size selector are shown.

- StatisticsTableComponent: build PaginationComponentOptions and derive the
  current page of points from PaginationService.getCurrentPagination().
- Template: wrap the table in <ds-pagination> and iterate the paged points.
- Remove the custom statistics.table.pagination.label i18n key (ds-pagination
  provides its own accessible labels).
- Provide a mocked PaginationService in the statistics page specs.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Make the ds-pagination id unique per scope (use report.id, i.e.
  `<dso-uuid>_<reportType>`) so navigating between scopes that share a report
  type (e.g. TotalVisits) no longer reuses a stale page from the URL.
- Hide the page-size gear so pageSize behaves as a fixed, input-driven size.
- Hide the pagination detail/bar for single-page reports, so the pagination
  UI only appears when there are more points than fit on one page.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Re-enable the standard ds-pagination "results per page" selector (gear) so users
can choose how many datasets to show per page (10/20/40/60/80/100), reusing the
built-in PaginationComponent control. The gear and pagination detail are shown
only when a report has more rows than fit on one page; pageSize remains the
default. The page slicing already honours the selected size.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
UoE/Add pagination to statistics tables (DSpace#726)
Make the running app look professional by removing development console
logging and eliminating avoidable failed network requests. Each issue was
reproduced against the live dev and production instances and traced to its
source.

Console noise removed (fired during normal browser use):
- "Bitstream: <object>" logged once per file on every item page
- "Environment extended with app config" on every page load
- debug logs across the submission, upload, access-control and datashare
  services, the submission footer and the section container

Avoidable failed requests eliminated (the request is now avoided, since a
browser always logs a network 404/401 that JS cannot suppress):
- 404 google.analytics.key on every page -> gated behind a new
  info.enableGoogleAnalytics flag (default false; DataShare does not use GA)
- 404 bulkedit.export.max.items on /search -> only requested once the admin
  export button is shown
- 401 qualityassurancesources on item pages for anonymous users -> gated on
  the CanSeeQA authorization inside the QA component
- 404 /favicon.ico -> the DataShare favicon is served from the web root

Specs updated for the new GA flag and CanSeeQA gate (with added coverage).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…bed when the export button is shown

Locks in the fix from this PR so a regression that reintroduces the per-page
404 (probing the config property for non-admin/anonymous users) is caught.
Addresses Copilot review feedback.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
UoE/Fixed `Datashare` typo to `DataShare`
@dspeed2 dspeed2 merged commit 0817ead into UoEMainLibrary:datashare-UoEMainLibrary-dspace-8_x Jul 1, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants