|
4 | 4 | <field name="name">Properties</field> |
5 | 5 | <field name="res_model">estate.property</field> |
6 | 6 | <field name="view_mode">list,form</field> |
| 7 | + <field name="context">{'search_default_available': True, 'search_default_current': True}</field> |
7 | 8 | </record> |
8 | 9 |
|
9 | 10 | <record id="estate_property_view_search" model="ir.ui.view"> |
|
15 | 16 | <field name="postcode"/> |
16 | 17 | <field name="expected_price"/> |
17 | 18 | <field name="bedrooms"/> |
18 | | - <field name="living_area"/> |
| 19 | + <field name="living_area" filter_domain="[('living_area', '>=', self)]"/> |
19 | 20 | <field name="facades"/> |
20 | | - <filter string="Available" name="available properties" domain="[ ('state', 'in', ['new', 'offer received']) ]"/> |
| 21 | + <filter string="Available" name="available" domain="[ ('state', 'in', ['new', 'offer received']) ]"/> |
21 | 22 | <filter string="Postcode" name="postcode" context="{'group_by':'postcode', 'residual_visible':True}"/> |
22 | 23 | </search> |
23 | 24 | </field> |
|
27 | 28 | <field name="name">estate.property.list</field> |
28 | 29 | <field name="model">estate.property</field> |
29 | 30 | <field name="arch" type="xml"> |
30 | | - <list string="Channel"> |
| 31 | + <list string="Channel" decoration-muted="state == 'sold'" decoration-success="state in ('offer received', 'offer accepted')" decoration-bf="state == 'offer accepted'"> |
31 | 32 | <field name="name"/> |
32 | 33 | <field name="postcode"/> |
33 | 34 | <field name="bedrooms"/> |
34 | 35 | <field name="living_area"/> |
35 | 36 | <field name="expected_price"/> |
36 | 37 | <field name="selling_price"/> |
37 | | - <field name="date_availability"/> |
38 | | - <field name="tag_ids" widget="many2many_tags"/> |
| 38 | + <field name="date_availability" optional="hide"/> |
| 39 | + <field name="tag_ids" widget="many2many_tags" options="{'color_field': 'color'}"/> |
39 | 40 | <field name="total_area"/> |
40 | 41 | </list> |
41 | 42 | </field> |
|
47 | 48 | <field name="arch" type="xml"> |
48 | 49 | <form string="property"> |
49 | 50 | <header> |
50 | | - <button name="set_property_sold" type="object" string="SOLD"/> |
51 | | - <button name="set_property_cancelled" type="object" string="CANCEL"/> |
| 51 | + <button name="set_property_sold" type="object" string="SOLD" invisible="state in ('sold', 'cancelled')"/> |
| 52 | + <button name="set_property_cancelled" type="object" string="CANCEL" invisible="state in ('sold', 'cancelled')"/> |
52 | 53 | <field name="state" widget="statusbar" statusbar_visible="new, offer received, offer accepted, sold"/> |
53 | 54 | </header> |
54 | 55 | <sheet> |
|
58 | 59 | </h1> |
59 | 60 | </group> |
60 | 61 | <group> |
61 | | - <field name="tag_ids" widget="many2many_tags"/> |
| 62 | + <field name="tag_ids" widget="many2many_tags" options="{'color_field': 'color'}"/> |
62 | 63 | </group> |
63 | 64 | <group> |
64 | 65 | <group> |
65 | | - <field name="property_type_id"/> |
| 66 | + <field name="property_type_id" options="{'no_create': true, 'no_create_edit': true}"/> |
66 | 67 | <field name="postcode"/> |
67 | 68 | <field name="date_availability"/> |
68 | 69 | </group> |
|
81 | 82 | <field name="facades"/> |
82 | 83 | <field name="garage"/> |
83 | 84 | <field name="garden"/> |
84 | | - <field name="garden_area"/> |
85 | | - <field name="garden_orientation"/> |
| 85 | + <field name="garden_area" invisible="not garden"/> |
| 86 | + <field name="garden_orientation" invisible="not garden"/> |
86 | 87 | <field name="total_area"/> |
87 | 88 | </group> |
88 | 89 | </page> |
89 | 90 | <page string="Offers"> |
90 | 91 | <group> |
91 | | - <field name="offer_ids"/> |
| 92 | + <field name="offer_ids" readonly="state in ('sold', 'offer received', 'cancelled')"/> |
92 | 93 | </group> |
93 | 94 | </page> |
94 | 95 | <page name="notes" string="Notes"> |
|
0 commit comments