feat: add dlv_partner_child_address_street — street/street2 and email below phone on child cards of the partner form
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
# Changelog
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
|
||||
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## [16.0.1.1.0] - 2026-10-04
|
||||
|
||||
### Changed
|
||||
- Email moved from directly under the name to below phone/mobile on the child
|
||||
cards.
|
||||
|
||||
## [16.0.1.0.1] - 2026-10-04
|
||||
|
||||
### Changed
|
||||
- Street2 is shown on its own line (only when filled) instead of after a
|
||||
comma behind street.
|
||||
|
||||
## [16.0.1.0.0] - 2026-10-04
|
||||
|
||||
### Added
|
||||
- Initial release.
|
||||
- Street and street2 on the child address cards of the partner form
|
||||
(Contacts & Addresses tab), for address-type children only.
|
||||
@@ -0,0 +1,47 @@
|
||||
# dlv_partner_child_address_street
|
||||
|
||||
## Overview
|
||||
|
||||
In the partner form, the **Contacts & Addresses** tab lists child records as
|
||||
kanban cards. For address-type children (delivery, invoice, other, ...) the
|
||||
standard card shows only zip, city and country, so several addresses of the
|
||||
same company look identical.
|
||||
|
||||
This addon changes those cards in two ways:
|
||||
|
||||
1. **Street and street2** are added to address-type children. Each is shown on
|
||||
its own line and omitted when empty.
|
||||
2. **Email is moved** from directly under the name to below phone/mobile, so the
|
||||
name, address and phone read as one block. This applies to all child cards,
|
||||
including contact (person) children.
|
||||
|
||||
Resulting order: name, function, street, street2, zip/city, country, phone,
|
||||
mobile, email.
|
||||
|
||||
## How it works
|
||||
|
||||
Pure view inheritance of `base.view_partner_form`; no models, no Python, no
|
||||
extra fields. `street` and `street2` are already loaded by the standard
|
||||
`child_ids` kanban, so no additional data is fetched. An xpath inserts the line
|
||||
before the zip/city block, inside the existing `type != 'contact'` condition. A
|
||||
second xpath moves the existing email `div` after the mobile `div`
|
||||
(`position="move"`).
|
||||
|
||||
Street and street2 are not shown for child contacts (persons); only the email
|
||||
move affects them.
|
||||
|
||||
## Scope
|
||||
|
||||
- Only the inline `child_ids` kanban of the partner form.
|
||||
- Other views (sale order address popup, partner kanban, ...) are not touched.
|
||||
|
||||
## Compatibility
|
||||
|
||||
- Odoo 16.0 (Community and Enterprise)
|
||||
- Depends on: `base`
|
||||
|
||||
## Credits
|
||||
|
||||
bv Domus La Vila — https://domuslavila.eu
|
||||
|
||||
License: LGPL-3
|
||||
@@ -0,0 +1,26 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
{
|
||||
"name": "DLV Partner Child Address Street",
|
||||
"summary": "Show street and street2 on the child contact/address cards "
|
||||
"of the partner form",
|
||||
"description": """
|
||||
In the partner form, the "Contacts & Addresses" tab shows child addresses
|
||||
(delivery, invoice, other) as kanban cards that only display zip, city and
|
||||
country. Addresses of the same company therefore look identical.
|
||||
|
||||
This addon adds street and street2 (each on its own line, only when filled)
|
||||
to the cards of address-type children. Child contacts (persons) are unchanged.
|
||||
""",
|
||||
"author": "bv Domus La Vila",
|
||||
"website": "https://domuslavila.eu",
|
||||
"category": "Contacts",
|
||||
"version": "16.0.1.1.0",
|
||||
"license": "LGPL-3",
|
||||
"depends": ["base"],
|
||||
"data": [
|
||||
"views/res_partner_views.xml",
|
||||
],
|
||||
"installable": True,
|
||||
"application": False,
|
||||
"auto_install": False,
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<record id="view_partner_form_child_street" model="ir.ui.view">
|
||||
<field name="name">res.partner.form.child.street</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="base.view_partner_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<!-- street/street2 are already loaded by the base child_ids kanban -->
|
||||
<xpath expr="//field[@name='child_ids']/kanban//div[hasclass('oe_kanban_details')]//div[@t-if="record.type.raw_value != 'contact'"]/div" position="before">
|
||||
<div t-if="record.street.raw_value"><field name="street"/></div>
|
||||
<div t-if="record.street2.raw_value"><field name="street2"/></div>
|
||||
</xpath>
|
||||
<!-- email below phone/mobile instead of directly under the name -->
|
||||
<xpath expr="//field[@name='child_ids']/kanban//div[hasclass('oe_kanban_details')]/div[@t-if="record.mobile.raw_value"]" position="after">
|
||||
<xpath expr="//field[@name='child_ids']/kanban//div[hasclass('oe_kanban_details')]/div[@t-if="record.email.raw_value"]" position="move"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user