Skip to content

Add the visible signature warning option to user preferences #8324

Description

@vitormattos

Context

Part of #8321.

#8322 adds the user preference used to control the warning about signers without visible signature fields.

Users must be able to change this preference later from the LibreSign preferences screen.

The warning itself is implemented in #8323.

Expected behavior

Add a setting to the existing LibreSign user preferences screen.

Suggested label:

Warn me when requesting signatures without visible fields

Suggested description:

Show a warning when one or more signers will sign without a visible signature on the PDF.

Use an existing Nextcloud switch component.

The current value comes from:

warn_without_visible_signature_fields

Expected behavior:

  • true: warning enabled;
  • false: warning disabled.

The default is true.

Preferences screen

Add the setting to the existing:

src/views/Preferences/Preferences.vue

Keep the current LibreSign preferences layout and components.

Do not create:

  • a new preferences page;
  • a new settings framework;
  • a policy definition for this option.

This is a normal user configuration, not a LibreSign policy.

Saving

Reuse the existing user configuration API from #8322:

PUT /apps/libresign/api/v1/account/config/{key}

Use:

warn_without_visible_signature_fields

When the user changes the switch, save:

  • 1 when enabled;
  • 0 when disabled.

The UI must reflect the current saved value when the page is opened.

Save errors

Follow the existing Preferences UI behavior for save feedback.

If the request fails:

  • restore the previous switch value;
  • show the normal LibreSign error feedback;
  • do not leave the UI showing a value that was not saved.

Do not add a custom error system only for this setting.

Restore the warning

If the requester selected the option to stop showing the warning in #8323, this switch will be disabled when the preferences page is opened.

Turning the switch on again must save:

warn_without_visible_signature_fields = 1

This restores the warning for future affected signature requests.

Do not add a separate button such as:

  • Reset warning;
  • Clear preference;
  • Show again.

The switch is enough.

Frontend tests

Update:

src/tests/views/Preferences/Preferences.spec.ts

Cover at least:

  • the setting is rendered;
  • default true renders the switch enabled;
  • saved false renders the switch disabled;
  • changing from enabled to disabled saves 0;
  • changing from disabled to enabled saves 1;
  • a failed save restores the previous value;
  • a failed save shows an error.

Reuse the existing Preferences test setup and mocks.

Do not create a separate test file only for this setting unless the current file becomes difficult to maintain.

End-to-end coverage

Do not duplicate the complete requester workflow here.

#8323 already covers the Playwright behavior of the warning and the saved preference.

This issue only needs to make sure that the user can change the same preference from the Preferences screen.

If an existing Preferences Playwright test already covers user settings, extend it with a small check for this option.

Otherwise, frontend tests in Preferences.spec.ts are enough for this issue, while the cross-flow behavior remains covered by #8323.

Out of scope

This issue does not implement:

  • backend preference storage;
  • the requester warning;
  • signer-side information;
  • validation-page changes;
  • a new LibreSign policy.

Good first issue

The backend preference is implemented in #8322.

The LibreSign Preferences screen and its test file already exist.

The main work is:

  • add one switch to the existing Preferences screen;
  • load warn_without_visible_signature_fields;
  • save 1 or 0 through the existing user config API;
  • add focused frontend tests.

Please reuse the current LibreSign and Nextcloud components and keep the change small.

Additional context

  • If you have questions, feel free to ask in this issue.
  • Give a ⭐️ star to this repository if you find LibreSign useful and would like to support the project.
  • You can also join our community: https://t.me/LibreSign

Done when

  • The setting is shown in LibreSign user preferences.
  • The saved value is loaded correctly.
  • The default is enabled.
  • The user can enable or disable the warning.
  • Changes use the existing user config API.
  • Failed saves restore the previous UI state.
  • Frontend tests cover the expected behavior.
  • No new policy or settings framework is introduced.

Activity

  1. maia-andre commented on Sep 13, 2026

    @maia-andre
    Contributor

    I took this one, building on the preference added in #8322: PR #8382 adds the switch to the existing Preferences screen as a plain user configuration (own section, no policy, no new framework), saved through PUT /account/config/{key} as 1/0, with the seven frontend tests listed here and screenshots of the manual check in the description.

  2. added a commit that references this issue on Sep 13, 2026
    cad2cdc
  3. moved this from 0. Backlog to 4. to release in LibreSign Roadmapon Sep 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Fields

    Priority

    Low

    Start date

    None yet

    Target date

    None yet

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions