Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix user list #104

Conversation

Chloe070196
Copy link

This patch aims to fix the issue where Ebsco and Summon records cause user list pages to crash, or result in improper render of records on these pages.

There were in fact two issues:

1- the records were not added to user_entry_list (unless they were groupedWorks)
2- the list was not displayed, and instead the user would see an error stating that getRecords is undefined

Probable causes:

1- the sourceId having a type of VARCHAR(50)
(some sourceIds, for example the ones associated with summon records, exceed that limit, which led to an
uncaught error being thrown by the database)
2- during the render of the list, the searchObject for each record is generated using
SearchObjectFactory::initSearchObject($sourceType). For groupedWorks, this implements a class that
includes a getRecord method. For all other sourceTypes however, it used SearchObject_BaseSearcher
which does not implement that method.

Test plan: (to go through first without then with the patch applied)

  • login in on Aspen as an admin
  • enable Summon and Ebsco (Aspen Administration > Modules - select the matching modules, and check
    enable)
  • create a new Summon (Summon > Settings > Add New) using your summon credentials
  • create a new Ebsco (Ebsco > Settings > Add New)
  • create a new list (Account > Your Lists > Create a New List)
  • add summon and ebsco records to your new list (run a search in Articles and Databases, scroll through,
    and select 'Add to List')
  • navigate to Account > Your Lists >
  • check that all the records you added are present
  • check that they all display properly, including covers, and that all buttons and links are working

lizrea and others added 30 commits August 2, 2024 16:27
Logs directory was getting wrong ownership, moving the logs directory ownership command to after the permission changes for the parent should fix it

to test: 
run updateSitePermissions.sh <sitename>, observe that the permissions for var/log/aspen-discovery/<site>/logs are www-data:aspen_apache

apply this patch
run updateSitePermissions.sh <sitename>, observer that the permissions for /var/log/aspen-dsicovery/<site>/logs are now aspen:aspen
Functionality for custom self registration forms and ILS-based self registration via Sierra APIs for Sierra libraries
Added TOS functionality for CarlX self registration via ILS
Added release notes & DB updates
- Fixes dumb SQL mistake in whole-grade report
- Improves record sort order with feedback from KW. Whole-grade report now sorts by student name. Whole-school report now sorts by grade, then student name.
Fix error when using RENAME COLUMN by using CHANGE COLUMN instead
temporary bandaid due to bugs with the setting not playing well with consortia
This sets up the CSV file and triggers its download. It will contain the
column headers of the raw data table. The part setting up the output to
the browser is directly based on the build CSV function in
sys/UserLists/UserList.php, and only the filename has been changed. The
CSV is populated with as many rows of data as found within the raw usage
data table.
The branch name improperly extracted, leading to
$branchList[$branchName]->showInSearchFacet systematically evaluated to
false for scopes where the length of the scope code was not 4. All
locations for that scope would be filtered out, resulting in empty
facets which would therefore not be rendered.

This fix replaces the hardcoded offset in the substr() method by the
length of the scope + 1 to account for the #, allowing for proper branch
name extraction, and appropriate filtering.
…cet_location_filter

fix: extract branch name
…_for_existing_usage_graphs

Data download for existing usage graphs
In Koha, it is possible to create item groups (i.e. volumes) without attaching items to that group.
If an item group has no items, the volume level hold will be unfillable unless items are added to it at a future time.
For these reasons, it makes sense to filter these empty volumes out.

A possible future enhancement would be to make the display of empty volumes configurable.

Test Plan:
1) Set up an instance of Koha connected to Aspen Discovery
2) Create 10 items, and four item groups on one record
3) Attach 3 items to each of 3 of the item groups
4) Run koha_export.jar
5) Note the empty volume shows in the list of volumes you can place
   holds on
6) Check out this branch
7) Recompile koha_export.jar
8) Repeat step 4
8) Note the empty volume is no longer in the volume pulldown

Closes Aspen-Discovery#1989
Any libraries using the pre-release version of Koha's item groups ( i.e. volumes ) has since been upgraded past 22.11.
This code should be safe to remove now as it relates to a version of a feature that was never part of community Koha.

Test Plan:
No changes in behavior should be noted

Closes Aspen-Discovery#1990
lucasmontoya13 and others added 25 commits August 22, 2024 12:23
- Add and set supporting company field to aspen database in docker script
- Scans through /release_notes/ folder, grabs the MD files that match version format (00.00.00.MD). Grabs the most recent file from the array, then returns the file name as the version installed
Set alternateLibraryCard to '' (blank) instead of null
[pull] 24.09.00 from Aspen-Discovery:24.09.00
…ushed to the official repo

When a developer pushes a branch of Aspen Discovery to their own repo to
create a pull request, it triggers the building of Docker images.
The building of the images itself is good to find issues in the build
process, but the actions fail because the the actions can only log
in on the official repo.

This change resolves this be only logging in to the registries if the
commit is pushed to the official repo, while still allowing the docker
images to be build for testing purposes.
…t table styling and right align the number of deleted titles
Switch to using release notes file to determine current version
…ions_docker

For GitHub Actions only attempt to log in and push to container repos if the commit is pushed to the official repo
Add check for tabs vs spaces to GitHub Actions for Pull Requests
…_db_queries

Properly close the connections to Koha from Aspen
sourceIds can have more than 50 characters, in fact, for records such as
summons, it appears to be the norm. This resolves the first part of the
bug by now ensuring that records with longer sourceIds can be added to
the user_list_entry table.
This ensure that the generated search objects have the necessary methods
and properties. In this case, we need search object to have a getRecords
method so that user lists with records that are not grouped works can be
displayed. This, in turn requires properties and methods that do exist
on SearchObject_SolrSearcher but are absent from
SearchObject_BaseSearcher. If it turns out that SearchObjectFactory does
need to sometimes generate non-Solr search objects, then additional
control flow may be needed to enable this.
Fixes the 'SearchObject_SummonSearcher::getRecords is undefined' error
by adding the necessary method to this class/
The earlier check ascertained that no searchOptions had been allocated
to allow a records' data to be processed. If searchOptions were found,
they were assigned to this record, meaning that every record in a list
was assigned the search options of the very first record to be
processed. This meant all records were incorrectly assigned the sourceId
of the first one to be processed.

The current check also looks at the queryString, containing the record's
sourceId, meaning that each distinct record will be processed
individually, and that the correctId will be assigned. This then allows
for the check verifying that the record found is the record on the list
to return true, and for the record to be listed and rendered correctly.
@Chloe070196 Chloe070196 force-pushed the fix_ebsco_and_summon_user_list branch from 7c248ae to 2a7e56e Compare August 23, 2024 10:33
@Chloe070196 Chloe070196 force-pushed the fix_ebsco_and_summon_user_list branch from 857eda5 to 9fe2b5e Compare August 23, 2024 11:57
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.

9 participants