[IMP]crm: Improve state field as function field according to stage changes and added...
[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_no_one" 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" groups="base.group_no_one"/>
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" layout="manual">
55                 <div class="oe_form_topbar">
56                     <button name="case_cancel" string="Cancel" states="draft,open,pending" type="object" icon="gtk-cancel" groups="base.group_no_one"/>
57                     <button name="case_open" string="Open" states="draft,pending" type="object" icon="gtk-go-forward" groups="base.group_no_one"/>
58                     <button name="case_mark_lost" string="Close" states="open,pending" type="object" icon="gtk-close" groups="base.group_no_one"/>
59                     <button name="case_pending" string="Pending" states="open" type="object" icon="gtk-media-pause" groups="base.group_no_one"/>
60                     <button name="case_escalate" string="Escalate" states="open,pending" type="object" groups="base.group_extended" icon="gtk-go-up" />
61                     <button name="case_reset" string="Reset to Draft" states="done,cancel" type="object" icon="gtk-convert" groups="base.group_no_one"/>
62                     <div class="oe_right">
63                         <field name="state" nolabel="1" widget="statusbar" statusbar_visible="draft,open,done" statusbar_colors='{"pending":"blue"}' groups="base.group_no_one"/>
64                     </div>
65                 </div>
66                 <sheet layout="auto">
67                 <group colspan="4" col="7">
68                     <field name="name" required="1" string="Subject"/>
69                     <field name="priority"/>
70                     <field name="categ_id"
71                         widget="selection"
72                         domain="[('object_id.model','=','crm.lead')]"/>
73                     <button
74                          name="%(crm.action_crm_lead2opportunity_partner)d"
75                          string="Convert to Opportunity"
76                          help="Convert to Opportunity" icon="gtk-go-forward"
77                          type="action"
78                          />
79                     <newline />
80                     <field name="user_id" />
81                     <field name="section_id" widget="selection" />
82                     <field name="stage_id" domain="section_id and [('section_ids', '=', section_id)] or []" />
83                     <group col="2" colspan="1">
84                         <button name="stage_previous" string=""
85                             states="open,pending,draft" type="object"
86                             icon="gtk-go-back" context="{'stage_type': 'lead'}" />
87                         <button name="stage_next" string=""
88                             states="open,pending,draft" type="object"
89                             icon="gtk-go-forward" context="{'stage_type': 'lead'}" />
90                     </group>
91                     <field name="type" invisible="1"/>
92                 </group>
93                 <notebook colspan="4">
94                 <page string="Lead">
95                     <group colspan="4" col="2">
96                         <field name="partner_name" string="Company Name" />
97                     </group>
98                     <group colspan="2" col="4">
99                         <separator string="Contact" colspan="4" col="4"/>
100                         <field name="contact_name" colspan="4"/>
101                         <newline/>
102                         <field domain="[('domain', '=', 'contact')]" name="title" widget="selection"/>
103                         <field name="function" />
104                         <field name="street" colspan="4"/>
105                         <field name="street2" colspan="4"/>
106                         <field name="zip"/>
107                         <field name="city"/>
108                         <field name="country_id"/>
109                         <field name="state_id"/>
110                     </group>
111                     <group colspan="2" col="3">
112                         <separator string="Communication" colspan="4" col="3"/>
113                         <field name="email_from" widget="email"/>
114                         <button string="Mail"
115                             name="%(mail.action_email_compose_message_wizard)d"
116                             icon="terp-mail-message-new" type="action" colspan="1"/>
117                         <newline/>
118                         <field name="phone"/>
119                         <newline/>
120                         <field name="fax"/>
121                         <newline/>
122                         <field name="mobile"/>
123                         <newline/>
124                         <separator string="Links" colspan="4" col="3"/>
125                         <field name="partner_id" string="Customer"/>
126                         <button
127                             name="%(action_crm_lead2partner)d"
128                             icon="terp-partner" type="action"
129                             string="Create"
130                             attrs="{'invisible':[('partner_id','!=',False)]}"/>
131                     </group>
132                     <separator colspan="4" string="Notes"/>
133                     <field name="description" nolabel="1" colspan="4"/>
134                  </page>
135                  <page string="Extra Info" groups="base.group_extended">
136                     <group colspan="2" col="2">
137                         <separator string="Categorization" colspan="2" col="2"/>
138                         <field name="company_id"
139                             groups="base.group_multi_company"
140                             widget="selection" colspan="2" />
141                         <field name="type_id" select="1" widget="selection"/>
142                         <field name="channel_id" select="1" widget="selection"/>
143                         <field name="referred"/>
144                     </group>
145                     <group colspan="2" col="2">
146                         <separator string="Mailings" colspan="2" col="2"/>
147                         <field name="optin" on_change="on_change_optin(optin)"/>
148                         <field name="optout" on_change="on_change_optout(optout)"/>
149                     </group>
150                     <group colspan="2" col="2" groups="base.group_no_one">
151                         <separator string="Statistics" colspan="2" col="2"/>
152                         <field name="day_open"/>
153                         <field name="day_close"/>
154                     </group>
155                  </page>
156                 </notebook>
157                 </sheet>
158                 <div class="oe_form_sheet_width">
159                     <field name="message_ids_social" colspan="4" widget="ThreadView" nolabel="1"/>
160                 </div>
161             </form>
162         </field>
163     </record>
164
165     <!-- CRM Lead Tree View -->
166
167     <record model="ir.ui.view" id="crm_case_tree_view_leads">
168         <field name="name">Leads</field>
169         <field name="model">crm.lead</field>
170         <field name="type">tree</field>
171         <field name="arch" type="xml">
172             <tree string="Leads"  colors="blue:state=='pending';grey:state in ('cancel', 'done')">
173                 <field name="date_deadline" invisible="1"/>
174                 <field name="create_date" groups="base.group_no_one"/>
175                 <field name="name" string="Subject"/>
176                 <field name="contact_name"/>
177                 <field name="country_id" invisible="context.get('invisible_country', True)" />
178                 <field name="email_from"/>
179                 <field name="phone"/>
180
181                 <field name="categ_id" invisible="1"/>
182                 <field name="type_id" invisible="1"/>
183                 <field name="referred" invisible="1"/>
184                 <field name="channel_id" invisible="1"/>
185                 <field name="subjects" invisible="1"/>
186
187                 <field name="stage_id"/>
188                 <button name="stage_previous" string="Previous Stage"
189                     states="open,pending" type="object" icon="gtk-go-back" />
190                 <button name="stage_next" string="Next Stage"
191                     states="open,pending" type="object"
192                     icon="gtk-go-forward" />
193                 <field name="section_id" invisible="context.get('invisible_section', True)" />
194                 <field name="user_id" />
195                 <field name="state" groups="base.group_no_one"/>
196                 <button name="case_open" string="Open"
197                     states="draft,pending" type="object"
198                     icon="gtk-go-forward" groups="base.group_no_one"/>
199                 <button name="case_close" string="Close"
200                     states="open,draft,pending" type="object"
201                     icon="gtk-close" groups="base.group_no_one"/>
202                 <button name="%(crm.action_crm_lead2opportunity_partner)d"
203                     string="Convert to Opportunity"
204                     states="draft,open,pending" icon="gtk-index"
205                     type="action" />
206                 <button name="case_escalate" string="Escalate"
207                     states="open,draft,pending" type="object"
208                     icon="gtk-go-up" />
209             </tree>
210         </field>
211     </record>
212
213     <!-- CRM Lead Calendar View -->
214
215     <record model="ir.ui.view" id="crm_case_calendar_view_leads">
216         <field name="name">CRM - Leads Calendar</field>
217         <field name="model">crm.lead</field>
218         <field name="type">calendar</field>
219         <field name="priority" eval="2"/>
220         <field name="arch" type="xml">
221             <calendar string="Leads Generation"
222                 date_start="date_action" color="user_id">
223                 <field name="name" />
224                 <field name="partner_name" />
225             </calendar>
226         </field>
227     </record>
228
229     <!-- CRM Lead Kanban View  -->
230     <record model="ir.ui.view" id="crm_case_kanban_view_leads">
231         <field name="name">CRM - Leads Kanban</field>
232         <field name="model">crm.lead</field>
233         <field name="type">kanban</field>
234         <field name="arch" type="xml">
235             <kanban default_group_by="stage_id">
236                 <field name="state" groups="base.group_no_one"/>
237                 <field name="color"/>
238                 <field name="priority"/>
239                 <field name="planned_revenue" sum="Expected Revenues"/>
240                 <field name="user_email"/>
241                 <field name="user_id"/>
242                 <field name="partner_address_email"/>
243                 <templates>
244                     <t t-name="lead_details">
245                         <ul class="oe_kanban_tooltip">
246                             <li t-if="record.phone.raw_value"><b>Phone:</b> <field name="phone"/></li>
247                             <li><b>Probability:</b> <field name="probability"/>%%</li>
248                             <li><b>Creation date:</b> <field name="create_date"/></li>
249                             <li t-if="record.date_deadline.raw_value"><b>Date Deadline:</b> <field name="date_deadline"/></li>
250                         </ul>
251                     </t>
252                     <t t-name="kanban-box">
253                         <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>
254                         <div t-attf-class="#{kanban_color(record.color.raw_value)} #{border || ''}">
255                             <div class="oe_kanban_box oe_kanban_color_border">
256                                 <table class="oe_kanban_table oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle">
257                                 <tr>
258                                     <td align="left" valign="middle" width="16">
259                                         <a t-if="record.priority.raw_value == 1" icon="star-on" type="object" name="set_normal_priority"/>
260                                         <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);"/>
261                                     </td>
262                                     <td align="left" valign="middle" class="oe_kanban_title" tooltip="lead_details">
263                                         <field name="partner_id"/>
264                                         <t t-if="record.planned_revenue.raw_value">
265                                             - <t t-esc="Math.round(record.planned_revenue.value)"/>
266                                             <field name="company_currency"/>
267                                         </t>
268                                     </td>
269                                     <td valign="top" width="22">
270                                         <img t-att-src="kanban_image('res.users', 'avatar', record.user_id.raw_value[0])"  t-att-title="record.user_id.value"
271                                         width="22" height="22" class="oe_kanban_gravatar"/>
272                                     </td>
273                                 </tr>
274                                 </table>
275
276                                 <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger">
277                                     <div>
278                                         <b>
279                                             <a t-if="record.partner_address_email.raw_value" t-attf-href="mailto:#{record.partner_address_email.raw_value}">
280                                                 <field name="partner_address_name"/>
281                                             </a>
282                                             <field t-if="!record.partner_address_email.raw_value" name="partner_address_name"/>
283                                         </b>
284                                     </div>
285                                     <div>
286                                         <field name="name"/>
287                                     </div>
288                                     <div style="padding-left: 0.5em">
289                                         <i><field name="date_action"/><t t-if="record.date_action.raw_value"> : </t><field name="title_action"/></i>
290                                     </div>
291                                 </div>
292
293                                 <div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick">
294                                     <div class="oe_kanban_left">
295                                         <a string="Edit" icon="gtk-edit" type="edit"/>
296                                         <a string="Change Color" icon="color-picker" type="color" name="color"/>
297                                         <a string="Send New Email" name="%(mail.action_email_compose_message_wizard)d" icon="terp-mail-message-new" type="action"/>
298                                         <a string="Log Call" name="%(opportunity2phonecall_act)d" icon="terp-call-start" type="action"/>
299                                         <a string="Schedule Meeting" name="action_makeMeeting" type="object" icon="stock_calendar"/>
300                                         <a string="Add Internal Note" name="%(crm.action_crm_add_note)d" context="{'model': 'crm.lead' }" icon="terp-document-new" type="action"/>
301                                     </div>
302                                     <div class="oe_kanban_right">
303                                         <a name="case_mark_lost" string="Mark Lost" states="open,pending" type="object" icon="kanban-stop" groups="base.group_no_one"/>
304                                         <a name="case_pending" string="Pending" states="draft,open" type="object" icon="kanban-pause" groups="base.group_no_one"/>
305                                         <a name="case_open" string="Open" states="pending" type="object" icon="gtk-media-play" groups="base.group_no_one"/>
306                                         <a name="case_mark_won" string="Mark Won" states="open,pending" type="object" icon="kanban-apply" groups="base.group_no_one"/>
307                                     </div>
308                                     <br class="oe_kanban_clear"/>
309                                 </div>
310                             </div>
311                         </div>
312                     </t>
313                 </templates>
314             </kanban>
315         </field>
316     </record>
317
318     <!-- CRM Lead Search View -->
319
320     <record id="view_crm_case_leads_filter" model="ir.ui.view">
321         <field name="name">CRM - Leads Search</field>
322         <field name="model">crm.lead</field>
323         <field name="type">search</field>
324         <field name="arch" type="xml">
325             <search string="Search Leads">
326                 <filter icon="terp-check"
327                     string="New"
328                     name="new" help="New Leads"
329                     domain="[('state','=','draft')]"/>
330                 <filter icon="terp-camera_test"
331                     string="Open"
332                     name="open"
333                     domain="[('state','=','open')]"/>
334                 <filter icon="terp-gtk-media-pause"
335                     string="Pending"
336                     name="pending"
337                     domain="[('state','=','pending')]"/>
338
339                 <separator orientation="vertical"/>
340                 <filter icon="terp-go-today" string="Today"
341                     domain="[('create_date','&lt;', time.strftime('%%Y-%%m-%%d 23:59:59')), ('create_date','&gt;=', time.strftime('%%Y-%%m-%%d 00:00:00'))]"
342                     help="Todays' Leads" />
343                 <filter icon="terp-go-week" string="7 Days"
344                     help="Leads creating during last 7 days"
345                     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'))]"
346                 />
347                 <separator orientation="vertical"/>
348                 <field name="name" string="Lead / Customer"
349                     filter_domain="['|','|',('partner_name','ilike',self),('email_from','ilike',self),('name','ilike',self)]"/>
350                 <field name="user_id">
351                     <filter icon="terp-personal-"
352                         domain="[('user_id','=', False)]"
353                         help="Unassigned Leads" />
354                 </field>
355                 <field name="subjects" groups="base.group_extended"/>
356                 <field name="section_id" widget="selection"
357                     context="{'invisible_section': False}">
358                     <filter icon="terp-personal+" groups="base.group_extended"
359                         context="{'invisible_section': False}"
360                         domain="['|', ('section_id', '=', context.get('section_id')), '|', ('section_id.user_id','=',uid), ('section_id.member_ids', 'in', [uid])]"
361                         help="My Sales Team(s)"/>
362                     <filter icon="terp-personal+" groups="base.group_extended"
363                         context="{'invisible_section': False}"
364                         domain="[]"
365                         help="Show Sales Team"/>
366                 </field>
367                 <separator orientation="vertical"/>
368                 <field name="country_id" context="{'invisible_country': False}">
369                     <filter icon="terp-personal+" context="{'invisible_country': False}" help="Show countries"/>
370                 </field>
371                 <newline/>
372                 <group expand="0" string="Group By...">
373                     <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
374                     <filter string="Team" icon="terp-personal+" domain="[]" context="{'group_by':'section_id'}"/>
375                     <filter string="Referrer" icon="terp-personal" domain="[]" context="{'group_by':'referred'}"/>
376                     <separator orientation="vertical"/>
377                     <filter string="Category" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'categ_id'}"/>
378                     <filter string="Campaign" icon="terp-gtk-jump-to-rtl"
379                         domain="[]" context="{'group_by':'type_id'}" />
380                     <filter string="Channel" icon="terp-call-start"
381                         domain="[]" context="{'group_by':'channel_id'}" />
382                     <separator orientation="vertical"/>
383                     <filter string="Stage" icon="terp-stage" domain="[]" context="{'group_by':'stage_id'}"/>
384                     <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
385                     <separator orientation="vertical" groups="base.group_no_one"/>
386                     <filter string="Creation" help="Create date" icon="terp-go-month"
387                         domain="[]" context="{'group_by':'create_date'}" groups="base.group_no_one"/>
388                 </group>
389            </search>
390         </field>
391     </record>
392
393
394     <!-- Opportunities Form View -->
395     <record model="ir.ui.view" id="crm_case_form_view_oppor">
396         <field name="name">Opportunities</field>
397         <field name="model">crm.lead</field>
398         <field name="type">form</field>
399         <field name="priority">20</field>
400         <field name="arch" type="xml">
401             <form string="Opportunities" layout="manual">
402                 <div class="oe_form_topbar">
403                     <button name="case_cancel" string="Cancel" states="draft" type="object" icon="gtk-cancel" />
404                     <button name="case_mark_lost" string="Mark Lost" states="open,pending" type="object" icon="gtk-cancel" />
405                     <button name="case_reset" string="Reset to Draft" states="done,cancel" type="object" icon="gtk-convert" />
406                     <button name="case_open" string="Open" states="draft,pending" type="object" icon="gtk-go-forward" />
407                     <button name="case_pending" string="Pending" states="draft,open" type="object" icon="gtk-media-pause" />
408                     <button name="case_escalate" string="Escalate" states="open,pending" type="object" groups="base.group_extended" icon="gtk-go-up" />
409                     <button name="case_mark_won" string="Mark Won" states="open,pending" type="object" icon="gtk-apply" />
410                     <div class="oe_right">
411                         <field name="state" nolabel="1" widget="statusbar" statusbar_visible="draft,open,done" statusbar_colors='{"pending":"blue"}'/>
412                     </div>
413                 </div>
414                 <sheet layout="auto">
415                 <group colspan="4" col="7">
416                     <field name="name"  required="1" string="Opportunity"/>
417                     <label string="Stage:" align="1.0"/>
418                     <group colspan="1" col="4">
419                         <field name="stage_id" nolabel="1"
420                             on_change="onchange_stage_id(stage_id)"
421                             domain="section_id and [('section_ids', '=', section_id)] or []"/>
422                         <button name="stage_previous"
423                             states="draft,open,pending" type="object"
424                             icon="gtk-go-back" string="" context="{'stage_type': 'opportunity'}"/>
425                         <button name="stage_next" states="draft,open,pending"
426                             type="object" icon="gtk-go-forward" string="" context="{'stage_type': 'opportunity'}"/>
427                     </group>
428                     <field name="user_id"/>
429
430                     <button string="Schedule/Log Call"
431                         name="%(opportunity2phonecall_act)d" icon="terp-call-start"
432                         type="action"/>
433
434                     <field name="planned_revenue"/>
435                     <field name="probability"/>
436                     <field name="date_deadline"/>
437
438                     <button name="action_makeMeeting" type="object"
439                     string="Schedule Meeting" icon="gtk-redo" />
440                     <newline/>
441                     <field name="date_action"/>
442                     <field name="title_action"/>
443                     <field name="priority" string="Priority"/>
444                     <newline/>
445                     <field name="type" invisible="1"/>
446                 </group>
447                 <notebook colspan="4">
448                 <page string="Opportunity">
449                     <group col="4" colspan="2">
450                         <separator colspan="4" string="Contacts"/>
451                         <group colspan="2">
452                             <field name="partner_id" select="1"
453                                 on_change="onchange_partner_id(partner_id, email_from)" string="Customer"
454                                 colspan="2" />
455                             <button name="%(action_crm_lead2partner)d"
456                                 icon="terp-partner" type="action"
457                                 string="Create"
458                                 attrs="{'invisible':[('partner_id','!=',False)]}"/>
459                         </group>
460                         
461                         <group col="3" colspan="2">
462                             <field name="email_from" string="Email" />
463                             <button string="Mail"
464                             name="%(mail.action_email_compose_message_wizard)d"
465                             context="{'mail':'new', 'model': 'crm.lead'}"
466                             icon="terp-mail-message-new" type="action" />
467                         </group>
468                             <field name="phone"/>
469
470                     </group>
471                     <group col="2" colspan="2">
472                         <separator colspan="2" string="Categorization"/>
473                         <field name="section_id" colspan="1" widget="selection"/>
474                         <field name="categ_id" select="1"
475                         string="Category" widget="selection"
476                         domain="[('object_id.model', '=', 'crm.lead')]" />
477                     </group>
478
479                     <separator colspan="4" string="Details"/>
480                     <field name="description" nolabel="1" colspan="4"/>
481                     <separator colspan="4"/>
482                     <group col="10" colspan="4">
483                         <field name="state" widget="statusbar" statusbar_visible="draft,open,done" statusbar_colors='{"pending":"blue"}'/>
484                         <button name="case_cancel" string="Cancel" states="draft" type="object" icon="gtk-cancel" />
485                         <button name="case_mark_lost" string="Mark Lost" states="open,pending" type="object" icon="gtk-cancel" />
486                         <button name="case_reset" string="Reset to Draft" states="done,cancel" type="object" icon="gtk-convert" />
487                         <button name="case_open" string="Open" states="draft,pending" type="object" icon="gtk-go-forward" />
488                         <button name="case_pending" string="Pending" states="draft,open" type="object" icon="gtk-media-pause" />
489                         <button name="case_escalate" string="Escalate" states="open,pending" type="object" groups="base.group_extended" icon="gtk-go-up" />
490                         <button name="case_mark_won" string="Mark Won" states="open,pending" type="object" icon="gtk-apply" />
491                     </group>
492                 </page>
493                 <page string="Lead">
494                     <group colspan="2" col="4">
495                         <separator string="Contact" colspan="4" col="4"/>
496                         <field name="partner_name" string="Customer Name" colspan="4"/>
497                         <newline/>
498                         <field domain="[('domain', '=', 'contact')]" name="title" widget="selection"/>
499                         <field name="function" />
500                         <field name="street" colspan="4"/>
501                         <field name="street2" colspan="4"/>
502                         <field name="zip"/>
503                         <field name="city"/>
504                         <field name="country_id"/>
505                         <field name="state_id"/>
506                     </group>
507                     <group colspan="2" col="2">
508                         <separator string="Communication" colspan="2"/>
509                         <field name="fax"/>
510                         <field name="mobile"/>
511                     </group>
512                     <group colspan="2" col="2">
513                         <separator string="Categorization" colspan="2"/>
514                         <field name="type_id" widget="selection" groups="base.group_extended"/>
515                         <field name="channel_id" widget="selection"/>
516                     </group>
517                     <group colspan="2" col="2">
518                         <separator string="Mailings" colspan="2"/>
519                         <field name="optin" on_change="on_change_optin(optin)"/>
520                         <field name="optout" on_change="on_change_optout(optout)"/>
521                     </group>
522                 </page>
523                 <page string="Extra Info" groups="base.group_extended">
524                     <group col="2" colspan="2">
525                         <separator string="Misc" colspan="2"/>
526                         <field name="active"/>
527                         <field name="day_open" groups="base.group_no_one"/>
528                         <field name="day_close" groups="base.group_no_one"/>
529                         <field name="referred"/>
530                     </group>
531                     <separator colspan="4" string="References"/>
532                     <field name="ref"/>
533                     <field name="ref2"/>
534                 </page>
535                 </notebook>
536                 </sheet>
537                 <div class="oe_form_sheet_width">
538                     <field name="message_ids_social" colspan="4" widget="ThreadView" nolabel="1"/>
539                 </div>
540             </form>
541         </field>
542     </record>
543
544     <!-- Opportunities Tree View -->
545     <record model="ir.ui.view" id="crm_case_tree_view_oppor">
546         <field name="name">Opportunities Tree</field>
547         <field name="model">crm.lead</field>
548         <field name="type">tree</field>
549         <field name="arch" type="xml">
550             <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)">
551                 <field name="date_deadline" invisible="1"/>
552                 <field name="create_date" groups="base.group_no_one"/>
553                 <field name="name" string="Opportunity"/>
554                 <field name="partner_id" string="Customer"/>
555                 <field name="country_id" invisible="context.get('invisible_country', True)" />
556                 <field name="date_action"/>
557                 <field name="title_action" />
558                 <field name="channel_id" invisible="1"/>
559                 <field name="type_id" invisible="1"/>
560                 <field name="subjects" invisible="1"/>
561                 <field name="stage_id"/>
562                 <button name="stage_previous" string="Previous Stage" states="open,pending" type="object" icon="gtk-go-back" />
563                 <button name="stage_next" string="Next Stage" states="open,pending" type="object" icon="gtk-go-forward" />
564                 <field name="planned_revenue" sum="Expected Revenues"/>
565                 <field name="probability" widget="progressbar" avg="Avg. of Probability"/>
566                 <field name="section_id" invisible="context.get('invisible_section', True)" />
567                 <field name="user_id"/>
568                 <field name="priority" invisible="1"/>
569                 <field name="categ_id" invisible="1"/>
570                 <field name="state"/>
571                 <button name="case_open" string="Open" states="draft,pending" type="object" icon="gtk-go-forward" />
572                 <button name="case_pending" string="Pending" states="open,draft" type="object" icon="gtk-media-pause" />
573                 <button name="case_mark_lost" string="Lost" states="open,pending" type="object" icon="gtk-cancel" />
574                 <button name="case_mark_won" string="Won" states="open,pending" type="object" icon="gtk-apply" />
575             </tree>
576         </field>
577     </record>
578
579
580     <!-- Opportunities Search View -->
581     <record id="view_crm_case_opportunities_filter" model="ir.ui.view">
582         <field name="name">CRM - Opportunities Search</field>
583         <field name="model">crm.lead</field>
584         <field name="type">search</field>
585         <field name="arch" type="xml">
586             <search string="Search Opportunities">
587                 <filter icon="terp-check"
588                     string="New"  help="New Opportunities"
589                     name="new"
590                     domain="[('state','=','draft')]"/>
591                 <filter icon="terp-camera_test"
592                     string="Open"  help="Open Opportunities"
593                     name="open"
594                     domain="[('state','=','open')]"/>
595                 <filter icon="terp-gtk-media-pause"
596                     string="Pending"  help="Pending Opportunities"
597                     name="pending"
598                     domain="[('state','=','pending')]"/>
599                 <separator orientation="vertical"/>
600                 <field name="name" string="Opportunity / Customer"
601                     filter_domain="['|','|','|',('partner_id','ilike',self),('partner_name','ilike',self),('email_from','ilike',self),('name', 'ilike', self)]"/>
602                 <field name="user_id">
603                     <filter icon="terp-personal-"
604                         domain="[('user_id','=', False)]"
605                         help="Unassigned Opportunities" />
606                 </field>
607                 <field name="section_id"
608                     context="{'invisible_section': False}"
609                     widget="selection">
610                     <filter icon="terp-personal+" groups="base.group_extended"
611                         domain="['|', ('section_id', '=', context.get('section_id')), '|', ('section_id.user_id','=',uid), ('section_id.member_ids', 'in', [uid])]"
612                         context="{'invisible_section': False}"
613                         help="My Sales Team(s)" />
614                     <filter icon="terp-personal+" groups="base.group_extended"
615                         context="{'invisible_section': False}"
616                         domain="[]"
617                         help="Show Sales Team"/>
618                 </field>
619
620                 <newline/>
621                 <group expand="0" string="Group By..." colspan="16">
622                     <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}" />
623                     <filter string="Team" help="Sales Team" icon="terp-personal+" domain="[]" context="{'group_by':'section_id'}"/>
624                     <filter string="Customer" help="Partner" icon="terp-personal+" domain="[]" context="{'group_by':'partner_id'}"/>
625                     <separator orientation="vertical" />
626                     <filter string="Stage" icon="terp-stage" domain="[]" context="{'group_by':'stage_id'}" />
627                     <filter string="Priority" icon="terp-rating-rated" domain="[]" context="{'group_by':'priority'}" />
628                     <filter string="Category" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'categ_id'}" />
629                     <filter string="Campaign" icon="terp-gtk-jump-to-rtl" domain="[]" context="{'group_by':'type_id'}" groups="base.group_extended"/>
630                     <filter string="Channel" icon="terp-call-start" domain="[]" context="{'group_by':'channel_id'}" />
631                     <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
632                     <separator orientation="vertical" />
633                     <filter string="Creation" icon="terp-go-month" domain="[]" context="{'group_by':'create_date'}" groups="base.group_no_one"/>
634                     <filter string="Exp.Closing" icon="terp-go-month" help="Expected Closing" domain="[]" context="{'group_by':'date_deadline'}" />
635                 </group>
636             </search>
637         </field>
638     </record>
639
640     <!-- crm.lead Opportunities Graph View -->
641     <record model="ir.ui.view" id="crm_case_graph_view_opportunity">
642         <field name="name">CRM - Opportunity Graph</field>
643         <field name="model">crm.lead</field>
644         <field name="type">graph</field>
645         <field name="arch" type="xml">
646             <graph string="Opportunity by Categories" type="bar" orientation="horizontal">
647                 <field name="categ_id"/>
648                 <field name="planned_revenue" operator="+"/>
649                 <field name="state" group="True"/>
650             </graph>
651         </field>
652     </record>
653
654 </data>
655 </openerp>