January
Goobi viewer Digest for January 2022

Coming soon
🚀

  • Cookie banner management
  • Display of a disclaimer for records
  • CMS page as start page for records
  • Upload of records

Developments

Backend

As announced in the December Digest, we have changed the backend from the blue colour to a more neutral dark colour. This change has the advantage that the colour is much more compatible with most designs in the frontend than the previous shade of blue.
A dark shade replaces the previous blue with immediate effect.

Widgets

The area for widget management of CMS pages in the backend is completely new.
The previous solution - in which widgets were assigned and configured on the CMS page itself - had two decisive disadvantages:
  1. 1.
    widgets that should be repeated on many pages have to be created individually on each page
  2. 2.
    individually created widgets with HTML text were not translatable.
Both disadvantages were eliminated with the widget management. On the new page in the backend, a distinction is made between three types of widgets:
  • static widgets
  • automatic widgets
  • individual widgets
Static widgets result from the functionality and configuration in the core. This is, for example, the widget with the configured fields for browsing or the configured options for faceting. Automatic widgets result from functionality that is always available as a sidebar widget. An example is the map, which - once created and configured - can be embedded either in the content area of a CMS page or in the sidebar. Individual widgets are, for example, HTML widgets or RSS feeds that have been limited to a subset using a Solr query.
All widgets are now displayed and configured in a central place. In this way, for example, HTML widgets with contact data that are repeated on many CMS pages can be created once, recently also translated and then integrated on many pages. If information is to be changed, this is now only done in one place. There is no need to search for the CMS pages concerned. The integration of the widgets is still done via the CMS page. However, configuration options are no longer available there and the assignment and sequence have been adjusted so that operation is now analogous to the menu.
If an individual widget has the option to translate content, an indicator with the status is displayed in the familiar colours in the top right-hand corner of the widget tile.
During an update, the previous widgets are automatically converted to the new structure. Nevertheless, the pages should be checked again afterwards to be on the safe side.
The new overview page about widgets in the backend ...
... shows the existing widgets, their usage and translation status.
A preview is available when creating or editing widgets
The assignment and arrangement of widgets in CMS pages has been adapted to the operating concept of the menu.

Groups

When it comes to managing user groups, we have received feedback over the last month with suggestions for improvements, which we have implemented in this release. This are:
  1. 1.
    In the lists in which the group owner or the members of the group are selected, the first and last name as well as the e-mail address are displayed in addition to the optional display name.
  2. 2.
    The two lists addressed are automatically sorted according to the e-mail address.
  3. 3.
    The owner is automatically member of a group. This was not clear before. Therefore, he is now automatically included in the list of members. The inline help has also been extended accordingly.
We expect that with these adjustments the administration of groups - especially when many users are registered - will be much easier. At this point, we would like to thank the various institutions that have sent us feedback.
The fuzzy search is ready! A search for "Göthe" can also find "Goethe", or a search for "Gmunden" can also find "Gründen". There are many potential application scenarios for this. If required, the unified search can be activated via a new configuration switch. We plan to make this global switch accessible and controllable to the user in the frontend in the future by revising the mask for the advanced search.
Another new feature is a distance search, which we also call "proximity search". It can be used to find words that are not directly next to each other but at a certain distance from each other.
To do this, the two words are placed in inverted commas and indicated directly behind them with a tilde and the maximum distance between them. For example, if you search for the two words Bibliothek and Schriften with a maximum distance of 10 words between them, the search term is as follows:
1
"Bibliothek Schriften"~10
Copied!
In the search results, the respective complete string is then highlighted accordingly:

Translations

For some time now it has been possible to maintain parts of the translation of the Goobi viewer in the backend. A new feature is the ability to add your own message strings. These are automatically created with the prefix customer__ and then automatically appear in the area of customer-specific entries. In this way, for example, the translation of individual entries in the menu can be maintained independently and without access to files in the file system.
Create new entries in the messages files directly via the backend

Dark Mode & Sticky Sidebar

The Reference Theme has received two decisive innovations: Dark Mode, which was announced in December, has been completed and developments have flowed back into the stable branch. These changes have a visual effect on the surface, but the cleaner structures in the code are clearly more important here.
The other new feature is the "stickyness" of the sidebar. In the backend, this functionality has been around for a while: when the page scrolls, there is a certain intelligence between the scrolling behaviour in the content area and the sidebar. These always move in the same direction when scrolling, but when they reach the bottom they stop and do not scroll out. We have extended this functionality to the frontend and initially implemented it in the Reference Theme. The main effect of this change is that content remains visible to users in the browser window for much longer.
Dark Mode and Sticky Sidebar

Accessibility

In the area of accessibility, there has been a change in the heading structure. Previously, the first class heading was the main installation slogan in the header. For example, "Goobi viewer" or "Digital library" etc.
For screen readers, this meant that headings such as "Search", "Table of contents" or "Timeline" always came second. However, this makes no sense in terms of content, because it is the main heading of the page and the main slogan is independent of it.
For this reason, the heading structure was changed and the main slogan removed from the hierarchy. Visually, this does not lead to any changes, but for visitors who visit a Goobi viewer with a screen reader, the structure of the headings is now simpler and more intuitive.

Themes

Extensive changes have been made to the way meta tags, Javascript and CSS libs are integrated into themes. Whereas these were previously maintained for different pages (standard template, full-screen mode, backend, ...) in the corresponding template files of the theme, they can now be controlled centrally via the core and then only added individually in the templates. This makes updates and new developments easier.

Version numbers

The versions that must be entered in the pom.xml of the theme in order to get the functions described in this digest are:
1
<dependency>
2
<groupId>io.goobi.viewer</groupId>
3
<artifactId>viewer-core</artifactId>
4
<version>22.01.2</version>
5
</dependency>
6
<dependency>
7
<groupId>io.goobi.viewer</groupId>
8
<artifactId>viewer-core-config</artifactId>
9
<version>22.01</version>
10
</dependency>
11
<dependency>
12
<groupId>io.goobi.viewer</groupId>
13
<artifactId>viewer-connector</artifactId>
14
<version>22.01</version>
15
</dependency>
Copied!
The Goobi viewer Indexer has the version number 22.01
The Goobi viewer Crowdsourcing Module has the version number 22.01.1