1
<?xml version = "1.0" encoding="utf-8"?>
4
<!--Add list of functions in partner view-->
5
<record id="view_contact_by_function_form" model="ir.ui.view">
6
<field name="name">contact.functions.form.inherit</field>
7
<field name="model">res.partner</field>
8
<field name="inherit_id" ref="base.view_partner_form"/>
9
<field name="arch" type="xml">
10
<notebook position="inside">
11
<page string="Functions"
12
attrs="{'invisible': [('is_company','=',False), ('child_ids', '=', [])]}"
13
autofocus="autofocus">
14
<separator string="Select functions for this organism"/>
15
<field name="functions_ids"/>
17
<page string="History (Functions)" attrs="{'invisible': ['|','|',('is_company','=',True),('contact_id','!=',False),('other_contact_history_ids','=',[])]}">
18
<separator string="History"/>
19
<!--<field name="other_contact_history_ids" readonly="1" domain="[('other_contact_ids.end_date','=','2013-12-06')]"/>-->
20
<field name="other_contact_history_ids" mode="kanban"
21
attrs="{'invisible': [('other_contact_history_ids','=',False)]}">
27
<field name="parent_id"/>
28
<field name="is_company"/>
29
<field name="function_id"/>
31
<field name="street"/>
32
<field name="street2"/>
35
<field name="country_id"/>
36
<field name="mobile"/>
38
<field name="state_id"/>
39
<field name="has_image"/>
41
<t t-name="kanban-box">
42
<div class="oe_kanban_vignette oe_semantic_html_override">
44
<t t-if="record.has_image.raw_value === true">
45
<img t-att-src="kanban_image('res.partner', 'image_small', record.id.value)"
46
class="oe_kanban_image"/>
48
<t t-if="record.has_image.raw_value === false">
49
<t t-if="record.is_company.raw_value === true">
50
<img t-att-src='_s + "/base/static/src/img/company_image.png"'
51
class="oe_kanban_image"/>
53
<t t-if="record.is_company.raw_value === false">
54
<img t-att-src='_s + "/base/static/src/img/avatar.png"'
55
class="oe_kanban_image"/>
59
<div class="oe_kanban_details">
60
<h4 class="oe_partner_heading">
65
<div class="oe_kanban_partner_categories"/>
66
<div class="oe_kanban_partner_links"/>
68
<li t-if="record.parent_id.raw_value and !record.function_id.raw_value">
69
<field name="parent_id"/>
71
<li t-if="!record.parent_id.raw_value and record.function_id.raw_value">
72
<field name="function_id"/>
74
<li t-if="record.parent_id.raw_value and record.function_id.raw_value">
75
<field name="function_id"/>
77
<field name="parent_id"/>
79
<li t-if="record.city.raw_value and !record.country.raw_value">
82
<li t-if="!record.city.raw_value and record.country.raw_value">
83
<field name="country"/>
85
<li t-if="record.city.raw_value and record.country.raw_value">
88
<field name="country"/>
90
<li t-if="record.email.raw_value">
91
<a t-attf-href="mailto:#{record.email.raw_value}">
101
<form string="Contact" version="7.0">
103
<field name="image" widget='image' class="oe_avatar oe_left"
104
options='{"preview_image": "image_medium"}'/>
105
<div class="oe_title">
106
<label for="name" class="oe_edit_only"/>
108
<field name="name" style="width: 70%%"/>
112
<!-- inherited part -->
113
<field name="category_id" widget="many2many_tags"
114
placeholder="Tags..." style="width: 70%%"/>
115
<field name="parent_id" placeholder="Company"
116
domain="[('is_company','=',True)]"/>
117
<!-- inherited part end -->
118
<field name="function_id" placeholder="e.g. Sales Director"/>
120
<field name="start_date" />
121
<field name="end_date"/>
122
<field name="naming"/>
124
<field name="email"/>
125
<field name="phone"/>
126
<field name="mobile"/>
129
<field name="use_parent_address"/>
130
<label for="use_parent_address"/>
134
<div name="div_type">
135
<field class="oe_inline" name="type"/>
137
<label for="street" string="Address"
138
attrs="{'invisible': [('use_parent_address','=', True)]}"/>
139
<div attrs="{'invisible': [('use_parent_address','=', True)]}"
141
<field name="street" placeholder="Street..."/>
142
<field name="street2"/>
143
<div class="address_format">
144
<field name="city" placeholder="City" style="width: 40%%"/>
145
<field name="state_id" class="oe_no_button"
146
placeholder="State" style="width: 37%%"
147
options='{"no_open": True}' on_change="onchange_state(state_id)"/>
148
<field name="zip" placeholder="ZIP" style="width: 20%%"/>
150
<field name="country_id" placeholder="Country"
151
class="oe_no_button" options='{"no_open": True}'/>
154
<field name="supplier" invisible="True"/>
155
<group string="Bank Accounts">
156
<field name="bank_ids" nolabel="1"/>
163
<!--Replace function by function_id defined by organism-->
164
<field name="function" position="replace">
165
<field name="function" attrs="{'invisible': [('is_company','=', True)]}"/>
167
<!--Add maiden name for contact-->
168
<field name="category_id" position="before">
169
<field name="maiden_name" attrs="{'invisible': [('is_company','=', True)]}" placeholder="Maiden name"/>
173
<!--Add passportnumber, deleverycoubtry, expiredDate in partner view-->
174
<record id="view_passport_info_form" model="ir.ui.view">
175
<field name="name">passport.info.form.inherit</field>
176
<field name="model">res.partner</field>
177
<field name="inherit_id" ref="base_contact.view_partner_form_inherit"/>
178
<field name="arch" type="xml">
179
<page name="personal-info" position="inside">
180
<group string="Passport information" col="6">
181
<field name="passport_number" />
182
<field name="delivered_country"/>
183
<field name="expiration_date"/>
188
<!--Add start_date, end_date, naming and account bank in partner view-->
189
<record id="view_position_info_form" model="ir.ui.view">
190
<field name="name">position.info.form.inherit</field>
191
<field name="model">res.partner</field>
192
<field name="inherit_id" ref="base_contact.view_partner_form_inherit"/>
193
<field name="arch" type="xml">
194
<xpath expr="//field[@name='other_contact_ids']/form//field[@name='function']"
197
<field name="start_date" />
198
<field name="end_date"/>
199
<field name="naming"/>
202
<xpath expr="//field[@name='other_contact_ids']/form//field[@name='supplier']"
204
<group string="Bank Accounts">
205
<field name="bank_ids" nolabel="1"/>
208
<xpath expr="//field[@name='other_contact_ids']/form//field[@name='parent_id']"
211
<field name="parent_id" placeholder="Company"
212
domain="[('is_company','=',True)]"
213
on_change="onchange_partner_function(parent_id)"/>
216
<xpath expr="//field[@name='other_contact_ids']/form//field[@name='function']"
219
<!--TODO; complete the filter for this field : function_id-->
220
<field name="function_id"/>
223
<xpath expr="//field[@name='other_contact_ids']/kanban//field[@name='function']"
226
<field name="function_id"/>
229
<xpath expr="//field[@name='other_contact_ids']/kanban//field[@name='has_image']"
232
<t t-name="kanban-box">
233
<t t-set="color" t-value="kanban_color(record.color.raw_value)"/>
234
<div t-att-class="color + (record.title.raw_value == 1 ? ' oe_kanban_color_alert' : '')"
235
style="position: relative">
236
<a t-if="! read_only_mode" type="delete"
237
style="position: absolute; right: 0; padding: 4px; diplay: inline-block">
240
<div class="oe_module_vignette">
242
<t t-if="record.has_image.raw_value === true">
243
<img t-att-src="kanban_image('res.partner', 'image',
244
record.id.value, {'preview_image': 'image_small'})"
245
class="oe_avatar oe_kanban_avatar_smallbox"/>
247
<t t-if="record.image and record.image.raw_value !== false">
248
<img t-att-src="'data:image/png;base64,'+record.image.raw_value"
249
class="oe_avatar oe_kanban_avatar_smallbox"/>
251
<t t-if="record.has_image.raw_value === false
252
and (!record.image or record.image.raw_value === false)">
253
<t t-if="record.is_company.raw_value === true">
254
<img t-att-src='_s + "/base/static/src/img/company_image.png"'
255
class="oe_kanban_image oe_kanban_avatar_smallbox"/>
257
<t t-if="record.is_company.raw_value === false">
258
<img t-att-src='_s + "/base/static/src/img/avatar.png"'
259
class="oe_kanban_image oe_kanban_avatar_smallbox"/>
263
<div class="oe_module_desc">
264
<div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_color_border">
265
<table class="oe_kanban_table">
267
<td class="oe_kanban_title1" align="left" valign="middle">
274
<t t-if="record.parent_id.raw_value and !record.function_id.raw_value">
275
<field name="parent_id"/>
277
<t t-if="!record.parent_id.raw_value and record.function_id.raw_value">
278
<field name="function_id"/>
280
<t t-if="record.parent_id.raw_value and record.function_id.raw_value">
281
<field name="function_id"/>
283
<field name="parent_id"/>
287
<a t-if="record.email.raw_value" title="Mail"
288
t-att-href="'mailto:'+record.email.value">
289
<field name="email"/>
292
<div t-if="record.phone.raw_value">
293
Phone: <field name="phone"/>
295
<div t-if="record.mobile.raw_value">
296
Mobile: <field name="mobile"/>
298
<div t-if="record.fax.raw_value">
299
Fax: <field name="fax"/>
311
have the same form for contact and other postions
312
<field name="parent_id" position="replace">
313
<field name="parent_id" placeholder="Company"
314
domain="[('is_company','=',True)]"/>
316
<xpath expr="//field[@name='child_ids']/form//field[@name='supplier']"
318
<group string="Bank Accounts">
319
<field name="bank_ids" nolabel="1"/>
322
<!--Add maiden name for contact-->
323
<xpath expr="//field[@name='child_ids']/form//field[@name='category_id']"
325
<field name="maiden_name" attrs="{'invisible': [('contact_type','=', 'attached')]}" placeholder="Maiden name"/>
327
<xpath expr="//field[@name='child_ids']/form//field[@name='function']"
330
<field name="start_date" />
331
<field name="end_date"/>
332
<field name="naming"/>
335
<xpath expr="//field[@name='child_ids']/form//field[@name='function']"
338
<field name="parent_id" placeholder="Company" domain="[('is_company','=',True)]"/>
339
<field name="function_id" readonly="False" domain="[('id', 'in', parent.functions_ids[0][2])]"/>
342
<xpath expr="//field[@name='child_ids']/kanban//field[@name='function']"
345
<field name="function_id"/>
348
<xpath expr="//field[@name='other_contact_ids']/kanban//field[@name='has_image']"
351
<t t-name="kanban-box">
352
<div class="oe_kanban_vignette oe_semantic_html_override">
354
<t t-if="record.has_image.raw_value === true">
355
<img t-att-src="kanban_image('res.partner', 'image_small', record.id.value)"
356
class="oe_kanban_image"/>
358
<t t-if="record.has_image.raw_value === false">
359
<t t-if="record.is_company.raw_value === true">
360
<img t-att-src='_s + "/base/static/src/img/company_image.png"'
361
class="oe_kanban_image"/>
363
<t t-if="record.is_company.raw_value === false">
364
<img t-att-src='_s + "/base/static/src/img/avatar.png"'
365
class="oe_kanban_image"/>
369
<div class="oe_kanban_details">
370
<h4 class="oe_partner_heading">
375
<div class="oe_kanban_partner_categories"/>
376
<div class="oe_kanban_partner_links"/>
378
<li t-if="record.parent_id.raw_value and !record.function_id.raw_value">
379
<field name="parent_id"/>
381
<li t-if="!record.parent_id.raw_value and record.function_id.raw_value">
382
<field name="function_id"/>
384
<li t-if="record.parent_id.raw_value and record.function_id.raw_value">
385
<field name="function_id"/>
387
<field name="parent_id"/>
389
<li t-if="record.city.raw_value and !record.country.raw_value">
392
<li t-if="!record.city.raw_value and record.country.raw_value">
393
<field name="country"/>
395
<li t-if="record.city.raw_value and record.country.raw_value">
398
<field name="country"/>
400
<li t-if="record.email.raw_value">
401
<a t-attf-href="mailto:#{record.email.raw_value}">
402
<field name="email"/>
413
<!-- Actions for organism -->
414
<record id="action_partner_customer_form" model="ir.actions.act_window">
415
<field name="name">Company</field>
416
<field name="type">ir.actions.act_window</field>
417
<field name="res_model">res.partner</field>
418
<field name="view_type">form</field>
419
<field name="view_mode">kanban,tree,form</field>
420
<field name="domain">[('is_company','=',1)]</field>
421
<field name="filter" eval="True"/>
423
<!-- Actions for Contacts -->
424
<record id="action_partner_contact_form" model="ir.actions.act_window">
425
<field name="name">Contacts</field>
426
<field name="type">ir.actions.act_window</field>
427
<field name="res_model">res.partner</field>
428
<field name="view_type">form</field>
429
<field name="view_mode">kanban,tree,form</field>
430
<field name="domain">[('is_company','=',0)]</field>
431
<field name="filter" eval="True"/>
433
<!--Delete button on res_partner view-->
434
<record model="ir.ui.view" id="res_partner_view_buttons_remove">
435
<field name="name">res.partner.view.buttons.remove</field>
436
<field name="model">res.partner</field>
437
<field name="inherit_id" ref="crm.res_partner_view_buttons" />
438
<field name="priority" eval="10"/>
439
<field name="arch" type="xml">
440
<button string="Meetings" position="replace"/>
441
<button string="Calls" position="replace"/>
442
<button string="Opportunities" position="replace"/>
445
<!--Redefine this part of view from firstname_partner module -->
446
<record id="view_partner_form_firstname_inherit11" model="ir.ui.view">
447
<field name="name">res.partner.form.firstname.inherit11</field>
448
<field name="model">res.partner</field>
449
<field name="inherit_id" ref="partner_firstname.view_partner_form_firstname"/>
450
<field name="arch" type="xml">
451
<field name="lastname" position="replace">
452
<field name="lastname" attrs="{'required': [('contact_type', '=', 'standalone')], 'invisible': [('contact_type', '=', 'attached')]}"/>
454
<field name="firstname" position="replace">
455
<field name="firstname" attrs="{'invisible': [('contact_type', '=', 'attached')]}"/>