0d711f44b67a3200bf0e820ead529797e5326155
[odoo/odoo.git] / doc / howtos / backend / exercise-state-workflow-actions
1 # HG changeset patch
2 # Parent 0764cf061d021a0a5b2811f5ec5d835f799630fc
3
4 Index: doc-backend/openacademy/course.py
5 ===================================================================
6 --- doc-backend.orig/openacademy/course.py      2014-08-21 15:04:39.972573032 +0200
7 +++ doc-backend/openacademy/course.py   2014-08-21 15:04:39.968573032 +0200
8 @@ -74,18 +74,6 @@
9      ])
10  
11      @api.one
12 -    def action_draft(self):
13 -        self.state = 'draft'
14 -
15 -    @api.one
16 -    def action_confirm(self):
17 -        self.state = 'confirmed'
18 -
19 -    @api.one
20 -    def action_done(self):
21 -        self.state = 'done'
22 -
23 -    @api.one
24      @api.depends('seats', 'attendee_ids')
25      def _taken_seats(self):
26          if not self.seats:
27 Index: doc-backend/openacademy/views/session_workflow.xml
28 ===================================================================
29 --- doc-backend.orig/openacademy/views/session_workflow.xml     2014-08-21 15:04:39.972573032 +0200
30 +++ doc-backend/openacademy/views/session_workflow.xml  2014-08-21 15:04:39.968573032 +0200
31 @@ -6,25 +6,57 @@
32        <field name="on_create">True</field>
33      </record>
34  
35 +    <record model="ir.actions.server" id="set_session_to_draft">
36 +        <field name="name">Set session to Draft</field>
37 +        <field name="model_id" ref="model_openacademy_session"/>
38 +        <field name="code">
39 +            self.write(cr, uid, context['active_ids'], {
40 +                'state': 'draft'
41 +            }, context=context)
42 +        </field>
43 +    </record>
44      <record model="workflow.activity" id="draft">
45        <field name="name">Draft</field>
46        <field name="wkf_id" ref="wkf_session"/>
47        <field name="flow_start" eval="True"/>
48 -      <field name="kind">function</field>
49 -      <field name="action">action_draft()</field>
50 +      <field name="kind">dummy</field>
51 +      <field name="action"></field>
52 +      <field name="action_id" ref="set_session_to_draft"/>
53 +    </record>
54 +
55 +    <record model="ir.actions.server" id="set_session_to_confirmed">
56 +        <field name="name">Set session to Confirmed</field>
57 +        <field name="model_id" ref="model_openacademy_session"/>
58 +        <field name="code">
59 +            self.write(cr, uid, context['active_ids'], {
60 +                'state': 'confirmed'
61 +            }, context=context)
62 +        </field>
63      </record>
64      <record model="workflow.activity" id="confirmed">
65        <field name="name">Confirmed</field>
66        <field name="wkf_id" ref="wkf_session"/>
67 -      <field name="kind">function</field>
68 -      <field name="action">action_confirm()</field>
69 +      <field name="kind">dummy</field>
70 +      <field name="action"></field>
71 +      <field name="action_id" ref="set_session_to_confirmed"/>
72 +    </record>
73 +
74 +    <record model="ir.actions.server" id="set_session_to_done">
75 +        <field name="name">Set session to Done</field>
76 +        <field name="model_id" ref="model_openacademy_session"/>
77 +        <field name="code">
78 +            self.write(cr, uid, context['active_ids'], {
79 +                'state': 'done'
80 +            }, context=context)
81 +        </field>
82      </record>
83      <record model="workflow.activity" id="done">
84        <field name="name">Done</field>
85        <field name="wkf_id" ref="wkf_session"/>
86        <field name="flow_stop" eval="True"/>
87 -      <field name="kind">function</field>
88 -      <field name="action">action_done()</field>
89 +      <field name="kind">dummy</field>
90 +      <field name="action"></field>
91 +      <field name="action_id" ref="set_session_to_done"/>
92      </record>
93  
94      <record model="workflow.transition" id="session_draft_to_confirmed">