[IMP] modify some filter buttons to include pending documents
[odoo/odoo.git] / addons / crm / crm_lead_view.xml
1 <?xml version="1.0"?>
2 <openerp>
3 <data>
4
5     <!-- Stage Search view -->
6
7      <record id="crm_lead_stage_search" model="ir.ui.view">
8         <field name="name">Stage - Search</field>
9         <field name="model">crm.case.stage</field>
10         <field name="type">search</field>
11         <field name="arch" type="xml">
12             <search string="Stage Search">
13                 <filter icon="terp-personal" name="lead"
14                     string="Lead" domain="[('type', '=', 'lead')]" context="{'type' : 'lead'}"/>
15                 <filter icon="terp-personal+" name="opportunity"
16                     string="Opportunity" domain="[('type', '=', 'opportunity')]" context="{'type' : 'opportunity'}"/>
17                 <field name="name"/>
18             </search>
19         </field>
20     </record>
21
22     <!--Lead Stage Form view -->
23
24     <record id="crm_lead_stage_act" model="ir.actions.act_window">
25         <field name="name">Stages</field>
26         <field name="res_model">crm.case.stage</field>
27         <field name="view_type">form</field>
28         <field name="view_id" ref="crm.crm_case_stage_tree"/>
29         <field name="context">{'search_default_opportunity':1}</field>
30         <field name="search_view_id" ref="crm_lead_stage_search"/>
31         <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>
32     </record>
33
34      <menuitem action="crm_lead_stage_act" id="menu_crm_lead_stage_act" name="Stages"
35         groups="base.group_extended" sequence="0"
36         parent="base.menu_crm_config_lead" />
37
38
39         <!-- Lead/Opportunity Categories Action -->
40
41         <record id="crm_lead_categ_action" model="ir.actions.act_window">
42             <field name="name">Categories</field>
43             <field name="res_model">crm.case.categ</field>
44             <field name="view_type">form</field>
45             <field name="view_id" ref="crm_case_categ_tree-view"/>
46             <field name="context">{'object_id': 'crm.lead'}</field>
47             <field name="domain">[('object_id.model', '=', 'crm.lead')]</field>
48             <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>
49         </record>
50
51         <menuitem action="crm_lead_categ_action"
52             id="menu_crm_lead_categ" name="Categories"
53             parent="base.menu_crm_config_lead" sequence="1"/>
54
55
56         <!-- CRM Lead Form View  -->
57         <record model="ir.ui.view" id="crm_case_form_view_leads">
58         <field name="name">CRM - Leads Form</field>
59         <field name="model">crm.lead</field>
60         <field name="type">form</field>
61         <field name="arch" type="xml">
62             <form string="Leads Form">
63                 <group colspan="4" col="7">
64                     <field name="name" required="1" string="Subject"/>
65                     <field name="priority"/>
66                     <field name="categ_id"
67                         widget="selection"
68                         domain="[('object_id.model','=','crm.lead')]"/>
69                     <button
70                          name="convert_opportunity"
71                          string="Convert to Opportunity"
72                          help="Convert to Opportunity" icon="gtk-go-forward"
73                          type="object"/>
74                     <newline />
75                     <field name="user_id" />
76                     <field name="section_id" widget="selection" />
77                     <field name="stage_id" domain="[('type','=','lead'),('section_ids', '=', section_id)]" />
78                     <group col="2" colspan="1">
79                         <button name="stage_previous" string=""
80                             states="open,pending,draft" type="object"
81                             icon="gtk-go-back" context="{'stage_type': 'lead'}" />
82                         <button name="stage_next" string=""
83                             states="open,pending,draft" type="object"
84                             icon="gtk-go-forward" context="{'stage_type': 'lead'}" />
85                     </group>
86                     <field name="type" invisible="1"/>
87                 </group>
88                 <notebook colspan="4">
89                 <page string="Lead">
90                     <group colspan="4" col="2">
91                         <field name="partner_name" string="Partner Name" />
92                     </group>
93                     <group colspan="2" col="4">
94                         <separator string="Contact" colspan="4" col="4"/>
95                         <field name="contact_name" colspan="4"/>
96                         <newline/>
97                         <field domain="[('domain', '=', 'contact')]" name="title" widget="selection"/>
98                         <field name="function" />
99                         <field name="street" colspan="4"/>
100                         <field name="street2" colspan="4"/>
101                         <field name="zip"/>
102                         <field name="city"/>
103                         <field name="country_id"/>
104                         <field name="state_id"/>
105                     </group>
106                     <group colspan="2" col="3">
107                         <separator string="Communication" colspan="4" col="3"/>
108                         <field name="email_from" widget="email"/><button string="Mail"
109                         name="%(crm.action_crm_send_mail)d"
110                         context="{'mail':'new', 'model': 'crm.lead'}"
111                         icon="terp-mail-message-new" type="action" colspan="1"/>
112                         <newline/>
113                         <field name="phone"/>
114                         <newline/>
115                         <field name="fax"/>
116                         <newline/>
117                         <field name="mobile"/>
118                         <newline/>
119                         <separator string="Links" colspan="4" col="3"/>
120                         <field name="partner_id" string="Customer"/>
121                         <button
122                             name="%(action_crm_lead2partner)d"
123                             icon="terp-partner" type="action"
124                             string="Create"
125                             attrs="{'invisible':[('partner_id','!=',False)]}"/>
126                     </group>
127                     <separator colspan="4" string="Notes"/>
128                     <field name="description" nolabel="1" colspan="4"/>
129                     <separator colspan="4"/>
130                     <group col="8" colspan="4">
131                         <field name="state"/>
132                         <button name="case_cancel" string="Cancel"
133                             states="draft,open,pending" type="object"
134                             icon="gtk-cancel" />
135                         <button name="case_open" string="Open"
136                             states="draft,pending" type="object"
137                             icon="gtk-go-forward" />
138                         <button name="case_mark_lost" string="Close"
139                             states="open,pending" type="object"
140                             icon="gtk-close" />
141                         <button name="case_pending" string="Pending"
142                             states="open" type="object"
143                             icon="gtk-media-pause" />
144                         <button name="case_escalate" string="Escalate"
145                             states="open,pending" type="object"
146                             groups="base.group_extended"
147                             icon="gtk-go-up" />
148                         <button name="case_reset"
149                             string="Reset to Draft" states="done,cancel"
150                             type="object" icon="gtk-convert" />
151                     </group>
152                  </page>
153                  <page string="Extra Info" groups="base.group_extended">
154                     <group colspan="2" col="2">
155                         <separator string="Categorization" colspan="2" col="2"/>
156                         <field name="company_id"
157                             groups="base.group_multi_company"
158                             widget="selection" colspan="2" />
159                         <field name="type_id" select="1" widget="selection"/>
160                         <field name="channel_id" select="1" widget="selection"/>
161                         <field name="referred"/>
162                     </group>
163                     <group colspan="2" col="2">
164                         <separator string="Dates" colspan="2" col="2"/>
165                         <field name="create_date"/>
166                         <field name="write_date"/>
167                         <field name="date_open"/>
168                         <field name="date_closed"/>
169                     </group>
170                     <group colspan="2" col="2">
171                         <separator string="Mailings" colspan="2" col="2"/>
172                         <field name="optin" on_change="on_change_optin(optin)"/>
173                         <field name="optout" on_change="on_change_optout(optout)"/>
174                     </group>
175                     <group colspan="2" col="2">
176                         <separator string="Statistics" colspan="2" col="2"/>
177                         <field name="day_open"/>
178                         <field name="day_close"/>
179                     </group>
180                  </page>
181                  <page string="Communication &amp; History" groups="base.group_extended">
182                    <group colspan="4">
183                        <field colspan="4" name="email_cc" widget="char" size="512"/>
184                    </group>
185                     <field name="message_ids" colspan="4" nolabel="1" mode="tree,form">
186                         <tree string="History">
187                             <field name="display_text" string="History Information"/>
188                             <field name="history" invisible="1"/>
189                             <button
190                                 string="Reply" attrs="{'invisible': [('history', '!=', True)]}"
191                                 name="%(crm.action_crm_send_mail)d"
192                                 context="{'mail':'reply', 'model': 'crm.lead', 'include_original' : True}"
193                                 icon="terp-mail-replied" type="action" />
194                         </tree>
195                             <form string="History">
196                                 <group col="4" colspan="4">
197                                     <field name="email_from"/>
198                                     <field name="date"/>
199                                     <field name="email_to" size="512"/>
200                                     <field name="email_cc" size="512"/>
201                                     <field name="name" colspan="4" widget="char" attrs="{'invisible': [('history', '=', False)]}" size="512"/>
202                                     <field name="display_text" colspan="4"   attrs="{'invisible': [('history', '=', True)]}"/>
203                                     <field name="history" invisible="1"/>
204                                 </group>
205                                 <notebook colspan="4">
206                                     <page string="Details">
207                                         <field name="description" colspan="4" nolabel="1"/>
208                                         <group attrs="{'invisible': [('history', '!=', True)]}">
209                                             <button colspan="4"
210                                                     string="Reply"
211                                                     name="%(crm.action_crm_send_mail)d"
212                                                     context="{'mail':'reply', 'model': 'crm.lead', 'include_original' : True}"
213                                                     icon="terp-mail-replied" type="action" />
214                                             </group>
215
216                                     </page>
217                                     <page string="Attachments">
218                                         <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
219                                     </page>
220                                     </notebook>
221                                 </form>
222                     </field>
223                     <button string="Add Internal Note"
224                         name="%(crm.action_crm_add_note)d"
225                         context="{'model': 'crm.lead' }"
226                         icon="terp-document-new" type="action" />
227                     <button string="Send New Email"
228                         name="%(crm.action_crm_send_mail)d"
229                         context="{'mail':'new', 'model': 'crm.lead'}"
230                         icon="terp-mail-message-new" type="action" />
231                  </page>
232                 </notebook>
233             </form>
234         </field>
235     </record>
236
237     <!-- CRM Lead Tree View -->
238
239     <record model="ir.ui.view" id="crm_case_tree_view_leads">
240         <field name="name">Leads</field>
241         <field name="model">crm.lead</field>
242         <field name="type">tree</field>
243         <field name="arch" type="xml">
244             <tree string="Leads"  colors="blue:state=='pending';grey:state in ('cancel', 'done')">
245                 <field name="date_deadline" invisible="1"/>
246                 <field name="create_date"/>
247                 <field name="name" string="Subject"/>
248                 <field name="contact_name"/>
249                 <field name="country_id" invisible="context.get('invisible_country', True)" />
250                 <field name="email_from"/>
251                 <field name="phone"/>
252
253                 <field name="categ_id" invisible="1"/>
254                 <field name="type_id" invisible="1"/>
255                 <field name="referred" invisible="1"/>
256                 <field name="channel_id" invisible="1"/>
257                 <field name="subjects" invisible="1"/>
258
259                 <field name="stage_id"/>
260                 <button name="stage_previous" string="Previous Stage"
261                     states="open,pending" type="object" icon="gtk-go-back" />
262                 <button name="stage_next" string="Next Stage"
263                     states="open,pending" type="object"
264                     icon="gtk-go-forward" />
265                 <field name="section_id" invisible="context.get('invisible_section', True)" />
266                 <field name="user_id" />
267                 <field name="state" />
268                 <button name="case_open" string="Open"
269                     states="draft,pending" type="object"
270                     icon="gtk-go-forward" />
271                 <button name="case_close" string="Close"
272                     states="open,draft,pending" type="object"
273                     icon="gtk-close" />
274                 <button string="Convert to Opportunity"
275                     name="convert_opportunity"
276                     states="draft,open,pending" icon="gtk-go-forward"
277                     type="object" />
278                 <button name="case_escalate" string="Escalate"
279                     states="open,draft,pending" type="object"
280                     icon="gtk-go-up" />
281             </tree>
282         </field>
283     </record>
284
285     <!-- CRM Lead Calendar View -->
286
287     <record model="ir.ui.view" id="crm_case_calendar_view_leads">
288         <field name="name">CRM - Leads Calendar</field>
289         <field name="model">crm.lead</field>
290         <field name="type">calendar</field>
291         <field name="priority" eval="2"/>
292         <field name="arch" type="xml">
293             <calendar string="Leads Generation"
294                 date_start="create_date" color="user_id">
295                 <field name="name" />
296                 <field name="partner_name" />
297                 <field name="partner_address_id" />
298             </calendar>
299         </field>
300     </record>
301
302     <!-- CRM Lead Search View -->
303
304     <record id="view_crm_case_leads_filter" model="ir.ui.view">
305         <field name="name">CRM - Leads Search</field>
306         <field name="model">crm.lead</field>
307         <field name="type">search</field>
308         <field name="arch" type="xml">
309             <search string="Search Leads">
310                 <filter icon="terp-check"
311                     string="Current"
312                     name="current" help="Draft, Open and Pending Leads"
313                     domain="[('state','in',('draft','open','pending'))]"/>
314                 <filter icon="terp-camera_test"
315                     string="Open"
316                     domain="[('state','=','open')]"/>
317                 <filter icon="terp-gtk-media-pause"
318                     string="Pending"
319                     domain="[('state','=','pending')]"/>
320
321                 <separator orientation="vertical"/>
322                 <filter icon="terp-go-today" string="Today"
323                     domain="[('create_date','&lt;', time.strftime('%%Y-%%m-%%d 23:59:59')), ('create_date','&gt;=', time.strftime('%%Y-%%m-%%d 00:00:00'))]"
324                     help="Todays' Leads" />
325                 <filter icon="terp-go-week" string="7 Days"
326                     help="Leads creating during last 7 days"
327                     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'))]"
328                 />
329                 <separator orientation="vertical"/>
330                 <field name="name" string="Lead / Customer"
331                     domain="['|','|',('partner_name','ilike',self),('email_from','ilike',self),('name','ilike',self)]"/>
332                 <field name="user_id">
333                     <filter icon="terp-personal-"
334                         domain="[('user_id','=', False)]"
335                         help="Unassigned Leads" />
336                 </field>
337                 <field name="subjects" groups="base.group_extended"/>
338                 <field name="section_id" widget="selection"
339                     context="{'invisible_section': False}">
340                     <filter icon="terp-personal+" groups="base.group_extended"
341                         context="{'invisible_section': False}"
342                         domain="['|', ('section_id', '=', context.get('section_id')), '|', ('section_id.user_id','=',uid), ('section_id.member_ids', 'in', [uid])]"
343                         help="My Sales Team(s)"/>
344                     <filter icon="terp-personal+" groups="base.group_extended"
345                         context="{'invisible_section': False}"
346                         domain="[]"
347                         help="Show Sales Team"/>
348                 </field>
349                 <newline/>
350
351                 <group expand="0" string="Extended Filters..." groups="base.group_extended">
352                       <field name="stage_id" widget="selection" domain="[('type', '=', 'lead')]"/>
353                       <field name="categ_id" widget="selection" domain="[('object_id.model', '=', 'crm.lead')]"/>
354                       <separator orientation="vertical"/>
355                       <field name="country_id" context="{'invisible_country': False}">
356                           <filter icon="terp-personal+" context="{'invisible_country': False}" help="Show countries"/>
357                       </field>
358                       <separator orientation="vertical"/>
359                       <field name="company_id" widget="selection" groups="base.group_multi_company"/>
360                       <newline/>
361                       <field name="create_date" string="Creation Date"/>
362                       <field name="date_closed"/>
363                 </group>
364                 <newline/>
365                 <group expand="0" string="Group By...">
366                     <filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
367                     <filter string="Team" icon="terp-personal+" domain="[]" context="{'group_by':'section_id'}"/>
368                     <filter string="Referrer" icon="terp-personal" domain="[]" context="{'group_by':'referred'}"/>
369                     <separator orientation="vertical"/>
370                     <filter string="Category" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'categ_id'}"/>
371                     <filter string="Campaign" icon="terp-gtk-jump-to-rtl"
372                         domain="[]" context="{'group_by':'type_id'}" />
373                     <filter string="Channel" icon="terp-call-start"
374                         domain="[]" context="{'group_by':'channel_id'}" />
375                     <separator orientation="vertical"/>
376                     <filter string="Stage" icon="terp-stage" domain="[]" context="{'group_by':'stage_id'}"/>
377                     <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
378                     <separator orientation="vertical"/>
379                     <filter string="Creation" help="Create date" icon="terp-go-month"
380                         domain="[]" context="{'group_by':'create_date'}" />
381                 </group>
382            </search>
383         </field>
384     </record>
385 </data>
386 </openerp>