[REF] crm: moved Extra info Tab after comunication and history
[odoo/odoo.git] / addons / crm / crm_lead_view.xml
1 <?xml version="1.0"?>
2 <openerp>
3 <data>
4
5     <!-- Stage Search view -->
6     <record id="crm_lead_stage_search" model="ir.ui.view">
7         <field name="name">Stage - Search</field>
8         <field name="model">crm.case.stage</field>
9         <field name="type">search</field>
10         <field name="arch" type="xml">
11             <search string="Stage Search">
12                 <field name="name"/>
13             </search>
14         </field>
15     </record>
16
17     <!--Lead Stage Form view -->
18     <record id="crm_lead_stage_act" model="ir.actions.act_window">
19         <field name="name">Stages</field>
20         <field name="res_model">crm.case.stage</field>
21         <field name="view_type">form</field>
22         <field name="view_id" ref="crm.crm_case_stage_tree"/>
23         <field name="help">Add specific stages to leads and opportunities allowing your sales to better organise their sales pipeline. Stages will allow them to easily track how a specific lead or opportunity is positioned in the sales cycle.</field>
24     </record>
25
26      <menuitem action="crm_lead_stage_act" id="menu_crm_lead_stage_act" name="Stages"
27         groups="base.group_extended" sequence="0"
28         parent="base.menu_crm_config_lead" />
29
30
31         <!-- Lead/Opportunity Categories Action -->
32
33         <record id="crm_lead_categ_action" model="ir.actions.act_window">
34             <field name="name">Categories</field>
35             <field name="res_model">crm.case.categ</field>
36             <field name="view_type">form</field>
37             <field name="view_id" ref="crm_case_categ_tree-view"/>
38             <field name="context" eval="{'object_id': ref('model_crm_lead')}"/>
39             <field name="domain">[('object_id.model', '=', 'crm.lead')]</field>
40             <field name="help">Create specific categories that fit your company's activities to better classify and analyse your leads and opportunities. Such categories could for instance reflect your product structure or the different types of sales you do.</field>
41         </record>
42
43         <menuitem action="crm_lead_categ_action"
44             id="menu_crm_lead_categ" name="Categories"
45             parent="base.menu_crm_config_lead" sequence="1"/>
46
47
48         <!-- CRM Lead Form View  -->
49         <record model="ir.ui.view" id="crm_case_form_view_leads">
50         <field name="name">CRM - Leads Form</field>
51         <field name="model">crm.lead</field>
52         <field name="type">form</field>
53         <field name="arch" type="xml">
54             <form string="Leads Form">
55                 <group colspan="4" col="7">
56                     <field name="name" required="1" string="Subject"/>
57                     <field name="priority"/>
58                     <field name="categ_id"
59                         widget="selection"
60                         domain="[('object_id.model','=','crm.lead')]"/>
61                     <button
62                          name="%(crm.action_crm_lead2opportunity_partner)d"
63                          string="Convert to Opportunity"
64                          help="Convert to Opportunity" icon="gtk-go-forward"
65                          type="action"
66                          />
67                     <newline />
68                     <field name="user_id" />
69                     <field name="section_id" widget="selection" />
70                     <field name="stage_id" domain="[('section_ids', '=', section_id)]" />
71                     <group col="2" colspan="1">
72                         <button name="stage_previous" string=""
73                             states="open,pending,draft" type="object"
74                             icon="gtk-go-back" context="{'stage_type': 'lead'}" />
75                         <button name="stage_next" string=""
76                             states="open,pending,draft" type="object"
77                             icon="gtk-go-forward" context="{'stage_type': 'lead'}" />
78                     </group>
79                     <field name="type" invisible="1"/>
80                 </group>
81                 <notebook colspan="4">
82                 <page string="Lead">
83                     <group colspan="4" col="2">
84                         <field name="partner_name" string="Partner Name" />
85                     </group>
86                     <group colspan="2" col="4">
87                         <separator string="Contact" colspan="4" col="4"/>
88                         <field name="contact_name" colspan="4"/>
89                         <newline/>
90                         <field domain="[('domain', '=', 'contact')]" name="title" widget="selection"/>
91                         <field name="function" />
92                         <field name="street" colspan="4"/>
93                         <field name="street2" colspan="4"/>
94                         <field name="zip"/>
95                         <field name="city"/>
96                         <field name="country_id"/>
97                         <field name="state_id"/>
98                     </group>
99                     <group colspan="2" col="3">
100                         <separator string="Communication" colspan="4" col="3"/>
101                         <field name="email_from" widget="email"/>
102                         <button string="Mail"
103                             name="%(mail.action_email_compose_message_wizard)d"
104                             icon="terp-mail-message-new" type="action" colspan="1"/>
105                         <newline/>
106                         <field name="phone"/>
107                         <newline/>
108                         <field name="fax"/>
109                         <newline/>
110                         <field name="mobile"/>
111                         <newline/>
112                         <separator string="Links" colspan="4" col="3"/>
113                         <field name="partner_id" string="Customer"/>
114                         <button
115                             name="%(action_crm_lead2partner)d"
116                             icon="terp-partner" type="action"
117                             string="Create"
118                             attrs="{'invisible':[('partner_id','!=',False)]}"/>
119                     </group>
120                     <separator colspan="4" string="Notes"/>
121                     <field name="description" nolabel="1" colspan="4"/>
122                     <separator colspan="4"/>
123                     <group col="8" colspan="4">
124                         <field name="state" widget="statusbar" statusbar_visible="draft,open,done" statusbar_colors='{"pending":"blue"}'/>
125                         <button name="case_cancel" string="Cancel"
126                             states="draft,open,pending" type="object"
127                             icon="gtk-cancel" />
128                         <button name="case_open" string="Open"
129                             states="draft,pending" type="object"
130                             icon="gtk-go-forward" />
131                         <button name="case_mark_lost" string="Close"
132                             states="open,pending" type="object"
133                             icon="gtk-close" />
134                         <button name="case_pending" string="Pending"
135                             states="open" type="object"
136                             icon="gtk-media-pause" />
137                         <button name="case_escalate" string="Escalate"
138                             states="open,pending" type="object"
139                             groups="base.group_extended"
140                             icon="gtk-go-up" />
141                         <button name="case_reset"
142                             string="Reset to Draft" states="done,cancel"
143                             type="object" icon="gtk-convert" />
144                     </group>
145                  </page>
146                  <page string="Communication &amp; History" groups="base.group_extended">
147                    <group colspan="4">
148                        <field colspan="4" name="email_cc" widget="char" size="512"/>
149                    </group>
150                     <field name="message_ids" colspan="4" nolabel="1" mode="tree,form" readonly="1">
151                         <tree string="History">
152                             <field name="display_text" string="History Information"/>
153                             <field name="email_from" invisible="1"/>
154                             <button
155                                 string="Reply" attrs="{'invisible': [('email_from', '=', False)]}"
156                                 name="%(mail.action_email_compose_message_wizard)d"
157                                 context="{'mail.compose.message.mode':'reply', 'message_id':active_id}"
158                                 icon="terp-mail-replied" type="action" />
159                         </tree>
160                         <form string="History">
161                             <group col="4" colspan="4">
162                                 <group col="2" colspan="2" attrs="{'invisible': [('email_from', '=', False)]}">
163                                     <field name="email_from"/>
164                                     <field name="email_to" size="512"/>
165                                 </group>
166                                 <group col="2" colspan="2">
167                                     <field name="date"/>
168                                     <field name="email_cc" size="512" attrs="{'invisible': [('email_from', '=', False)]}"/>
169                                 </group>
170                                 <field name="subject" colspan="4" widget="char" attrs="{'invisible': [('email_from', '=', False)]}" size="512"/>
171                                 <field name="display_text" colspan="4" attrs="{'invisible': [('email_from', '!=', False)]}"/>
172                             </group>
173                             <notebook colspan="4">
174                                 <page string="Details" attrs="{'invisible': [('email_from', '=', False)]}">
175                                     <field name="body_text" colspan="4" nolabel="1"/>
176                                     <group attrs="{'invisible': [('email_from', '=', False)]}">
177                                         <button colspan="4" string="Reply"
178                                             name="%(mail.action_email_compose_message_wizard)d"
179                                             context="{'mail.compose.message.mode':'reply'}"
180                                             icon="terp-mail-replied" type="action"/>
181                                         </group>
182
183                                 </page>
184                                 <page string="Attachments" attrs="{'invisible': [('email_from', '=', False)]}">
185                                     <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
186                                 </page>
187                                 </notebook>
188                         </form>
189                     </field>
190                     <button string="Add Internal Note"
191                         name="%(crm.action_crm_add_note)d"
192                         context="{'model': 'crm.lead' }"
193                         icon="terp-document-new" type="action" />
194                     <button string="Send New Email"
195                         name="%(mail.action_email_compose_message_wizard)d"
196                         icon="terp-mail-message-new" type="action"/>
197                  </page>
198                  <page string="Extra Info" groups="base.group_extended">
199                     <group colspan="2" col="2">
200                         <separator string="Categorization" colspan="2" col="2"/>
201                         <field name="company_id"
202                             groups="base.group_multi_company"
203                             widget="selection" colspan="2" />
204                         <field name="type_id" select="1" widget="selection"/>
205                         <field name="channel_id" select="1" widget="selection"/>
206                         <field name="referred"/>
207                     </group>
208                     <group colspan="2" col="2">
209                         <separator string="Dates" colspan="2" col="2"/>
210                         <field name="create_date"/>
211                         <field name="write_date"/>
212                         <field name="date_open"/>
213                         <field name="date_closed"/>
214                     </group>
215                     <group colspan="2" col="2">
216                         <separator string="Mailings" colspan="2" col="2"/>
217                         <field name="optin" on_change="on_change_optin(optin)"/>
218                         <field name="optout" on_change="on_change_optout(optout)"/>
219                     </group>
220                     <group colspan="2" col="2">
221                         <separator string="Statistics" colspan="2" col="2"/>
222                         <field name="day_open"/>
223                         <field name="day_close"/>
224                     </group>
225                  </page>
226                 </notebook>
227             </form>
228         </field>
229     </record>
230
231     <!-- CRM Lead Tree View -->
232
233     <record model="ir.ui.view" id="crm_case_tree_view_leads">
234         <field name="name">Leads</field>
235         <field name="model">crm.lead</field>
236         <field name="type">tree</field>
237         <field name="arch" type="xml">
238             <tree string="Leads"  colors="blue:state=='pending';grey:state in ('cancel', 'done')">
239                 <field name="date_deadline" invisible="1"/>
240                 <field name="create_date"/>
241                 <field name="name" string="Subject"/>
242                 <field name="contact_name"/>
243                 <field name="country_id" invisible="context.get('invisible_country', True)" />
244                 <field name="email_from"/>
245                 <field name="phone"/>
246
247                 <field name="categ_id" invisible="1"/>
248                 <field name="type_id" invisible="1"/>
249                 <field name="referred" invisible="1"/>
250                 <field name="channel_id" invisible="1"/>
251                 <field name="subjects" invisible="1"/>
252
253                 <field name="stage_id"/>
254                 <button name="stage_previous" string="Previous Stage"
255                     states="open,pending" type="object" icon="gtk-go-back" />
256                 <button name="stage_next" string="Next Stage"
257                     states="open,pending" type="object"
258                     icon="gtk-go-forward" />
259                 <field name="section_id" invisible="context.get('invisible_section', True)" />
260                 <field name="user_id" />
261                 <field name="state" />
262                 <button name="case_open" string="Open"
263                     states="draft,pending" type="object"
264                     icon="gtk-go-forward" />
265                 <button name="case_close" string="Close"
266                     states="open,draft,pending" type="object"
267                     icon="gtk-close" />
268                 <button string="Convert to Opportunity"
269                     name="convert_opportunity"
270                     states="draft,open,pending" icon="gtk-go-forward"
271                     type="object" />
272                 <button name="case_escalate" string="Escalate"
273                     states="open,draft,pending" type="object"
274                     icon="gtk-go-up" />
275             </tree>
276         </field>
277     </record>
278
279     <!-- CRM Lead Calendar View -->
280
281     <record model="ir.ui.view" id="crm_case_calendar_view_leads">
282         <field name="name">CRM - Leads Calendar</field>
283         <field name="model">crm.lead</field>
284         <field name="type">calendar</field>
285         <field name="priority" eval="2"/>
286         <field name="arch" type="xml">
287             <calendar string="Leads Generation"
288                 date_start="date_action" color="user_id">
289                 <field name="name" />
290                 <field name="partner_name" />
291                 <field name="partner_address_id" />
292             </calendar>
293         </field>
294     </record>
295
296     <!-- CRM Lead Kanban View  -->
297     <record model="ir.ui.view" id="crm_case_kanban_view_leads">
298         <field name="name">CRM - Leads Kanban</field>
299         <field name="model">crm.lead</field>
300         <field name="type">kanban</field>
301         <field name="arch" type="xml">
302             <kanban default_group_by="stage_id">
303                 <field name="state"/>
304                 <field name="color"/>
305                 <field name="priority"/>
306                 <field name="planned_revenue" sum="Expected Revenues"/>
307                 <field name="user_email"/>
308                 <field name="user_id"/>
309                 <field name="partner_address_email"/>
310                 <templates>
311                     <t t-name="lead_details">
312                         <ul class="oe_kanban_tooltip">
313                             <li t-if="record.phone.raw_value"><b>Phone:</b> <field name="phone"/></li>
314                             <li><b>Probability:</b> <field name="probability"/>%%</li>
315                             <li><b>Creation date:</b> <field name="create_date"/></li>
316                             <li t-if="record.date_deadline.raw_value"><b>Date Deadline:</b> <field name="date_deadline"/></li>
317                         </ul>
318                     </t>
319                     <t t-name="kanban-box">
320                         <t t-if="record.date_deadline.raw_value and record.date_deadline.raw_value lt (new Date())" t-set="border">oe_kanban_color_red</t>
321                         <div t-attf-class="#{kanban_color(record.color.raw_value)} #{border || ''}">
322                             <div class="oe_kanban_box oe_kanban_color_border">
323                                 <table class="oe_kanban_table oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle">
324                                 <tr>
325                                     <td align="left" valign="middle" width="16">
326                                         <a t-if="record.priority.raw_value == 1" icon="star-on" type="object" name="set_normal_priority"/>
327                                         <a t-if="record.priority.raw_value != 1" icon="star-off" type="object" name="set_high_priority" style="opacity:0.6; filter:alpha(opacity=60);"/>
328                                     </td>
329                                     <td align="left" valign="middle" class="oe_kanban_title3" tooltip="lead_details">
330                                         <field name="partner_id"/>
331                                         <t t-if="record.planned_revenue.raw_value">
332                                             - <t t-esc="Math.round(record.planned_revenue.value)"/>
333                                             <field name="company_currency"/>
334                                         </t>
335                                     </td>
336                                     <td valign="top" width="22"><img t-att-src="kanban_gravatar(record.user_email.value, 22)" class="oe_kanban_gravatar" t-att-title="record.user_id.value"/></td>
337                                 </tr>
338                                 </table>
339
340                                 <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger">
341                                     <div>
342                                         <b>
343                                             <a t-if="record.partner_address_email.raw_value" t-attf-href="mailto:#{record.partner_address_email.raw_value}">
344                                                 <field name="partner_address_name"/>
345                                             </a>
346                                             <field t-if="!record.partner_address_email.raw_value" name="partner_address_name"/>
347                                         </b>
348                                     </div>
349                                     <div>
350                                         <field name="name"/>
351                                     </div>
352                                     <div style="padding-left: 0.5em">
353                                         <i><field name="date_action"/><t t-if="record.date_action.raw_value"> : </t><field name="title_action"/></i>
354                                     </div>
355                                 </div>
356
357                                 <div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick">
358                                     <div class="oe_kanban_left">
359                                         <a string="Edit" icon="gtk-edit" type="edit"/>
360                                         <a string="Change Color" icon="color-picker" type="color" name="color"/>
361                                         <a string="Send New Email" name="%(mail.action_email_compose_message_wizard)d" icon="terp-mail-message-new" type="action"/>
362                                         <a string="Schedule/Log Call" name="%(opportunity2phonecall_act)d" icon="terp-call-start" type="action"/>
363                                         <a string="Schedule Meeting" name="action_makeMeeting" type="object" icon="stock_calendar"/>
364                                         <a string="Add Internal Note" name="%(crm.action_crm_add_note)d" context="{'model': 'crm.lead' }" icon="terp-document-new" type="action"/>
365                                     </div>
366                                     <div class="oe_kanban_right">
367                                         <a name="case_mark_lost" string="Mark Lost" states="open,pending" type="object" icon="kanban-stop" />
368                                         <a name="case_pending" string="Pending" states="draft,open" type="object" icon="kanban-pause" />
369                                         <a name="case_open" string="Open" states="pending" type="object" icon="gtk-media-play" />
370                                         <a name="case_mark_won" string="Mark Won" states="open,pending" type="object" icon="kanban-apply" />
371                                     </div>
372                                     <br class="oe_kanban_clear"/>
373                                 </div>
374                             </div>
375                         </div>
376                     </t>
377                 </templates>
378             </kanban>
379         </field>
380     </record>
381
382     <!-- CRM Lead Search View -->
383
384     <record id="view_crm_case_leads_filter" model="ir.ui.view">
385         <field name="name">CRM - Leads Search</field>
386         <field name="model">crm.lead</field>
387         <field name="type">search</field>
388         <field name="arch" type="xml">
389             <search string="Search Leads">
390                 <filter icon="terp-check"
391                     string="New"
392                     name="new" help="New Leads"
393                     domain="[('state','=','draft')]"/>
394                 <filter icon="terp-camera_test"
395                     string="Open"
396                     name="open"
397                     domain="[('state','=','open')]"/>
398                 <filter icon="terp-gtk-media-pause"
399                     string="Pending"
400                     name="pending"
401                     domain="[('state','=','pending')]"/>
402
403                 <separator orientation="vertical"/>
404                 <filter icon="terp-go-today" string="Today"
405                     domain="[('create_date','&lt;', time.strftime('%%Y-%%m-%%d 23:59:59')), ('create_date','&gt;=', time.strftime('%%Y-%%m-%%d 00:00:00'))]"
406                     help="Todays' Leads" />
407                 <filter icon="terp-go-week" string="7 Days"
408                     help="Leads creating during last 7 days"
409                     domain="[('create_date','&lt;', time.strftime('%%Y-%%m-%%d 23:59:59')),('create_date','&gt;=',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d 00:00:00'))]"
410                 />
411                 <separator orientation="vertical"/>
412                 <field name="name" string="Lead / Customer"
413                     filter_domain="['|','|',('partner_name','ilike',self),('email_from','ilike',self),('name','ilike',self)]"/>
414                 <field name="user_id">
415                     <filter icon="terp-personal-"
416                         domain="[('user_id','=', False)]"
417                         help="Unassigned Leads" />
418                 </field>
419                 <field name="subjects" groups="base.group_extended"/>
420                 <field name="section_id" widget="selection"
421                     context="{'invisible_section': False}">
422                     <filter icon="terp-personal+" groups="base.group_extended"
423                         context="{'invisible_section': False}"
424                         domain="['|', ('section_id', '=', context.get('section_id')), '|', ('section_id.user_id','=',uid), ('section_id.member_ids', 'in', [uid])]"
425                         help="My Sales Team(s)"/>
426                     <filter icon="terp-personal+" groups="base.group_extended"
427                         context="{'invisible_section': False}"
428                         domain="[]"
429                         help="Show Sales Team"/>
430                 </field>
431                 <separator orientation="vertical"/>
432                 <field name="country_id" context="{'invisible_country': False}">
433                     <filter icon="terp-personal+" context="{'invisible_country': False}" help="Show countries"/>
434                 </field>
435                 <newline/>
436                 <group expand="0" string="Group By...">
437                     <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
438                     <filter string="Team" icon="terp-personal+" domain="[]" context="{'group_by':'section_id'}"/>
439                     <filter string="Referrer" icon="terp-personal" domain="[]" context="{'group_by':'referred'}"/>
440                     <separator orientation="vertical"/>
441                     <filter string="Category" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'categ_id'}"/>
442                     <filter string="Campaign" icon="terp-gtk-jump-to-rtl"
443                         domain="[]" context="{'group_by':'type_id'}" />
444                     <filter string="Channel" icon="terp-call-start"
445                         domain="[]" context="{'group_by':'channel_id'}" />
446                     <separator orientation="vertical"/>
447                     <filter string="Stage" icon="terp-stage" domain="[]" context="{'group_by':'stage_id'}"/>
448                     <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
449                     <separator orientation="vertical"/>
450                     <filter string="Creation" help="Create date" icon="terp-go-month"
451                         domain="[]" context="{'group_by':'create_date'}" />
452                 </group>
453            </search>
454         </field>
455     </record>
456
457
458     <!-- Opportunities Form View -->
459     <record model="ir.ui.view" id="crm_case_form_view_oppor">
460         <field name="name">Opportunities</field>
461         <field name="model">crm.lead</field>
462         <field name="type">form</field>
463         <field name="priority">20</field>
464         <field name="arch" type="xml">
465             <form string="Opportunities">
466                 <group colspan="4" col="7">
467                     <field name="name"  required="1" string="Opportunity"/>
468                     <label string="Stage:" align="1.0"/>
469                     <group colspan="1" col="4">
470                         <field name="stage_id" nolabel="1"
471                             on_change="onchange_stage_id(stage_id)"
472                             domain="[('section_ids', '=', section_id)]"/>
473                         <button name="stage_previous"
474                             states="draft,open,pending" type="object"
475                             icon="gtk-go-back" string="" context="{'stage_type': 'opportunity'}"/>
476                         <button name="stage_next" states="draft,open,pending"
477                             type="object" icon="gtk-go-forward" string="" context="{'stage_type': 'opportunity'}"/>
478                     </group>
479                     <field name="user_id"/>
480
481                     <button string="Schedule/Log Call"
482                     name="%(opportunity2phonecall_act)d" icon="terp-call-start" type="action"/>
483
484                     <field name="planned_revenue"/>
485                     <field name="probability"/>
486                     <field name="date_deadline"/>
487
488                     <button name="action_makeMeeting" type="object"
489                     string="Schedule Meeting" icon="gtk-redo" />
490                     <newline/>
491                     <field name="date_action"/>
492                     <field name="title_action"/>
493                     <field name="priority" string="Priority"/>
494                     <newline/>
495                     <field name="type" invisible="1"/>
496                 </group>
497                 <notebook colspan="4">
498                 <page string="Opportunity">
499                     <group col="4" colspan="2">
500                         <separator colspan="4" string="Contacts"/>
501                         <group colspan="2">
502                             <field name="partner_id" select="1"
503                                 on_change="onchange_partner_id(partner_id, email_from)" string="Customer"
504                                 colspan="2" />
505                             <button name="%(action_crm_lead2partner)d"
506                                 icon="terp-partner" type="action"
507                                 string="Create"
508                                 attrs="{'invisible':[('partner_id','!=',False)]}"/>
509                         </group>
510                         <field name="partner_address_id"
511                             string="Contact"
512                             on_change="onchange_partner_address_id(partner_address_id, email_from)"
513                             colspan="1" />
514                         <group col="3" colspan="2">
515                             <field name="email_from" string="Email" />
516                             <button string="Mail"
517                             name="%(mail.action_email_compose_message_wizard)d"
518                             context="{'mail':'new', 'model': 'crm.lead'}"
519                             icon="terp-mail-message-new" type="action" />
520                         </group>
521                             <field name="phone"/>
522
523                     </group>
524                     <group col="2" colspan="2">
525                         <separator colspan="2" string="Categorization"/>
526                         <field name="section_id" colspan="1" widget="selection"/>
527                         <field name="categ_id" select="1"
528                         string="Category" widget="selection"
529                         domain="[('object_id.model', '=', 'crm.lead')]" />
530                     </group>
531
532                     <separator colspan="4" string="Details"/>
533                     <field name="description" nolabel="1" colspan="4"/>
534
535                     <separator colspan="4"/>
536                     <group col="10" colspan="4">
537                         <field name="state" widget="statusbar" statusbar_visible="draft,open,done" statusbar_colors='{"pending":"blue"}'/>
538                         <button name="case_cancel" string="Cancel" states="draft" type="object" icon="gtk-cancel" />
539                         <button name="case_mark_lost" string="Mark Lost" states="open,pending" type="object" icon="gtk-cancel" />
540                         <button name="case_reset" string="Reset to Draft" states="done,cancel" type="object" icon="gtk-convert" />
541                         <button name="case_open" string="Open" states="draft,pending" type="object" icon="gtk-go-forward" />
542                         <button name="case_pending" string="Pending" states="draft,open" type="object" icon="gtk-media-pause" />
543                         <button name="case_escalate" string="Escalate" states="open,pending" type="object" groups="base.group_extended" icon="gtk-go-up" />
544                         <button name="case_mark_won" string="Mark Won" states="open,pending" type="object" icon="gtk-apply" />
545                     </group>
546                 </page>
547                 <page string="Lead">
548                     <group colspan="2" col="4">
549                         <separator string="Contact" colspan="4" col="4"/>
550                         <field name="partner_name" string="Customer Name" colspan="4"/>
551                         <newline/>
552                         <field domain="[('domain', '=', 'contact')]" name="title" widget="selection"/>
553                         <field name="function" />
554                         <field name="street" colspan="4"/>
555                         <field name="street2" colspan="4"/>
556                         <field name="zip"/>
557                         <field name="city"/>
558                         <field name="country_id"/>
559                         <field name="state_id"/>
560                     </group>
561                     <group colspan="2" col="2">
562                         <separator string="Communication" colspan="2"/>
563                         <field name="fax"/>
564                         <field name="mobile"/>
565                     </group>
566                     <group colspan="2" col="2">
567                         <separator string="Categorization" colspan="2"/>
568                         <field name="type_id" widget="selection" groups="base.group_extended"/>
569                         <field name="channel_id" widget="selection"/>
570                     </group>
571                     <group colspan="2" col="2">
572                         <separator string="Mailings" colspan="2"/>
573                         <field name="optin" on_change="on_change_optin(optin)"/>
574                         <field name="optout" on_change="on_change_optout(optout)"/>
575                     </group>
576                 </page>
577                 <page string="Communication &amp; History" groups="base.group_extended">
578                   <group colspan="4">
579                       <field colspan="4" name="email_cc" widget="char" size="512"/>
580                   </group>
581                    <field name="message_ids" colspan="4" nolabel="1" mode="tree,form" readonly="1">
582                        <tree string="History">
583                            <field name="display_text" string="History Information"/>
584                            <field name="email_from" invisible="1"/>
585                            <button
586                                string="Reply" attrs="{'invisible': [('email_from', '=', False)]}"
587                                name="%(mail.action_email_compose_message_wizard)d"
588                                context="{'mail.compose.message.mode':'reply', 'message_id':active_id}"
589                                icon="terp-mail-replied" type="action" />
590                        </tree>
591                        <form string="History">
592                            <group col="4" colspan="4">
593                                <group col="2" colspan="2" attrs="{'invisible': [('email_from', '=', False)]}">
594                                    <field name="email_from"/>
595                                    <field name="email_to" size="512"/>
596                                </group>
597                                <group col="2" colspan="2">
598                                    <field name="date"/>
599                                    <field name="email_cc" size="512" attrs="{'invisible': [('email_from', '=', False)]}"/>
600                                </group>
601                                <field name="subject" colspan="4" widget="char" attrs="{'invisible': [('email_from', '=', False)]}" size="512"/>
602                                <field name="display_text" colspan="4" attrs="{'invisible': [('email_from', '!=', False)]}"/>
603                            </group>
604                            <notebook colspan="4">
605                                <page string="Details" attrs="{'invisible': [('email_from', '=', False)]}">
606                                    <field name="body_text" colspan="4" nolabel="1"/>
607                                    <group attrs="{'invisible': [('email_from', '=', False)]}">
608                                        <button colspan="4" string="Reply"
609                                            name="%(mail.action_email_compose_message_wizard)d"
610                                            context="{'mail.compose.message.mode':'reply'}"
611                                            icon="terp-mail-replied" type="action"/>
612                                        </group>
613                                 </page>
614                                <page string="Attachments" attrs="{'invisible': [('email_from', '=', False)]}">
615                                    <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
616                                </page>
617                                </notebook>
618                        </form>
619                    </field>
620                    <button string="Add Internal Note"
621                        name="%(crm.action_crm_add_note)d"
622                        context="{'model': 'crm.lead' }"
623                        icon="terp-document-new" type="action" />
624                    <button string="Send New Email"
625                        name="%(mail.action_email_compose_message_wizard)d"
626                        icon="terp-mail-message-new" type="action"/>
627                 </page>
628                 <page string="Extra Info" groups="base.group_extended">
629                     <group col="2" colspan="2">
630                         <separator string="Dates" colspan="2"/>
631                         <field name="create_date"/>
632                         <field name="write_date"/>
633                         <field name="date_closed"/>
634                         <field name="date_open"/>
635                     </group>
636                     <group col="2" colspan="2">
637                         <separator string="Misc" colspan="2"/>
638                         <field name="active"/>
639                         <field name="day_open"/>
640                         <field name="day_close"/>
641                         <field name="referred"/>
642                     </group>
643                     <separator colspan="4" string="References"/>
644                     <field name="ref"/>
645                     <field name="ref2"/>
646                 </page>
647                 </notebook>
648             </form>
649         </field>
650     </record>
651
652     <!-- Opportunities Tree View -->
653     <record model="ir.ui.view" id="crm_case_tree_view_oppor">
654         <field name="name">Opportunities Tree</field>
655         <field name="model">crm.lead</field>
656         <field name="type">tree</field>
657         <field name="arch" type="xml">
658             <tree string="Opportunities" colors="blue:state=='pending' and not(date_deadline and (date_deadline &lt; current_date));gray:state in ('cancel', 'done');red:date_deadline and (date_deadline &lt; current_date)">
659                 <field name="date_deadline" invisible="1"/>
660                 <field name="create_date"/>
661                 <field name="name" string="Opportunity"/>
662                 <field name="partner_id" string="Customer"/>
663                 <field name="country_id" invisible="context.get('invisible_country', True)" />
664                 <field name="date_action"/>
665                 <field name="title_action" />
666                 <field name="channel_id" invisible="1"/>
667                 <field name="type_id" invisible="1"/>
668                 <field name="subjects" invisible="1"/>
669                 <field name="stage_id"/>
670                 <button name="stage_previous" string="Previous Stage" states="open,pending" type="object" icon="gtk-go-back" />
671                 <button name="stage_next" string="Next Stage" states="open,pending" type="object" icon="gtk-go-forward" />
672                 <field name="planned_revenue" sum="Expected Revenues"/>
673                 <field name="probability" widget="progressbar" avg="Avg. of Probability"/>
674                 <field name="section_id" invisible="context.get('invisible_section', True)" />
675                 <field name="user_id"/>
676                 <field name="priority" invisible="1"/>
677                 <field name="categ_id" invisible="1"/>
678                 <field name="state"/>
679                 <button name="case_open" string="Open" states="draft,pending" type="object" icon="gtk-go-forward" />
680                 <button name="case_pending" string="Pending" states="open,draft" type="object" icon="gtk-media-pause" />
681                 <button name="case_mark_lost" string="Lost" states="open,pending" type="object" icon="gtk-cancel" />
682                 <button name="case_mark_won" string="Won" states="open,pending" type="object" icon="gtk-apply" />
683             </tree>
684         </field>
685     </record>
686
687
688     <!-- Opportunities Search View -->
689     <record id="view_crm_case_opportunities_filter" model="ir.ui.view">
690         <field name="name">CRM - Opportunities Search</field>
691         <field name="model">crm.lead</field>
692         <field name="type">search</field>
693         <field name="arch" type="xml">
694             <search string="Search Opportunities">
695                 <filter icon="terp-check"
696                     string="New"  help="New Opportunities"
697                     name="new"
698                     domain="[('state','=','draft')]"/>
699                 <filter icon="terp-camera_test"
700                     string="Open"  help="Open Opportunities"
701                     name="open"
702                     domain="[('state','=','open')]"/>
703                 <filter icon="terp-gtk-media-pause"
704                     string="Pending"  help="Pending Opportunities"
705                     name="pending"
706                     domain="[('state','=','pending')]"/>
707                 <separator orientation="vertical"/>
708                 <field name="name" string="Opportunity / Customer" filter_domain="['|','|','|',('partner_id','ilike',self),('partner_name','ilike',self),('email_from','ilike',self),('name', 'ilike', self)]"/>
709                 <field name="partner_id" string="Customer / Email" filter_domain="['|','|',('partner_id','ilike',self),('partner_name','ilike',self),('email_from','ilike',self)]"/>
710                 <field name="user_id">
711                     <filter icon="terp-personal-"
712                         domain="[('user_id','=', False)]"
713                         help="Unassigned Opportunities" />
714                 </field>
715                 <field name="section_id"
716                     context="{'invisible_section': False}"
717                     widget="selection">
718                     <filter icon="terp-personal+" groups="base.group_extended"
719                         domain="['|', ('section_id', '=', context.get('section_id')), '|', ('section_id.user_id','=',uid), ('section_id.member_ids', 'in', [uid])]"
720                         context="{'invisible_section': False}"
721                         help="My Sales Team(s)" />
722                     <filter icon="terp-personal+" groups="base.group_extended"
723                         context="{'invisible_section': False}"
724                         domain="[]"
725                         help="Show Sales Team"/>
726                 </field>
727
728                 <newline/>
729                 <group expand="0" string="Group By..." colspan="16">
730                     <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}" />
731                     <filter string="Team" help="Sales Team" icon="terp-personal+" domain="[]" context="{'group_by':'section_id'}"/>
732                     <filter string="Customer" help="Partner" icon="terp-personal+" domain="[]" context="{'group_by':'partner_id'}"/>
733                     <separator orientation="vertical" />
734                     <filter string="Stage" icon="terp-stage" domain="[]" context="{'group_by':'stage_id'}" />
735                     <filter string="Priority" icon="terp-rating-rated" domain="[]" context="{'group_by':'priority'}" />
736                     <filter string="Category" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'categ_id'}" />
737                     <filter string="Campaign" icon="terp-gtk-jump-to-rtl" domain="[]" context="{'group_by':'type_id'}" groups="base.group_extended"/>
738                     <filter string="Channel" icon="terp-call-start" domain="[]" context="{'group_by':'channel_id'}" />
739                     <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
740                     <separator orientation="vertical" />
741                     <filter string="Creation" icon="terp-go-month" domain="[]" context="{'group_by':'create_date'}" />
742                     <filter string="Exp.Closing" icon="terp-go-month" help="Expected Closing" domain="[]" context="{'group_by':'date_deadline'}" />
743                 </group>
744             </search>
745         </field>
746     </record>
747
748     <!-- crm.lead Opportunities Graph View -->
749     <record model="ir.ui.view" id="crm_case_graph_view_opportunity">
750         <field name="name">CRM - Opportunity Graph</field>
751         <field name="model">crm.lead</field>
752         <field name="type">graph</field>
753         <field name="arch" type="xml">
754             <graph string="Opportunity by Categories" type="bar" orientation="horizontal">
755                 <field name="categ_id"/>
756                 <field name="planned_revenue" operator="+"/>
757                 <field name="state" group="True"/>
758             </graph>
759         </field>
760     </record>
761
762 </data>
763 </openerp>