Portrait 6.4.0 - Schöpfl

Released: Aug 31, 2023

Release notes – Portrait - 6.4.0

This version adds push notifications and speeds up the development workflow.

Push notifications

Push notifications can be activated per device and entry or source.

Push notifications are not available in the public-mode (without authentication).

Subscription to entries

A user can subscribe to specific entries for a section.

A notification will be sent once a reindex operation changes any properties of this item:

Subscription to sections

A user can subscribe to the entire section:

Users will be notified when the section is re-indexed and there was at least one entry created, updated or deleted:

 

Storage of subscriptions

The subscriptions are bound to the subscribed entity (single entry / entire source). So if a source is removed from the configuration, the subscriptions for it are also removed. The same applies to deleted entries after a reindex operation.

Overview of active subscriptions

Active subscriptions are now visible in the user settings (accessible via the user-icon). A user can manage all his subscriptions, from this view:

 

Sections

POR-667 optimize section header

With the introduction of Push Notifications, the section menu got crowded. We therefore decided to clean up the menu and arrange every function behind a dropdown.

POR-673 List-view on mobile

The list on mobile receives a secondary line for more insights inside a list.

Forms

Constant improvements and more features. New elements such as “paragraph” and “document” were added. Other elements were visually improved.

POR-658 New style for RadioButton and Checkbox + Description

The style is optimized for touch interfaces and supports a description text per entry.

POR-565 Disable autocomplete on fields where it makes no sense

Form fields of type “Number” and “String” now have the browser autocomplete feature deactivated.

POR-585 Support browser back/forward for form pages

The flexibility of forms (modal vs. full-screen) and conditional multi-pages does not play nice with the browser “one step back in history” functionality. We no longer support Back/Forward events in a form.

POR-586 Forms: Use displayText instead of name for mouseover of Entry Field

Small optimization: We now show the displayText on mouse-over instead of the real field name.

POR-656 Add min/max to number

A Number field supports now the min and max property.

POR-657 new field type markdown

You can now add text (aka. markdown) in a form. This helpful if you want to use styled content inside your form. Useful if you want to explain the procedure or what the form is used for…

POR-660 make barcode-picker style in the same way as the photo picker

The barcode-picker in forms got a slight redesign.

Administration

The workflow for development was streamlined in several aspects. In summary, this helps when editing the config, and should reduce the need for backend restarts. See also: Reload Configuration

POR-651 Hot reload YML config

More configurations now support the hot reload function. Including:

  • SQL and ELO connections

  • Custom Icons/Favicons (might require clearing of browser cache)

  • Mapbox

  • Mail

POR-674 Reload of SQL and ELO connections

SQL/ELO Connections can now be edited in the YML file and reloaded without the need for a restart of Portrait. Furthermore, if a connection can’t be established right now, a reconnect will automatically be triggered once a reindex is taking place.

POR-694 Custom timeout for ELO connections

The default timeout to connect to an ELO connection is changed to 5 seconds. This can be changed via an additional option, timeoutInSeconds. https://portrait.atlassian.net/l/cp/aGJi9vAC

POR-558 Reload button masquerade

The icons for the reindex trigger were changed to reduce confusion between “Configuration Reload” and “Source Reindex”.

POR-662 Configure dialog of forms in a separate file

Previously the JSON for the form dialog had to be configured inside the YML which was not very convenient to use. Now you can just specify a path to a separate file. This way the syntax highlighting works correctly, and you are able to detect errors more quickly.

POR-696 Extended handlebar helpers for field processors

We extended the functionality of handlebars within the field processors to support additional String and List Helper Functions. There are now helpers available like splitBySemicolon or splitByComma

Details: https://portrait.atlassian.net/l/cp/mASmKXQq

POR-685 docker-compose map log files to the VS Code instance

Log files are now available directly in VS Code web

Bugfixes

POR-652 Add to favorites for sections not always displayed

POR-661 Submit to ELO: Delete action throws an error when no index is configured

POR-682 Backend dependency upgrade