[19.0]IMP] base_tier_validation: UI clean-up#23
Open
bosd wants to merge 6 commits into
Open
Conversation
Contributor
|
Hi @LoisRForgeFlow, |
Small UX polish on the Tier Definition / Tier Review views:
- Tier Definition search view: add an explicit *Archived* filter
alongside the existing *All* filter, so archived definitions can
be surfaced in one click without resorting to the bare ``active``
search field.
- Tier Definition form + list: render the ``reviewer_id`` field
(individual review type) with ``many2one_avatar_user`` so the
reviewer's avatar is shown next to their name, matching the rest
of Odoo and making the screen scannable at a glance.
- Tier Definition *More Options* tab renamed to *Notifications &
Options* and split into two clearly-titled columns:
- *Notify reviewers when*: all ``notify_*`` flags plus
``notify_reminder_delay``.
- *Review options*: ``has_comment``.
The previous flat group mixed conceptually different settings
(notification routing vs. review-time behaviour).
- Tier Review list: avatar widget on ``requested_by`` and
``done_by``; ``decoration-warning`` on pending rows and
``decoration-muted`` on waiting rows -- complementing the existing
decorations for rejected (danger) and approved (success), so the
row state is visible at a glance.
- Tier Definition action: add a friendly empty-state help message
explaining what tier definitions are and how they chain via
*Approve by sequence*.
4d97d2e to
e1df8e8
Compare
added 2 commits
May 13, 2026 23:22
- Narrow the Sequence column: header becomes "#" with an explicit 2rem width via .o_tier_review_seq, freeing real-estate for the Description / Status / Todo by / Done by / Validation Date columns on cramped form views. - Left-align all text columns (Description, Status, Todo by, Done by, Validation Date, Comment) -- the previous text-end was right-aligning short text values in already-cramped columns, which made the header visually drift away from the value. - Modernize the Bootstrap 3 leftovers from the original widget: panel/panel-default/panel-heading/panel-title/panel-body -> card + card-header/card-title/card-body; data-toggle -> data-bs-toggle and data-target -> data-bs-target; table-condensed -> table-sm; oe_mt32 -> mt-4. The widget still renders the same way but uses classes that actually exist in Bootstrap 5 (which Odoo 19 ships). - Row status colouring: replace alert/alert-success/alert-danger (which are Bootstrap components designed for <div>, not <tr>, and don't tint the row consistently) with the proper Bootstrap 5 contextual table classes table-success / table-danger. - Scope all custom CSS rules under a new .o_tier_review_widget root class so they no longer rely on the now-renamed .panel-* selectors and won't leak to other Bootstrap cards on the page.
Follow-up to the Bootstrap 3 -> 5 migration of the Reviews widget
template: onToggleCollapse looked up the heading element via
.closest(".panel-heading"), which no longer matches anything since
the template now uses .card-header. The collapse toggle was a no-op
after the migration.
Switch the selector to .card-header and add optional chaining on
nextElementSibling.matches so a defensive check survives any future
DOM rearrangement instead of throwing.
added 2 commits
May 14, 2026 17:01
The module's app icon recently switched to an xmark + check motif. Bring the rest of the UI iconography in line: - Systray dropdown: fa-pencil-square-o -> fa-check-square-o. Avoids the visual collision with the sale / invoice systray entries which use fa-pencil-square-o, and matches the checkbox+check shape of the app icon. - Validate button: fa-thumbs-up -> fa-check (fa-lg). Reject button: fa-thumbs-down -> fa-times (= xmark, fa-lg). Same for the validated / rejected alert banners on the document and the matching HTML message bodies posted to chatter -- single consistent xmark+check vocabulary across systray, alert, button and chatter message. - Restart Validation button: was bare; now fa-rotate-left so the three workflow buttons (Request / Validate / Restart) all read with a glanceable icon.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Small UX polish on the Tier Definition / Tier Review views, picked up from feedback on a real-world rollout.
Changes
Tier Definition
Search view: explicit Archived filter next to the existing All filter, so archived definitions can be surfaced in one click. Before, you had to type
active = Falseinto the bare search field.Form view:
reviewer_id(individual review type) now useswidget=\"many2one_avatar_user\"so the reviewer's avatar is rendered next to their name. Matches the rest of Odoo (sale, project, helpdesk, etc.).List view: same avatar widget on
reviewer_id.More Options tab: renamed to Notifications & Options and split into two clearly-titled groups:
notify_*flags +notify_reminder_delay.has_comment.Before, every flag sat in one flat group
notifywhich lumped together notification routing and review-time behaviour. Two columns with explicit titles make the intent obvious.Empty-state: helpful help message on the action so a fresh install actually explains what tier definitions are and how to chain them with Approve by sequence.
Tier Review (used embedded under the validated document and in the systray tray)
requested_byanddone_by.decoration-warningfor pending anddecoration-mutedfor waiting, complementing the existingdecoration-danger(rejected) anddecoration-success(approved). Row state is now visible at a glance.Screenshots
After:

New archived filter:

Test plan
base_tier_validation, install one of the bridge modules (e.g.account_move_tier_validation).Notes
This PR only touches views + the action's help text. No model or test changes. It does not depend on PRs #21 (auto-promote fix) or #22 (chatter body); ordering between the three is up to the maintainers.
CC @LoisRForgeFlow