[I18N] Update 8.0 translations with latest changes from Launchpad
[odoo/odoo.git] / addons / marketing_campaign / marketing_campaign_view.xml
1 <?xml version="1.0"?>
2 <openerp>
3     <data noupdate="1">
4
5         <record id="action_client_marketing_menu" model="ir.actions.client">
6             <field name="name">Open Marketing Menu</field>
7             <field name="tag">reload</field>
8             <field name="params" eval="{'menu_id': ref('base.marketing_menu')}"/>
9         </record>
10
11         <record id="base.open_menu" model="ir.actions.todo">
12             <field name="action_id" ref="action_client_marketing_menu"/>
13             <field name="state">open</field>
14         </record>
15
16     </data>
17     <data>
18
19     <!-- Marketing Campaign -->
20     
21     <record id="act_marketing_campaing_segment_opened" model="ir.actions.act_window">
22         <field name="res_model">marketing.campaign.segment</field>
23         <field name="view_type">form</field>
24         <field name="name">Segments</field>
25         <field name="view_mode">tree,form</field>
26         <field name="context">{'search_default_campaign_id': [active_id], 'default_campaign_id': active_id}</field>
27     </record>
28     
29     <!-- Campaign Follow-ups -->
30         
31     <record id="act_marketing_campaing_followup" model="ir.actions.act_window">
32         <field name="res_model">marketing.campaign.workitem</field>
33         <field name="view_type">form</field>
34         <field name="name">Workitems</field>
35         <field name="view_mode">tree,form</field>
36         <field name="context">{'search_default_campaign_id': [active_id], 'default_campaign_id': active_id}</field>
37     </record>
38     
39     <!-- Campaign Statistics -->
40     
41     <record id="act_marketing_campaing_stat" model="ir.actions.act_window" >
42         <field name="res_model">campaign.analysis</field>
43         <field name="view_type">form</field>
44         <field name="name">Campaign Follow-up</field>
45         <field name="view_mode">tree,form</field>
46         <field name="context">{'search_default_campaign_id': [active_id], 'default_campaign_id': active_id}</field>
47     </record>
48
49     <!-- Campaign Followups -->
50
51     <record model="ir.ui.view" id="view_marketing_campaign_form">
52         <field name="name">marketing.campaign.form</field>
53         <field name="model">marketing.campaign</field>
54         <field name="arch" type="xml">
55             <form string="Marketing Campaign">
56             <header>
57                 <button name="state_running_set" string="Run" states="draft" class="oe_highlight"/>
58                 <button name="state_done_set" string="Done" states="running" class="oe_highlight"/>
59                 <button name="state_draft_set" string="Set to Draft" states="done,cancelled"/>
60                 <button name="state_cancel_set" string="Cancel Campaign" states="running"/>
61                 <field name="state" readonly="1" widget="statusbar" statusbar_visible="draft,running,done"/>
62             </header>
63             <sheet string="Campaign">
64                 <div class="oe_right oe_button_box" name="button_box">
65                     <button type="action"
66                         name="%(act_marketing_campaing_stat)d"
67                         class="oe_stat_button"
68                         icon="fa-keyboard-o"
69                         help="Marketing Campaign Statistics">
70                         <div>Campaign<br/>Statistics</div>
71                     </button>
72                     <button type="action"
73                         name="%(act_marketing_campaing_segment_opened)d"
74                         class="oe_stat_button"
75                         icon="fa-table">
76                         <field name="segments_count" widget="statinfo" string="Segments"/>
77                     </button>  
78                     <button type="action"
79                         name="%(act_marketing_campaing_followup)d"
80                         class="oe_stat_button"
81                         icon="fa-thumbs-up"
82                         string="Follow-Up"/>
83                 </div>
84                 <div class="oe_title">
85                     <label for="name" class="oe_edit_only"/>
86                     <h1><field name="name" class="oe_inline"/></h1>
87                 </div>
88                 <group>
89                     <group>
90                         <field name="mode"/>
91                         <field name="fixed_cost"/>
92                     </group>
93                     <group>
94                         <field name="object_id"/>
95                         <field name="partner_field_id"/>
96                         <field name="unique_field_id"/>
97                     </group>
98                 </group>
99                 <separator string="Activities"/>
100                 <field name="activity_ids" context="{'default_object_id': object_id, 'default_campaign_id': active_id}"/>
101             </sheet>
102             </form>
103         </field>
104     </record>
105
106     <record model="ir.ui.view" id="view_marketing_campaign_tree">
107         <field name="name">marketing.campaign.tree</field>
108         <field name="model">marketing.campaign</field>
109         <field name="arch" type="xml">
110             <tree colors="blue:state == 'draft';black:state == 'running';gray:state in ('done','cancelled')" string="Campaigns">
111                 <field name="name"/>
112                 <field name="object_id"/>
113                 <field name="mode"/>
114                 <field name="fixed_cost"/>
115                 <field name="state"/>
116             </tree>
117         </field>
118     </record>
119
120     <record id="view_marketing_campaign_diagram" model="ir.ui.view">
121         <field name="name">marketing.campaign.diagram</field>
122         <field name="model">marketing.campaign</field>
123         <field name="arch" type="xml">
124             <diagram string="Campaign Editor">
125                 <node object="marketing.campaign.activity" shape="rectangle:type=='subcampaign'" bgcolor="gray:start==True">
126                     <field name="name"/>
127                     <field name="type"/>
128                     <field name="start" invisible="1"/>
129                     <field name="condition" widget="char"/>
130                 </node>
131                 <arrow object="marketing.campaign.transition" source="activity_from_id" destination="activity_to_id" label="['name']">
132                     <field name="activity_from_id"/>
133                     <field name="activity_to_id"/>
134                     <field name="interval_nbr"/>
135                     <field name="interval_type"/>
136                 </arrow>
137             </diagram>
138         </field>
139     </record>
140
141     <record id="view_marketing_campaign_search" model="ir.ui.view">
142         <field name="name">marketing.campaign.search</field>
143         <field name="model">marketing.campaign</field>
144         <field name="arch" type="xml">
145             <search string="Campaigns">
146                 <field name="name" string="Campaign"/>
147                 <filter icon="terp-document-new" string="Draft" name="draft" domain="[('state','=','draft')]"/>
148                 <filter icon="terp-check" string="Running" domain="[('state','=','running')]"/>
149                 <separator/>
150                 <filter icon="terp-gtk-jump-to-rtl" string="Test Mode" name="test" domain="[('mode','=','test')]"/>
151                 <filter icon="terp-gtk-jump-to-rtl" string="Manual Mode" domain="[('mode','=','manual')]"/>
152                 <field name="object_id" string="Resource"/>
153                 <group expand="0" string="Group By">
154                     <filter string="Resource" name="Object" icon="terp-accessories-archiver" context="{'group_by':'object_id'}"/>
155                     <filter string="Mode" name="Mode" icon="terp-gtk-jump-to-rtl" context="{'group_by':'mode'}"/>
156                     <filter string="Status" name="Status" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
157                 </group>
158             </search>
159         </field>
160     </record>
161
162     <record model="ir.actions.act_window" id="action_marketing_campaign_form">
163         <field name="name">Campaigns</field>
164         <field name="type">ir.actions.act_window</field>
165         <field name="res_model">marketing.campaign</field>
166         <field name="view_type">form</field>
167         <field name="view_mode">tree,form,diagram</field>
168         <field name="view_id" ref="view_marketing_campaign_tree"/>
169         <field name="context">{'group_by': []}</field>
170         <field name="search_view_id" ref="view_marketing_campaign_search"/>
171         <field name="help" type="html">
172           <p class="oe_view_nocontent_create">
173             Click to create a marketing campaign.
174           </p><p>
175             Odoo's marketing campaign allows you to automate communication
176             to your prospects. You can define a segment (set of conditions) on
177             your leads and partners to fullfil the campaign.
178           </p><p>
179             A campaign can have many activities like sending an email, printing
180             a letter, assigning to a team, etc. These activities are triggered
181             from specific situations; contact form, 10 days after first
182             contact, if a lead is not closed yet, etc.
183           </p>
184         </field>
185     </record>
186
187     <menuitem name="Campaigns" id="menu_marketing_campaign" parent="base.marketing_menu" groups="marketing.group_marketing_user,marketing.group_marketing_manager"/>
188     <menuitem id="menu_marketing_campaign_form" parent="menu_marketing_campaign" action="action_marketing_campaign_form" sequence="30"/>
189
190     <!-- Marketing Segments -->
191     <record model="ir.ui.view" id="view_marketing_campaign_segment_form">
192         <field name="name">marketing.campaign.segment.form</field>
193         <field name="model">marketing.campaign.segment</field>
194         <field name="arch" type="xml">
195             <form string="Marketing Campaign Segment">
196             <header>
197                 <button name="state_running_set" string="Run" states="draft" class="oe_highlight"/>
198                 <button name="state_done_set" string="Close" states="running" class="oe_highlight"/>
199                 <button name="state_draft_set" string="Set to Draft" states="done,cancelled"/>
200                 <button name="state_cancel_set" string="Cancel Segment" states="running"/>
201                 <field name="state" readonly="1" widget="statusbar" statusbar_visible="draft,running,done"/>
202             </header>
203             <sheet string="Segments" >
204                 <group>
205                     <group>
206                         <field name="name"/>
207                         <field name="campaign_id" on_change="onchange_campaign_id(campaign_id)"/>
208                         <field name="object_id" invisible="1"/>
209                         <field name="sync_mode" required="True"/>
210                        <label for="sync_last_date"/>
211                        <div>
212                            <field name="sync_last_date" class="oe_inline"/>
213                            <button string="Synchronize Manually" states="running" name="synchroniz" type="object"/>
214                        </div>
215                        <field name="date_next_sync"/>
216                     </group>
217                     <group>
218                         <field name="ir_filter_id"/>
219                         <field name="date_run" readonly="1"/>
220                         <field name="date_done" readonly="1"/>
221                     </group>
222                 </group>
223             </sheet>
224             </form>
225         </field>
226     </record>
227
228     <record model="ir.ui.view" id="view_marketing_campaign_segment_tree">
229         <field name="name">marketing.campaign.segment.tree</field>
230         <field name="model">marketing.campaign.segment</field>
231         <field name="arch" type="xml">
232             <tree colors="blue:state == 'draft';black:state == 'running';gray:state in ('done','cancelled')" string="Segments">
233                 <field name="name"/>
234                 <field name="campaign_id"/>
235                 <field name="date_run"/>
236                 <field name="sync_last_date"/>
237                 <field name="state"/>
238             </tree>
239         </field>
240     </record>
241
242     <record id="view_marketing_campaign_segment_search" model="ir.ui.view">
243         <field name="name">marketing.campaign.segment.search</field>
244         <field name="model">marketing.campaign.segment</field>
245         <field name="arch" type="xml">
246             <search string="Segments">
247                 <field name="name" string="Segment"/>
248                 <field name="date_run"/>
249                 <filter icon="terp-check" string="Running" name="running" domain="[('state','=','running')]"/>
250                 <filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]"/>
251                 <separator/>
252                 <filter icon="terp-gtk-jump-to-ltr" string="Newly Created" help="Sync mode: only records created after last sync" domain="[('sync_mode','=','create_date')]"/>
253                 <filter icon="terp-stock_effects-object-colorize" string="Newly Modified" help="Sync mode: only records updated after last sync" domain="[('sync_mode','=','write_date')]"/>
254                 <filter icon="terp-emblem-documents" string="All" help="Sync mode: all records" domain="[('sync_mode','=','all')]"/>
255                 <field name="campaign_id"/>
256                 <field name="object_id"/>
257                 <group expand="0" string="Group By">
258                     <filter string="Campaign" name="Campaign" icon="terp-gtk-jump-to-rtl" context="{'group_by':'campaign_id'}"/>
259                     <filter string="Status" name="Status" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
260                     <filter string="Launch Month" name="Launch Date" icon="terp-go-month" context="{'group_by':'date_run'}"/>
261                 </group>
262             </search>
263         </field>
264     </record>
265
266     <record model="ir.actions.act_window" id="action_marketing_campaign_segment_form">
267         <field name="name">Segments</field>
268         <field name="type">ir.actions.act_window</field>
269         <field name="res_model">marketing.campaign.segment</field>
270         <field name="view_type">form</field>
271         <field name="view_mode">tree,form</field>
272         <field name="view_id" ref="view_marketing_campaign_segment_tree"/>
273         <field name="search_view_id" ref="view_marketing_campaign_segment_search"/>
274         <field name="context">{'group_by': []}</field>
275     </record>
276
277     <menuitem id="menu_marketing_campaign_segment_form" parent="menu_marketing_campaign" action="action_marketing_campaign_segment_form" sequence="20"/>
278
279     <!--
280         Marketing Activities
281         These views are not intended to be used outside the campaign context.
282     -->
283     <record model="ir.ui.view" id="view_marketing_campaign_activity_form">
284         <field name="name">marketing.campaign.activity.form</field>
285         <field name="model">marketing.campaign.activity</field>
286         <field name="arch" type="xml">
287             <form string="Activities">
288                 <group>
289                     <group>
290                         <field name="name"/>
291                         <field name="signal" groups="base.group_no_one"/>
292                         <field name="start"/>
293                         <field name="object_id" invisible="1"/>
294                         <field name="campaign_id" invisible="1" required="0"/>
295                     </group>
296                     <group>
297                         <field name="variable_cost"/>
298                         <field name="revenue"/>
299                     </group>
300                 </group>
301                 <group >
302                     <group>
303                         <field name="condition" widget="char"/>
304                         <field name="keep_if_condition_not_met"/>
305                     </group>
306                     <group>
307                         <field name="type"/>
308                         <field name="email_template_id" attrs="{'required':[('type','=','email')], 'invisible':[('type','!=','email')]}"
309                            context="{'default_model_id':object_id}"/>
310                         <field name="server_action_id" attrs="{'required':[('type','=','action')],'invisible':[('type','!=','action')]}" domain="[('model_id','=',object_id)]"/>
311                         <field name="report_id" attrs="{'required':[('type','=','report')],'invisible':[('type','!=','report')]}" context="{'object_id':object_id}"/>
312                         <field name="report_directory_id" attrs="{'required':[('type','=','report')],'invisible':[('type','!=','report')]}"/>
313                     </group>
314                 </group>
315                 <separator string="Previous Activities"/>
316                 <field name="from_ids" mode="tree" context="{'default_activity_to_id': active_id}">
317                     <tree string="Incoming Transitions" editable="bottom">
318                         <field name="activity_from_id" domain="[('campaign_id', '=', parent.campaign_id)]"/>
319                         <field name='trigger'/>
320                         <field name="interval_nbr"/>
321                         <field name="interval_type"/>
322                     </tree>
323                     <form string="Incoming Transitions">
324                         <group col="4">
325                             <field name="activity_from_id" domain="[('campaign_id', '=', parent.campaign_id)]"/>
326                             <field name='trigger'/>
327                             <field name="interval_nbr"/>
328                             <field name="interval_type"/>
329                         </group>
330                     </form>
331                 </field>
332                 <separator string="Next Activities"/>
333                 <field name="to_ids" mode="tree" context="{'default_activity_from_id': active_id}">
334                     <tree string="Outgoing Transitions" editable="bottom">
335                         <field name="activity_to_id" domain="[('campaign_id', '=', parent.campaign_id)]"/>
336                         <field name='trigger'/>
337                         <field name="interval_nbr"/>
338                         <field name="interval_type"/>
339                     </tree>
340                     <form string="Outgoing Transitions">
341                         <group col="4">
342                             <field name="activity_to_id" domain="[('campaign_id', '=', parent.campaign_id)]"/>
343                             <field name='trigger'/>
344                             <field name="interval_nbr"/>
345                             <field name="interval_type"/>
346                         </group>
347                     </form>
348                 </field>
349             </form>
350         </field>
351     </record>
352
353     <record model="ir.ui.view" id="view_marketing_campaign_activity_tree">
354         <field name="name">marketing.campaign.activity.tree</field>
355         <field name="model">marketing.campaign.activity</field>
356         <field name="arch" type="xml">
357             <tree string="Activities">
358                 <field name="name"/>
359                 <field name="condition"/>
360                 <field name="type"/>
361                 <field name="start"/>
362             </tree>
363         </field>
364     </record>
365
366
367     <!-- Marketing Workitems -->
368     <record model="ir.ui.view" id="view_marketing_campaign_workitem_tree">
369         <field name="name">marketing.campaign.workitem.tree</field>
370         <field name="model">marketing.campaign.workitem</field>
371         <field name="arch" type="xml">
372             <tree colors="red:state == 'exception';black:state == 'todo';gray:state == 'cancelled'" string="Marketing Campaign Activities">
373                 <field name="campaign_id"/>
374                 <field name="segment_id"/>
375                 <field name="activity_id"/>
376                 <field name="object_id" invisible="1"/>
377                 <field name="res_id" invisible="1"/>
378                 <field name="res_name"/>
379                 <field name="partner_id"/>
380                 <field name="date"/>
381                 <field name="state"/>
382                 <button string="Cancel" states="todo" name="button_cancel" type="object" icon="terp-gtk-stop"/>
383                 <button string="Preview" states="todo" name="preview" icon="gtk-zoom-fit" type="object"/>
384                 <button string="Process" states="todo" name="process" type="object" icon="terp-gtk-go-back-rtl"/>
385             </tree>
386         </field>
387     </record>
388
389     <record model="ir.ui.view" id="view_marketing_campaign_workitem_form">
390         <field name="name">marketing.campaign.workitem.form</field>
391         <field name="model">marketing.campaign.workitem</field>
392         <field name="arch" type="xml">
393             <form string="Marketing Campaign Activities">
394             <header>
395                 <button string="Process" states="todo" name="process" type="object"/>
396                 <button string="Reset" states="exception,cancelled" name="button_draft" type="object"/>
397                 <button string="Cancel Workitem" states="todo,exception" name="button_cancel" type="object"/>
398                 <field name="state" readonly="True" widget="statusbar" statusbar_visible="todo,done" statusbar_colors='{"exception":"red"}'/>
399                 <button string="Preview" states="todo" name="preview" icon="gtk-zoom-fit" type="object"/>
400             </header>
401             <sheet>
402                 <group>
403                     <group>
404                         <field name="campaign_id"/>
405                         <field name="segment_id"/>
406                         <field name="activity_id" context="{'segment_id':segment_id}"/>
407                         <field name="date"/>
408                     </group>
409                     <group>
410                         <field name="object_id" readonly="True"/>
411                         <field name="res_name"/>
412                         <field name="res_id"/>
413                         <field name="partner_id"/>
414                     </group>
415                 </group>
416                 <group attrs="{'invisible':[('state','!=','exception')]}" string="Error Message">
417                     <field name="error_msg" nolabel="1" colspan="2"/>
418                 </group>
419             </sheet>
420             </form>
421         </field>
422     </record>
423
424     <record id="view_marketing_campaign_workitem_search" model="ir.ui.view">
425         <field name="name">marketing.campaign.workitem.search</field>
426         <field name="model">marketing.campaign.workitem</field>
427         <field name="arch" type="xml">
428             <search string="Marketing Campaign Activities">
429                 <field name="res_name" string="Marketing Campaign Activity"/>
430                 <field name="date"/>
431                 <filter icon="terp-gtk-go-back-rtl" string="To Do" name="todo" domain="[('state','=','todo')]"/>
432                 <filter icon="terp-emblem-important" string="Exception" domain="[('state','=','exception')]"/>
433                 <field name="campaign_id"/>
434                 <field name="segment_id"/>
435                 <field name="object_id"/>
436                 <field name="partner_id"/>
437                 <field name="res_id"/>
438                 <group expand="0" string="Group By">
439                     <filter string="Campaign" name="campaign" icon="terp-gtk-jump-to-rtl" context="{'group_by':'campaign_id'}"/>
440                     <filter string="Segment" name="segment" icon="terp-stock_symbol-selection" context="{'group_by':'segment_id'}"/>
441                     <filter string="Activity" name="activity" icon="terp-stock_align_left_24" context="{'group_by':'activity_id'}"/>
442                     <filter string="Resource" name="resource" icon="terp-accessories-archiver" context="{'group_by':'object_id'}"/>
443                     <filter string="Resource ID" name="res_id" icon="terp-accessories-archiver" context="{'group_by':'res_id'}"/>
444                     <filter string="Status" name="Status" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
445                     <filter string="Execution Month" name="Date" icon="terp-go-month" context="{'group_by':'date'}"/>
446                 </group>
447             </search>
448         </field>
449     </record>
450
451     <record model="ir.actions.act_window" id="action_marketing_campaign_workitem">
452         <field name="name">Campaign Follow-up</field>
453         <field name="type">ir.actions.act_window</field>
454         <field name="res_model">marketing.campaign.workitem</field>
455         <field name="view_type">form</field>
456         <field name="view_mode">tree,form</field>
457         <field name="view_id" ref="view_marketing_campaign_workitem_tree"/>
458         <field name="search_view_id" ref="view_marketing_campaign_workitem_search"/>
459         <field name="context">{'group_by': []}</field>
460     </record>
461
462     <menuitem id="menu_action_marketing_campaign_workitem" parent="menu_marketing_campaign" action="action_marketing_campaign_workitem" sequence="10"/>
463
464     </data>
465 </openerp>