fix(portal): consistent breadcrumb position + history + column height parity
Three coordinated portal-chrome fixes:
1. Drop `breadcrumbs_searchbar=True` from the four list templates
(quote_requests, jobs, deliveries, certifications). They were
suppressing Odoo's outer breadcrumb container, so the breadcrumb
rendered inside portal.portal_searchbar in the right column on
those pages. With the flag off, the outer container fires on
every /my/* page (consistent with the dashboard, configurator,
and detail pages). The portal_searchbar's else-branch now renders
the page title in a Bootstrap navbar — the title still shows,
just no longer doubled up as breadcrumb chrome.
2. Breadcrumb history pass in fp_portal_breadcrumbs.xml:
- fp_jobs / fp_portal_job: rename label from "Parts Portal" to
"Work Orders" so the breadcrumb matches the sidebar item.
- fp_purchase_orders / fp_invoices: drop the dead stanzas. Both
page_names are unreachable since Task 7 turned those routes
into redirects.
- fp_account_summary: add the missing entry so the new page has
a trail.
3. Drop `align-items: start` on .o_fp_portal_shell and add
min-height: 100% + min-width: 0 on .o_fp_portal_main. The right
column now stretches to match the sidebar's height on short
pages, so layouts look uniform. min-width: 0 lets wide table
children scroll horizontally instead of forcing the grid track
to grow.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -10,7 +10,6 @@
|
||||
display: grid;
|
||||
grid-template-columns: 240px 1fr;
|
||||
gap: $fp-space-5;
|
||||
align-items: start;
|
||||
background: $fp-page-bg;
|
||||
min-height: calc(100vh - 80px);
|
||||
padding: $fp-space-4;
|
||||
@@ -146,3 +145,14 @@
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.o_fp_portal_main {
|
||||
// Stretches with the grid row so the right column matches the
|
||||
// sidebar's height on short pages (empty list states, statements
|
||||
// tab, etc.) — uniform visual rhythm.
|
||||
min-height: 100%;
|
||||
// Bootstrap tables can grow wider than the grid track without this;
|
||||
// min-width: 0 lets the flex/grid child shrink and lets overflow-x
|
||||
// on inner .table-responsive containers do their job on Safari.
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
@@ -62,13 +62,13 @@
|
||||
<li t-if="page_name == 'fp_jobs'"
|
||||
class="breadcrumb-item active"
|
||||
aria-current="page">
|
||||
Parts Portal
|
||||
Work Orders
|
||||
</li>
|
||||
|
||||
<!-- Job detail -->
|
||||
<li t-if="page_name == 'fp_portal_job'"
|
||||
class="breadcrumb-item">
|
||||
<a href="/my/jobs">Parts Portal</a>
|
||||
<a href="/my/jobs">Work Orders</a>
|
||||
</li>
|
||||
<li t-if="page_name == 'fp_portal_job'"
|
||||
class="breadcrumb-item active"
|
||||
@@ -76,18 +76,11 @@
|
||||
<span t-out="job.name"/>
|
||||
</li>
|
||||
|
||||
<!-- Purchase Orders -->
|
||||
<li t-if="page_name == 'fp_purchase_orders'"
|
||||
<!-- Account Summary -->
|
||||
<li t-if="page_name == 'fp_account_summary'"
|
||||
class="breadcrumb-item active"
|
||||
aria-current="page">
|
||||
Purchase Orders
|
||||
</li>
|
||||
|
||||
<!-- Invoices -->
|
||||
<li t-if="page_name == 'fp_invoices'"
|
||||
class="breadcrumb-item active"
|
||||
aria-current="page">
|
||||
Invoices
|
||||
Account Summary
|
||||
</li>
|
||||
|
||||
<!-- Deliveries / Packing Slips -->
|
||||
|
||||
@@ -11,7 +11,6 @@
|
||||
<!-- ================================================================== -->
|
||||
<template id="portal_my_quote_requests" name="My Quote Requests">
|
||||
<t t-call="portal.portal_layout">
|
||||
<t t-set="breadcrumbs_searchbar" t-value="True"/>
|
||||
<t t-call="portal.portal_searchbar">
|
||||
<t t-set="title">Quote Requests</t>
|
||||
</t>
|
||||
@@ -422,7 +421,6 @@
|
||||
<!-- ================================================================== -->
|
||||
<template id="portal_my_jobs" name="My Work Orders">
|
||||
<t t-call="portal.portal_layout">
|
||||
<t t-set="breadcrumbs_searchbar" t-value="True"/>
|
||||
<t t-call="portal.portal_searchbar">
|
||||
<t t-set="title">Work Orders</t>
|
||||
</t>
|
||||
@@ -580,7 +578,6 @@
|
||||
<!-- ================================================================== -->
|
||||
<template id="portal_my_deliveries" name="My Deliveries">
|
||||
<t t-call="portal.portal_layout">
|
||||
<t t-set="breadcrumbs_searchbar" t-value="True"/>
|
||||
<t t-call="portal.portal_searchbar">
|
||||
<t t-set="title">Packing Slips / Deliveries</t>
|
||||
</t>
|
||||
@@ -622,7 +619,6 @@
|
||||
<!-- ================================================================== -->
|
||||
<template id="portal_my_certifications" name="My Certifications">
|
||||
<t t-call="portal.portal_layout">
|
||||
<t t-set="breadcrumbs_searchbar" t-value="True"/>
|
||||
<t t-call="portal.portal_searchbar">
|
||||
<t t-set="title">Certifications & Quality</t>
|
||||
</t>
|
||||
|
||||
Reference in New Issue
Block a user